Method for identifying critical error of worm gear machine and method for iteratively compensating critical error of worm gear machine
12066809 ยท 2024-08-20
Assignee
Inventors
- Shilong WANG (Chongqing, CN)
- Chi MA (Chongqing, CN)
- Sibao WANG (Chongqing, CN)
- Dechao HENG (Chongqing, CN)
- Lingwan ZENG (Chongqing, CN)
- Yong YANG (Chongqing, CN)
- Canhui YANG (Chongqing, CN)
Cpc classification
G06F2119/02
PHYSICS
G05B19/404
PHYSICS
B23F13/00
PERFORMING OPERATIONS; TRANSPORTING
G06N5/01
PHYSICS
F16H57/01
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F16H2057/012
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
B23F23/10
PERFORMING OPERATIONS; TRANSPORTING
G06F30/27
PHYSICS
International classification
F16H57/01
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
G05B19/404
PHYSICS
G06F30/27
PHYSICS
Abstract
A method for identifying a critical error of a worm gear machine, step 1: obtaining an actual forward kinematic model T.sub.27.sup.a and an ideal forward kinematic model T.sub.27.sup.i from a coordinate system of a worm gear hob to a coordinate system of a worm gear, thereby establishing a geometric error-pose error model of the worm gear machine; step 2: regarding the geometric error-pose error model of the worm gear machine as a multi-input multi-output (MIMO) nonlinear system, and solving, by taking the geometric error of each motion axis of the worm gear machine as an input feature X, and a pose error between the worm gear hob and the worm gear as an output variable Y, an importance coefficient of each input feature with a random forest algorithm; and step 3: determining a critical error affecting a machining accuracy of the worm gear machine.
Claims
1. A method for identifying a critical error of a worm gear machine, comprising the following steps: step a): analyzing a geometric error of each motion axis of the worm gear machine, and obtaining an actual forward kinematic model T.sub.27.sup.a and an ideal forward kinematic model T.sub.27.sup.i from a coordinate system of a worm gear hob to a coordinate system of a worm gear based on a motion chain of the worm gear machine, thereby establishing a geometric error-pose error model of the worm gear machine which contains final geometric errors after comparing between the actual forward kinematic model T.sub.27.sup.a and the ideal forward kinematic model T.sub.27.sup.i; step b): having the geometric error-pose error model of the worm gear machine as a multi-input multi-output (MIMO) nonlinear system, and solving, by taking the geometric error of each motion axis of the worm gear machine as an input feature X, and a pose error between the worm gear hob and the worm gear as an output variable Y, a coefficient of each input feature with a random forest algorithm; step c): determining, according to the solved coefficient of each input feature, the critical error affecting a machining accuracy of the worm gear machine; and step d): outputting numerical control instruction to the worm gear machine to adjust positions of the worm gear hob to correct the critical error affecting the machining accuracy of the worm gear machine; wherein in the step a), a method for establishing the geometric error-pose error model of the worm gear machine is as follows: step a1) analyzing the geometric error of the worm gear machine; step a2) obtaining the actual forward kinematic model T.sub.27.sup.a and the ideal forward kinematic model T.sub.27.sup.i from the coordinate system of the worm gear hob to the coordinate system of the worm gear according to the motion chain of the worm gear machine; and step a3) establishing the geometric error-pose error model of the worm gear machine from the actual forward kinematic model T.sub.27.sup.a and the ideal forward kinematic model T.sub.27.sup.i; wherein in the step a1), geometric errors of X-, Y-, Z- and C-motion axes of the worm gear machine are considered, wherein each motion axis comprises 6 items of position-dependent geometric errors (PDGEs), respectively comprising: an x-direction linear error ?.sub.x(s) of an S-axis in motion, a y-direction linear error ?.sub.y(s) of the S-axis in motion, a z-direction linear error ?.sub.z(s) of the S axis in motion, an x-direction angular error ?.sub.x(s) of the S-axis in motion, a y-direction angular error ?.sub.y(s) of the S-axis in motion, and a z-direction angular error ?.sub.z(s) of the S-axis in motion, wherein s represents a motion instruction of the motion axis S, and s=x, y, z, c; position-independent geometric errors (PIGEs) are present between the motion axes, respectively comprising: a perpendicularity error ?.sub.yz between the X axis and the Z axis, a perpendicularity error ?.sub.zy between the Y axis and the Z axis, and a perpendicularity error ?.sub.xy between the Y axis and the X axis; and the C axis has four items of placement errors, respectively comprising: an x-direction linear error ?.sub.xc of the C axis in placement, a y-direction linear error ?.sub.yc of the C axis in placement, an x-direction angular error ?.sub.xc of the C axis in placement, and a y-direction angular error ?.sub.yc of the C axis in placement.
2. The method for identifying the critical error of the worm gear machine according to claim 1, wherein in the step a2), with the worm gear hob as a transfer end point, the worm gear machine has a following motion chain: worm gear.fwdarw.C-axis.fwdarw.bed.fwdarw.X-axis.fwdarw.Z-axis.fwdarw.Y-axis.fwdarw.B-axis.fwdarw.worm gear hob, wherein the worm gear-C axis-bed serves as a workpiece chain, and the bed.fwdarw.X-axis.fwdarw.Z-axis.fwdarw.Y-axis.fwdarw.B-axis.fwdarw.worm gear hob serves as a cutter chain; during consideration of the geometric errors, an actual kinematic model of the tool chain is:
T.sub.02.sup.a=T.sub.01T.sub.12=T.sub.p01T.sub.pe01T.sub.m01T.sub.me01?T.sub.p12T.sub.pe12T.sub.m12T.sub.me12; and an ideal kinematic model of the tool chain is:
T.sub.02.sup.i=T.sub.01.sup.iT.sub.12.sup.i=T.sub.p01T.sub.m01?T.sub.p12T.sub.m12 wherein, T.sub.02.sup.a and T.sub.02.sup.i respectively represent an actual transformation matrix and an ideal transformation matrix from the worm gear to the bed; T.sub.01 and T.sub.01.sup.i respectively represent an actual transformation matrix and an ideal transformation matrix from the C axis to the bed; T.sub.12 and T.sub.12.sup.i respectively represent an actual transformation matrix and an ideal transformation matrix from the worm gear to the C axis; T.sub.p01 represents a placement matrix from the C axis to the bed; T.sub.pe01 represents a placement error matrix from the C axis to the bed; T.sub.m01 represents a motion matrix from the C axis to the bed; T.sub.me01 represents a motion error matrix from the C axis to the bed; T.sub.p12 represents a placement matrix from the worm gear to the C axis; T.sub.pe12 represents a placement error matrix from the worm gear to the C axis; T.sub.m12 represents a motion matrix from the worm gear to the C axis; and T.sub.me12 represents a motion error matrix from the worm gear to the C axis; and during consideration of the geometric errors, an actual kinematic model of the cutter chain is:
T.sub.07.sup.a=T.sub.03T.sub.34T.sub.45T.sub.56T.sub.67=T.sub.p03T.sub.pe03T.sub.m03T.sub.me03?T.sub.p34T.sub.pe34T.sub.m34T.sub.me34?T.sub.p45T.sub.pe45T.sub.m45T.sub.me45?T.sub.p56T.sub.pe56T.sub.m56T.sub.me56?T.sub.p67T.sub.pe67T.sub.m67T.sub.me67; and an ideal kinematic model of the cutter chain is:
T.sub.07.sup.i=T.sub.p03T.sub.m03T.sub.p34T.sub.m34T.sub.p45T.sub.m45T.sub.p56T.sub.m56T.sub.p67T.sub.m67 wherein, T.sub.07.sup.a and T.sub.07.sup.i respectively represent an actual transformation matrix and an ideal transformation matrix from the worm gear hob to the bed; T.sub.03 represents an actual transformation matrix from the X axis to the bed; T.sub.34 represents an actual transformation matrix from the Z axis to the X axis; T.sub.45 represents an actual transformation matrix from the Y axis to the Z axis; T.sub.56 represents an actual transformation matrix from the B axis to the Y axis; represents an actual transformation matrix from the worm gear hob to the B axis; T.sub.p03 represents a placement matrix from the X axis to the bed; T.sub.pe03 represents a placement error matrix from the X axis to the bed; T.sub.m03 represents a motion matrix from the X axis to the bed; T.sub.me03 represents a motion error matrix from the X axis to the bed; T.sub.p34 represents a placement matrix from the Z axis to the X axis; T.sub.pe34 represents a placement error matrix from the Z axis to the X axis; T.sub.m34 represents a motion matrix from the Z axis to the X axis; T.sub.me34 represents a motion error matrix from the Z axis to the X axis; T.sub.p45 represents a placement matrix from the Y axis to the Z axis; T.sub.pe45 represents a placement error matrix from the Y axis to the Z axis; T.sub.m45 represents a motion matrix from the Y axis to the Z axis; T.sub.me45 represents a motion error matrix from the Y axis to the Z axis; T.sub.p56 represents a placement matrix from the B axis to the Y axis; T.sub.pe56 represents a placement error matrix from the B axis to the Y axis; T.sub.m56 represents a motion matrix from the B axis to the Y axis; T.sub.me56 represents a motion error matrix from the B axis to the Y axis; T.sub.p67 represents a placement matrix from the worm gear hob to the B axis; T.sub.pe67 represents a placement error matrix from the worm gear hob to the B axis; T.sub.m67 represents a motion matrix from the worm gear hob to the B axis; and T.sub.me67 represents a motion error matrix from the worm gear hob to the B axis, thereby obtaining the actual forward kinematic model of the worm gear machine from the coordinate system of the worm gear hob to the coordinate system of the worm gear:
T.sub.27.sup.a=(T.sub.02.sup.a).sup.?1T.sub.07.sup.a; and obtaining the ideal forward kinematic model of the worm gear machine from the coordinate system of the worm gear hob to the coordinate system of the worm gear:
T.sub.27.sup.i=(T.sub.02.sup.i).sup.?1T.sub.07.sup.i.
3. The method for identifying the critical error of the worm gear machine according to claim 2, wherein in the step a3), assuming that a cutter tip position vector and a cutter axis vector in the coordinate system of the worm gear hob are respectively P.sub.t and Q.sub.t, actual cutter position data under the influence of the geometric errors is:
4. The method for identifying the critical error of the worm gear machine according to claim 3, wherein in the step b), a method for solving the coefficient of each input feature with the random forest algorithm is as follows: step b1) establishing a decision tree T.sub.b with a bootstrap sampling set, and taking a sample not participating in establishment of the decision tree as an out-of-bag (OBB) sample x.sub.b.sup.obb; step b2) predicting the x.sub.b.sup.obb with the established decision tree T.sub.b, and computing a correctly classified resolution R.sub.b.sup.obb; step b3) changing, for a geometric error element x.sub.j (j=1, . . . , 31), a value of the x.sub.j in the x.sub.b.sup.obb during initialization, and recording the value as x.sub.bj.sup.obb; and then, predicting the x.sub.bj.sup.obb with the decision tree T.sub.b, and recording a correctly classified resolution as R.sub.bj.sup.obb; and step b4) repeating the step b1) to the step b3), such that a coefficient D.sub.j of the geometric error element xj is:
5. A method for iteratively compensating a critical error of a worm gear machine, comprising the following steps: step e): determining, by using the method for identifying the critical error of the worm gear machine according to claim 1, the critical error affecting the machining accuracy of the worm gear machine, retaining the identified critical error item, and simplifying the geometric error-pose error model of the worm gear machine; step f): assuming that an actual x-direction position of the worm gear hob is x+?x(x,y,z,c), obtaining a following iteration form of x:
x.sub.i+1=x.sup.i?f.sub.?x(x.sub.i, y.sub.i, z.sub.i, c.sub.i) wherein, x.sub.1+1 represents an iterative value of a numerical control instruction x; x.sup.i represents an instruction when an X axis reaches a predetermined position; f.sub.?x(?) represents a mapping function between the critical error item and an x-direction pose error; and a subscript i represents the number of iterative times; assuming that an actual x-direction position of the worm gear hob is z+?z(x,y,z,c), obtaining a following iteration form of z:
z.sub.i+1=z.sup.i?f.sub.?z(x.sub.i+1, y.sub.i, z.sub.i, c.sub.i) wherein, z.sub.i+1 represents an iterative value of a numerical control instruction z; z.sup.i represents an instruction when a Z axis reaches a predetermined position; and f.sub.?z(?) represents a mapping function between the critical error item and a z-direction pose error; assuming that an actual y-direction position of the worm gear hob is y+?y(x,y,z,c), obtaining a following iteration form of y:
y.sub.i+1=y.sup.i?f.sub.?y(x.sub.i+1, y.sub.i, z.sub.i+1, c.sub.i) wherein, y.sub.i+1 represents an iterative value of a numerical control instruction y; y.sup.i represents an instruction when a Y axis reaches a predetermined position; and f.sub.?y(?) represents a mapping function between the critical error item and a y-direction pose error; and assuming that an actual c-direction position of the worm gear hob is c+?c(x,y,z,c), obtaining a following iteration form of c:
c.sub.i+1=c.sup.i?f.sub.?c(x.sub.i, y.sub.i, z.sub.i, c.sub.i) wherein, c.sub.i+1 represents an iterative value of a numerical control instruction c; c.sup.i represents an instruction when a C axis reaches a predetermined position; and f.sub.?(?) represents a mapping function between the critical error item and a c-direction pose error; step g): iteratively compensating the critical error, and determining whether a motion accuracy of each of the X, Z, Y and C axes meets a preset threshold requirement; if yes, executing the step d); and if no, letting x.sub.i=x.sub.i+1, z.sub.i=z.sub.i+1, y.sub.i=y.sub.i+1, c.sub.i=c.sub.i+1 and i=i+1 and executing the step f); and wherein the step of outputting the numerical control instruction comprises outputting the numerical control instruction (x.sub.i, y.sub.i, z.sub.i, c.sub.i) to the worm gear machine to adjust the x-direction, y-direction, z-direction and c-direction positions of the worm gear hob to x.sub.i, y.sub.i, z.sub.i, and c.sub.i, respectively.
6. The method for identifying the critical error of the worm gear machine according to claim 5, wherein in the step a2), with the worm gear hob as a transfer end point, the worm gear machine has a following motion chain: worm gear.fwdarw.C-axis.fwdarw.bed.fwdarw.X-axis.fwdarw.Z-axis.fwdarw.Y-axis.fwdarw.B-axis.fwdarw.worm gear hob, wherein the worm gear-C axis-bed serves as a workpiece chain, and the bed.fwdarw.X-axis.fwdarw.Z-axis.fwdarw.Y-axis.fwdarw.B-axis.fwdarw.worm gear hob serves as a cutter chain; during consideration of the geometric errors, an actual kinematic model of the tool chain is:
T.sub.02.sup.a=T.sub.01T.sub.12=T.sub.p01T.sub.pe01T.sub.m01T.sub.me01?T.sub.p12T.sub.pe12T.sub.m12T.sub.me12; and an ideal kinematic model of the tool chain is:
T.sub.02.sup.i=T.sub.01.sup.iT.sub.12.sup.i=T.sub.p01T.sub.m01?T.sub.p12T.sub.m12 wherein, T.sub.02.sup.a and T.sub.02.sup.i respectively represent an actual transformation matrix and an ideal transformation matrix from the worm gear to the bed; T.sub.01 and T.sub.01.sup.i respectively represent an actual transformation matrix and an ideal transformation matrix from the C axis to the bed; T.sub.12 and T.sub.12.sup.i respectively represent an actual transformation matrix and an ideal transformation matrix from the worm gear to the C axis; T.sub.p01 represents a placement matrix from the C axis to the bed; T.sub.pe01 represents a placement error matrix from the C axis to the bed; T.sub.m01 represents a motion matrix from the C axis to the bed; T.sub.me01 represents a motion error matrix from the C axis to the bed; T.sub.p12 represents a placement matrix from the worm gear to the C axis; T.sub.pe12 represents a placement error matrix from the worm gear to the C axis; T.sub.m12 represents a motion matrix from the worm gear to the C axis; and T.sub.me12 represents a motion error matrix from the worm gear to the C axis; and during consideration of the geometric errors, an actual kinematic model of the cutter chain is:
T.sub.07.sup.a=T.sub.03T.sub.34T.sub.45T.sub.56T.sub.67=T.sub.p03T.sub.pe03T.sub.m03T.sub.me03?T.sub.p34T.sub.pe34T.sub.m34T.sub.me34?T.sub.p45T.sub.pe45T.sub.m45T.sub.me45?T.sub.p56T.sub.pe56T.sub.m56T.sub.me56?T.sub.p67T.sub.pe67T.sub.m67T.sub.me67; and an ideal kinematic model of the cutter chain is:
T.sub.07.sup.i=T.sub.p03T.sub.m03T.sub.p34T.sub.m34T.sub.p45T.sub.m45T.sub.p56T.sub.m56T.sub.p67T.sub.m67 wherein, T.sub.07.sup.a and T.sub.07.sup.i respectively represent an actual transformation matrix and an ideal transformation matrix from the worm gear hob to the bed; T.sub.03 represents an actual transformation matrix from the X axis to the bed; T.sub.34 represents an actual transformation matrix from the Z axis to the X axis; T.sub.45 represents an actual transformation matrix from the Y axis to the Z axis; T.sub.56 represents an actual transformation matrix from the B axis to the Y axis; T.sub.67 represents an actual transformation matrix from the worm gear hob to the B axis; T.sub.p03 represents a placement matrix from the X axis to the bed; T.sub.pe03 represents a placement error matrix from the X axis to the bed; T.sub.m03 represents a motion matrix from the X axis to the bed; T.sub.me03 represents a motion error matrix from the X axis to the bed; T.sub.p34 represents a placement matrix from the Z axis to the X axis; T.sub.pe34 represents a placement error matrix from the Z axis to the X axis; T.sub.m34 represents a motion matrix from the Z axis to the X axis; T.sub.me34 represents a motion error matrix from the Z axis to the X axis; T.sub.p45 represents a placement matrix from the Y axis to the Z axis; T.sub.pe45 represents a placement error matrix from the Y axis to the Z axis; T.sub.m45 represents a motion matrix from the Y axis to the Z axis; T.sub.me45 represents a motion error matrix from the Y axis to placement error matrix from the B axis to the Y axis; T.sub.m56 represents a motion matrix from the B axis to the Y axis; T.sub.me56 represents a motion error matrix from the B axis to the Y axis; T.sub.p67 represents a placement matrix from the worm gear hob to the B axis; T.sub.pe67 represents a placement error matrix from the worm gear hob to the B axis; T.sub.m67 represents a motion matrix from the worm gear hob to the B axis; and T.sub.me67 represents a motion error matrix from the worm gear hob to the B axis, thereby obtaining the actual forward kinematic model of the worm gear machine from the coordinate system of the worm gear hob to the coordinate system of the worm gear:
T.sub.27.sup.a=(T.sub.02.sup.a).sup.?1T.sub.07.sup.a; and obtaining the ideal forward kinematic model of the worm gear machine from the coordinate system of the worm gear hob to the coordinate system of the worm gear:
T.sub.27.sup.a=(T.sub.02.sup.a).sup.?1T.sub.07.sup.a.
7. The method for identifying the critical error of the worm gear machine according to claim 6, wherein in the step a3), assuming that a cutter tip position vector and a cutter axis vector in the coordinate system of the worm gear hob are respectively P.sub.t and Q.sub.t, actual cutter position data under the influence of the geometric errors is:
8. The method for iteratively compensating the critical error of the worm gear machine according to claim 6, wherein in the step g), the motion accuracies of each of the X, Z, Y and C axes meets:
9. The method for identifying the critical error of the worm gear machine according to claim 7, wherein in the step b), a method for solving the coefficient of each input feature with the random forest algorithm is as follows: step b1) establishing a decision tree T.sub.b with a bootstrap sampling set, and taking a sample not participating in establishment of the decision tree as an out-of-bag (OBB) sample x.sub.b.sup.obb; step b2) predicting the x.sub.b.sup.obb with the established decision tree T.sub.b, and computing a correctly classified resolution R.sub.b.sup.obb; step b3) changing, for a geometric error element x.sub.j (j=1, . . . , 31), a value of the x.sub.j in the x.sub.b.sup.obb during initialization, and recording the value as x.sub.bj.sup.obb; and then, predicting the x.sub.bj.sup.obb with the decision tree T.sub.b, and recording a correctly classified resolution as R.sub.bj.sup.obb; and step b4) repeating the step b1) to the step b3), such that a coefficient D.sub.j of the geometric error element xj is:
10. The method for iteratively compensating the critical error of the worm gear machine according to claim 7, wherein in the step g), the motion accuracies of each of the X, Z, Y and C axes meets:
11. The method for iteratively compensating the critical error of the worm gear machine according to claim 9, wherein in the step g), the motion accuracies of each of the X, Z, Y and C axes meets:
12. The method for iteratively compensating the critical error of the worm gear machine according to claim 5, wherein in the step g), the motion accuracy of each of the X, Z, Y and C axes meets:
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) In order to make the objectives, technical solutions and beneficial effects of the present disclosure clearer, the present disclosure provides the following descriptions on the accompanying drawings:
(2)
(3)
(4)
DETAILED DESCRIPTION OF THE EMBODIMENTS
(5) The present disclosure will be further described in combination with accompanying drawings and specific examples so as to enable those skilled in the art to better understand and practice the disclosure, but the illustrated examples do not constitute any limitation to the present disclosure.
(6) A method for identifying a critical error of a worm gear machine in the embodiment includes the following steps: Step a): Analyze a geometric error of each motion axis of a worm gear machine, and obtain an actual forward kinematic model T.sub.27.sup.a and an ideal forward kinematic model T.sub.27.sup.i from a coordinate system of a worm gear hob to a coordinate system of a worm gear based on a motion chain of the worm gear machine, thereby establishing a geometric error-pose error model of the worm gear machine.
(7) Specifically, a method for establishing the geometric error-pose error model of the worm gear machine is as follows: 11) Analyze a geometric error of the worm gear machine.
(8) As shown in
(9) The workpiece chain and the cutter chain form a full motion chain of the worm gear machine. On the two motion sub-chains, geometric errors of each component include PIGEs and PDGEs. As the B-axis is a hob axis with a higher level of manufacturing accuracy, its errors are ignored temporarily herein during modeling, and considerations are given to geometric errors of X-, Y-, Z-, and C-motion axes of the worm gear machine.
(10) Each motion axis includes 6 items of PDGEs, respectively including: an x-direction linear error ?.sub.x(s) of an S-axis in motion, a y-direction linear error ?.sub.y(s) ) of the S-axis in motion, a z-direction linear error ?.sub.z(s) of the S-axis in motion, an x-direction angular error ?.sub.x(s) of the S-axis in motion, a y-direction angular error ?.sub.y(s) of the S-axis in motion, and a z-direction angular error ?.sub.z(s) of the S-axis in motion, where s represents a motion instruction of the motion S-axis, and s=x, y, z, c.
(11) PIGEs are present between the motion axes, respectively including: a perpendicularity error ?.sub.yz between the X axis and the Z-axis, a perpendicularity error ?.sub.zy between the Y-axis and the Z-axis, and a perpendicularity error ?.sub.xy between the Y-axis and the X-axis.
(12) The C-axis has four items of placement errors, respectively including: an x-direction linear error ?.sub.xc of the C-axis in placement, a y-direction linear error ?.sub.yc of the C-axis in placement, an x-direction angular error ?.sub.xc of the C-axis in placement, and a y-direction angular error ?.sub.yc of the C-axis in placement.
(13) Specifically, each motion axis of the worm gear machine includes the following geometric error elements:
(14) I. The X-axis has six items of PDGEs, respectively including: an x-direction linear error ?.sub.x(x) of the X-axis in motion; a y-direction linear error ?.sub.y(x) of the X-axis in motion; a z-direction linear error ?.sub.z(x) of the X-axis in motion; an x-direction angular error ?.sub.x(x) of the X-axis in motion; a y-direction angular error ?.sub.y(x) of the X-axis in motion; and a z-direction angular error ?.sub.z(x) of the X-axis in motion.
(15) II. The Z-axis has six items of PDGEs and one item of PIGE:
(16) The six items of PDGEs are an x-direction linear error ?.sub.x(z) of the Z-axis in motion; a y-direction linear error ?.sub.y(z) of the Z-axis in motion; a z-direction linear error ?.sub.z(z) of the Z-axis in motion; an x-direction angular error ?.sub.x(z) of the Z-axis in motion; a y-direction angular error ?.sub.y(z) of the Z-axis in motion; and a z-direction angular error ?.sub.z(z) of the Z-axis in motion.
(17) One item of PIGE is the perpendicularity error between the Y-axis and the Z-axis.
(18) III. The Y-axis has six items of PDGEs and two items of PIGEs:
(19) The six items of PDGEs are an x-direction linear error ?.sub.x(y) of the Y-axis in motion; a y-direction linear error ?.sub.y(y) of the Y-axis in motion; a z-direction linear error ?.sub.z(y) of the Y-axis in motion; an x-direction angular error ?.sub.x(y) of the Y-axis in motion; a y-direction angular error ?.sub.y(y) of the Y-axis in motion; and a z-direction angular error ?.sub.z(y) of the Y-axis in motion.
(20) The two items of PIGEs are the perpendicularity error ?.sub.zy between the Y-axis and the X-axis; and the perpendicularity error ?.sub.xy between the Y-axis and the X-axis.
(21) IV. The C-axis has six items of PDGEs and four items of PIGEs:
(22) The six items of PDGEs are an x-direction linear error ?.sub.x(c) of the C-axis in motion; a y-direction linear error ?.sub.y(c) of the C-axis in motion; a z-direction linear error ?.sub.z(c) of the C-axis in motion; an x-direction angular error ?.sub.x(c) of the C-axis in motion; a y-direction angular error ?.sub.y(c) of the C-axis in motion; and a z-direction angular error ?.sub.z(c) of the C-axis in motion.
(23) The four items of PIGEs are the x-direction linear error ?.sub.xc of the C-axis in placement, the y-direction linear error ?.sub.yc of the C-axis in placement, the x-direction angular error ?.sub.xc of the C-axis in placement, and the y-direction angular error ?.sub.yc of the C-axis in placement.
(24) 12) Obtain the actual forward kinematic model T.sub.27.sup.a and the ideal forward kinematic model T.sub.27.sup.i from the coordinate system of the worm gear hob to the coordinate system of the worm gear according to the motion chain of the worm gear machine.
(25) With the worm gear hob as a transfer end point, the worm gear machine has the following motion chain: worm gear.fwdarw.C-axis.fwdarw.bed.fwdarw.X-axis.fwdarw.Z-axis.fwdarw.Y-axis.fwdarw.B-axis-worm gear hob, where the worm gear-C-axis-bed serves as the workpiece chain, and the bed.fwdarw.X-axis.fwdarw.Z-axis.fwdarw.Y-axis.fwdarw.B-axis.fwdarw.worm gear hob serves as the cutter chain.
(26) During consideration of the geometric errors, an actual kinematic model of the tool chain is:
T.sub.02.sup.a=T.sub.01T.sub.12=T.sub.p01T.sub.pe01T.sub.m01T.sub.me01?T.sub.p12T.sub.pe12T.sub.m12T.sub.me12
and an ideal kinematic model of the tool chain is:
T.sub.02.sup.i=T.sub.01.sup.iT.sub.12.sup.i=T.sub.p01T.sub.m01?T.sub.p12T.sub.m12 where, T.sub.02.sup.a and T.sub.02.sup.i and represent an actual transformation matrix and an ideal transformation matrix from the worm gear to the bed, respectively; T.sub.01 and T.sub.01.sup.i respectively represent an actual transformation matrix and an ideal transformation matrix from the C-axis to the bed; and T.sub.12 and T.sub.12.sup.i represent an actual transformation matrix and an ideal transformation matrix from the worm gear to the C-axis, respectively; T.sub.p01 represents a placement matrix from the C-axis to the bed, and T.sub.p01=I.sub.4?4; T.sub.pe01 represents a placement error matrix from the C-axis to the bed, and
(27)
(28)
(29)
T.sub.p12=T.sub.pe12=T.sub.m12=T.sub.me12=I.sub.4?4
(30) During consideration of the geometric errors, an actual kinematic model of the cutter chain is:
T.sub.07.sup.a=T.sub.03T.sub.34T.sub.45T.sub.56T.sub.67=T.sub.p03T.sub.pe03T.sub.m03T.sub.me03?T.sub.p34T.sub.pe34T.sub.m34T.sub.me34?T.sub.p45T.sub.pe45T.sub.m45T.sub.me45?T.sub.p56T.sub.pe56T.sub.m56T.sub.me56?T.sub.p67T.sub.pe67T.sub.m67T.sub.me67
and an ideal kinematic model of the cutter chain is:
T.sub.07.sup.i=T.sub.p03T.sub.m03T.sub.p34T.sub.m34T.sub.p45T.sub.m45T.sub.p56T.sub.m56T.sub.p67T.sub.m67 where, T.sub.07.sup.a and T.sub.07.sup.i represent an actual transformation matrix and an ideal transformation matrix from the worm gear hob to the bed, respectively; T.sub.03 represents an actual transformation matrix from the X-axis to the bed; T.sub.34 represents an actual transformation matrix from the Z-axis to the X-axis; T.sub.45 represents an actual transformation matrix from the Y-axis to the Z-axis; T.sub.56 represents an actual transformation matrix from the B-axis to the Y-axis; and T.sub.67 represents an actual transformation matrix from the worm gear hob to the B-axis; T.sub.p03 represents a placement matrix from the X-axis to the bed; T.sub.pe03 represents a placement error matrix from the X-axis to the bed; and T.sub.p03=T.sub.pe03=I.sub.4?4; T.sub.m03 represents a motion matrix from the X-axis to the bed,
(31)
(32)
(33)
(34)
(35)
(36)
(37)
(38)
and T.sub.p56 represents a placement matrix from the B-axis to the Y-axis; T.sub.pe56 represents a placement error matrix from the B-axis to the Y-axis; T.sub.m56 represents a motion matrix from the B axis to the Y-axis; T.sub.me56 represents a motion error matrix from the B-axis to the Y-axis; T.sub.p67 represents a placement matrix from the worm gear hob to the B-axis; T.sub.pe67 represents a placement error matrix from the worm gear hob to the B-axis; T.sub.m67 represents a motion matrix from the worm gear hob to the B-axis; T.sub.me67 represents a motion error matrix from the worm gear hob to the B-axis, and the T.sub.p56, T.sub.pe56, T.sub.m56, T.sub.me56, T.sub.p67, T.sub.pe67, T.sub.m67 and T.sub.me67 are all unit matrixes.
(39) Therefore, the actual forward kinematic model of the worm gear machine from the coordinate system of the worm gear hob to the coordinate system of the worm gear is obtained:
T.sub.27.sup.a=(T.sub.02.sup.a).sup.?1T.sub.07.sup.a
(40) The ideal forward kinematic model of the worm gear machine from the coordinate system of the worm gear hob to the coordinate system of the worm gear is obtained:
T.sub.27.sup.i=(T.sub.02.sup.i).sup.?1T.sub.07.sup.i
(41) 13) Establish the geometric error-pose error model of the worm gear mother from the actual forward kinematic model T.sub.27.sup.a and the ideal forward kinematic model T.sub.27.sup.i.
(42) Assuming that a cutter tip position vector and a cutter axis vector in the coordinate system of the worm gear hob are P.sub.t and Q.sub.t, respectively, the actual cutter position data under the influence of the geometric errors is:
(43)
(44) The forward kinematic model of the worm gear machine describes a pose transformation relation between the worm gear hob and the worm gear, and the geometric error-pose error model of the worm gear machine is obtained by performing subtraction on the actual cutter position data and ideal states of the worm gear hob and the worm gear:
(45)
(46) There are a number of geometric error elements of the worm gear machine. If a critical error item affecting the machining accuracy of the worm gear most can be identified and specific compensation can be performed, both the compensation effect and the compensation efficiency will be greatly improved. The random forest is a machine learning algorithm with a decision tree as a basic learner. All decision trees are established by bootstrap sampling from a total error data set where 75% of data serves as a training set, and 25% of data serves as a validation set. The random forest algorithm not only samples the training sample, but also samples features. With this characteristic, the importance of a feature in a complex nonlinear system may be evaluated with the random forest algorithm. Specifically during critical item identification of the worm gear machine, the core theory is to convert the critical error identification problem into a feature selection problem based on the random forest. During establishment of the random forest, 31 items of geometric errors are used as an input feature X, and 6 items of pose errors between the worm gear hob and the worm gear are used as an output variable Y. The importance coefficient of each input feature (i.e., the geometric error) may be computed according to the following procedures:
(47) Specifically, as shown in
(48) Step b4) Repeat Step b1) to Step b3), such that an importance coefficient D.sub.j of the geometric error element x.sub.j is:
(49)
(50) Ideal cutter path for worm gear machining and path discretization are provided in block 101 in
(51) Specific implementation of a method for iteratively compensating a critical error of a worm gear machine provided by the embodiment is as follows:
(52) The importance coefficient of the geometric error element that is solved with the random forest is within 0-1, and is an indication of a contribution ratio of the input geometric error element to the output pose error. If comparing the importance coefficient may determine the critical error item affecting each pose error in direction, specific error iterative compensation may be performed.
(53) As shown in
x.sub.i+1=x.sup.i?f.sub.?x(x.sub.i, y.sub.i, z.sub.i, c.sub.i) where, x.sub.i+1 represents an iterative value of an NC instruction x; x.sup.i represents an instruction when an X-axis reaches a predetermined position; f.sub.?x(?) represents a mapping function between the critical error item and an x-direction pose error; and i has an initial value of 0, which can be seen in block 203 in
(54) Similarly, for a z-direction pose error, a mapping relation between the critical error item and the z-direction pose error may be obtained. The error compensation is intended to drive the Z axis through an NC code z to move to a predetermined position z.sup.i. Accordingly, a relation between the ideal cutter position and the NC instruction during compensation may be expressed as z+?z(x,y,z,c)=z.sup.i. Meanwhile, as a new iterative value of x also has an impact on ?z, the iteration form of z is as follows:
z.sub.i+1=z.sup.i?f.sub.?z(x.sub.i+1, y.sub.i, z.sub.i, c.sub.i) where, z.sub.i+1 represents an iterative value of an NC instruction z; z.sup.i represents an instruction when a Z-axis reaches a predetermined position; and f.sub.?z(?) represents a mapping function between the critical error item and a z-direction pose error;
(55) By the same seasoning, assuming that an actual y-direction position of the worm gear hob is y+?y(x,y,z,c), the following iteration form of y is obtained:
y.sub.i+1=y.sup.i?f.sub.?y(x.sub.i+1, y.sub.i, z.sub.i+1, c.sub.i) where, y.sub.i+1 represents an iterative value of an NC instruction y; y.sup.i represents an instruction when a Y-axis reaches a predetermined position; and f.sub.?y(?) represents a mapping function between the critical error item and a y-direction pose error.
(56) In addition, as the C-axis is not located on the same motion sub-chain with three straight axes, it is considered that the axis is not affected by iterative values of the three straight axes. Assuming that an actual c-direction position of the worm gear hob is c+?c(x,y,z,c), the iteration form of the motion instruction c is deduced:
c.sub.i+1=c.sup.i?f.sub.?c(x.sub.i, y.sub.i, z.sub.i, c.sub.i) where, c.sub.i+1 represents an iterative value of an NC instruction c; c.sup.i represents an instruction when a C-axis reaches a predetermined position; and f.sub.?c(?) represents a mapping function between the critical error item and a c-direction pose error; Step g): Iteratively compensate the critical error, and determine whether a motion accuracy of each of the X-, Z-, Y-, and C-, axes meets a preset threshold requirement; if yes, execute Step d); and if no, let x.sub.i=x.sub.i+1, z.sub.i=z.sub.i+1, y.sub.i=y.sub.i+1, c.sub.i=c.sub.i+1 and i=i+1 and execute Step f), which can be seen in block 207 in
(57)
(58) The method for iteratively compensating the critical error of the worm gear machine provided by the embodiment simplifies the geometric error-pose error model of the worm gear machine by using the identified critical errors affecting the machining accuracy of the worm gear machine, and then performs error iterative compensation on NC codes x, z, y and c till a motion accuracy of each of X-, Z-, Y-, and C-axes meets a set threshold requirement, thereby improving the machining accuracy of the worm gear machine.
(59) The above examples are merely preferred embodiments provided to more fully illustrate the present disclosure, and the scope of the present disclosure is not limited thereto. Equivalent substitutions or alternations made by those skilled in the art on the basis of the present disclosure are all within the protection scope of the present disclosure. The protection scope of the present disclosure is subject to the claims.