METHOD FOR IDENTIFYING CRITICAL ERROR OF WORM GEAR MACHINE AND METHOD FOR ITERATIVELY COMPENSATING CRITICAL ERROR OF WORM GEAR MACHINE
20220334550 · 2022-10-20
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
International classification
G05B19/404
PHYSICS
F16H57/01
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
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 1: analyzing a geometric error of each motion axis of a 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; 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; step 3: determining, according to the solved importance coefficient of each input feature, a critical error affecting a machining accuracy of the worm gear machine; and step 4: outputting an actual NC 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.
2. The method for identifying a critical error of a worm gear machine according to claim 1, wherein in step 1, a method for establishing the geometric error-pose error model of the worm gear machine is as follows: 11) analyzing a geometric error of the worm gear machine; 12) 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 13) 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.
3. The method for identifying a critical error of a worm gear machine according to claim 2, wherein in step 11), 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.
4. The method for identifying a critical error of a worm gear machine according to claim 3, wherein in step 12), 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.p01p.sub.e01T.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.m45T.sub.p56T.sub.m56T.sub.p67T.sub.m67; and 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.m45 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.
5. The method for identifying a critical error of a worm gear machine according to claim 4, wherein in step 13), 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:
6. The method for identifying a critical error of a worm gear machine according to claim 5, wherein in step 2, a method for solving the importance coefficient of each input feature with the random forest algorithm is as follows: 21) 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; 22) 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, 23) 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 24) repeating step 21) to step 23), such that an importance coefficient D.sub.j of the geometric error element xj is:
7. A method for iteratively compensating a critical error of a worm gear machine, comprising the following steps: step 1: determining, by using the method for identifying a critical error of a worm gear machine according to claim 1, a critical error affecting a machining accuracy of a worm gear machine, retaining the identified critical error item, and simplifying a geometric error-pose error model of the worm gear machine; step 2: assuming that an actual x-direction position of a 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.i+1 represents an iterative value of a numerical control (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 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,c.sub.i) wherein, 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; 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.sub.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 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; 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 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 3: 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 step 4; 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 step 2; and wherein the step of outputting the actual NC instruction comprises outputting the actual NC 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.
8. The method for iteratively compensating a critical error of a worm gear machine according to claim 7, wherein in step 1, a method for establishing the geometric error-pose error model of the worm gear machine is as follows: 11) analyzing a geometric error of the worm gear machine; 12) 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 13) 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.
9. The method for identifying a critical error of a worm gear machine according to claim 8, wherein in step 11), 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.
10. The method for identifying a critical error of a worm gear machine according to claim 9, wherein in step 12), 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.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.34 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.
11. The method for identifying a critical error of a worm gear machine according to claim 10, wherein in step 13), 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:
12. The method for identifying a critical error of a worm gear machine according to claim 11, wherein in step 2, a method for solving the importance coefficient of each input feature with the random forest algorithm is as follows: 21) 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; 22) 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, 23) 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 24) repeating step 21) to step 23), such that an importance coefficient D.sub.j of the geometric error element xj is:
13. The method for iteratively compensating a critical error of a worm gear machine according to claim 7, wherein in step 3, the motion accuracy of each of the X, Z, Y and C axes meets:
14. The method for iteratively compensating a critical error of a worm gear machine according to claim 8, wherein in step 3, the motion accuracy of each of the X, Z, Y and C axes meets:
15. The method for iteratively compensating a critical error of a worm gear machine according to claim 9, wherein in step 3, the motion accuracies of each of the X, Z, Y and C axes meets:
16. The method for iteratively compensating a critical error of a worm gear machine according to claim 10, wherein in step 3, the motion accuracies of each of the X, Z, Y and C axes meets:
17. The method for iteratively compensating a critical error of a worm gear machine according to claim 11, wherein in step 3, the motion accuracies of each of the X, Z, Y and C axes meets:
18. The method for iteratively compensating a critical error of a worm gear machine according to claim 12, wherein in step 3, the motion accuracies of each of the X, Z, Y and C axes meets:
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0054] 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:
[0055]
[0056]
[0057]
DETAILED DESCRIPTION OF THE EMBODIMENTS
[0058] 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.
[0059] A method for identifying a critical error of a worm gear machine in the embodiment includes the following steps:
[0060] Step 1: 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.
[0061] Specifically, a method for establishing the geometric error-pose error model of the worm gear machine is as follows:
[0062] 11) Analyze a geometric error of the worm gear machine.
[0063] As shown in
[0064] 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.
[0065] 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.
[0066] 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.
[0067] 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.
[0068] Specifically, each motion axis of the worm gear machine includes the following geometric error elements:
[0069] I. The X-axis has six items of PDGEs, respectively including:
[0070] 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.
[0071] II. The Z-Axis has Six Items of PDGEs and One Item of PIGE:
[0072] The six items of PDGEs are an x-direction linear error (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.
[0073] One item of PIGE is the perpendicularity error φ.sub.yz between the Y-axis and the Z-axis.
[0074] III. The Y-axis has six items of PDGEs and two items of PIGEs:
[0075] 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.
[0076] 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.
[0077] IV. The C-axis has six items of PDGEs and four items of PIGEs:
[0078] 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.
[0079] The four items of PIGEs are the x-direction linear error 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.
[0080] 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.
[0081] 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.
[0082] 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
[0083] 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
[0084] where, T.sub.02.sup.a and T.sub.02.sup.i 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;
[0085] T.sub.p01 represents a placement matrix from the C-axis to the bed, and T.sub.p01=I.sub.4×4;
[0086] T.sub.pe01 represents a placement error matrix from the C-axis to the bed, and
[0087] T.sub.m01 represents a motion matrix from the C-axis to the bed, and
[0088] T.sub.me01 represents a motion error matrix from the C-axis to the bed, and
[0089] 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;
T.sub.p12=T.sub.pe12=T.sub.12=T.sub.me12=.sub.4×4
[0090] 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
[0091] an ideal kinematic model of the cutter chain is:
T.sub.07.sup.i=T.sub.p03T.sub.m03T.sub.p34T.sub.m34T.sub.m45T.sub.p56T.sub.m56T.sub.p67T.sub.m67
[0092] 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;
[0093] 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.
[0094] T.sub.m03 represents a motion matrix from the X-axis to the bed,
[0095] T.sub.me03 represents a motion error matrix from the X-axis to the bed,
[0096] T.sub.p34 represents a placement matrix from the Z-axis to the X-axis, T.sub.p34=I.sub.4×4;
[0097] T.sub.pe34 represents a placement error matrix from the Z-axis to the X-axis,
[0098] T.sub.m34 represents a motion matrix from the Z-axis to the X-axis,
[0099] T.sub.me34 represents a motion error matrix from the Z-axis to the X-axis,
[0100] T.sub.p45 represents a placement matrix from the Y-axis to the Z-axis, T.sub.p45=I.sub.4×4;
[0101] T.sub.pe45 represents a placement error matrix from the Y-axis to the Z-axis,
[0102] T.sub.m45 represents a motion matrix from the Y-axis to the Z-axis,
[0103] T.sub.me45 represents a motion error matrix from the Y-axis to the Z-axis,
and
[0104] 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.
[0105] 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
[0106] 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.
[0107] 13) Establish the geometric error-pose error model of the worm gear mother from the actual forward kinematic model T and the ideal forward kinematic model T.sub.27.sup.i.
[0108] 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:
[0109] where, P.sub.w′=[x′,y′,z′].sup.T and Q.sub.w′=[i′,j′,k′].sup.T represent an actual cutter tip position vector and an actual cutter axis vector, respectively.
[0110] 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:
[0111] where, Δi represents an x-coordinate error of cutter axis vector data; Δj represents a y-coordinate error of the cutter axis vector data; Δk represents a z-coordinate error of the cutter axis vector data; x represents an x-coordinate error of cutter tip position data; Δy represents a y-coordinate error of the cutter tip position data; and Δz represents a z-coordinate error of the cutter tip position data.
[0112] Step 2: Regard the geometric error-pose error model of the worm gear machine as an MIMO nonlinear system, and solve, 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, then an importance coefficient of each input feature is solved with a random forest algorithm.
[0113] 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:
[0114] Specifically, as shown in
[0115] 21) Establish a decision tree T.sub.b with a bootstrap sampling set, and take a sample not participating in establishment of the decision tree as an out-of-bag (OBB) sample x.sub.b.sup.obb.
[0116] 22) Predict the x.sub.b.sup.obb with the established decision tree T.sub.b, and compute a correctly classified resolution R.sub.b.sup.obb.
[0117] 23) 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 is changed during initialization, and record the value as x.sub.bj.sup.obb; and then, predict 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.
[0118] 24) Repeat Step 21) to Step 23), such that an importance coefficient D.sub.j of the geometric error element x.sub.j is:
[0119] where, n is the number of repeated times.
[0120] Step 3: according to the solved importance coefficient of each input feature, determine a critical error affecting a machining accuracy of the worm gear machine.
[0121] The method for identifying the critical error of the worm gear machine and method for iteratively compensating the critical error of the worm gear machine provided by the embodiment establishes a pose error relation between a worm gear hob and a worm gear of the worm gear machine under the coupling influence of multiple geometric error elements to quantitatively analyze degrees of influence of the multiple geometric error elements on a machining accuracy of a worm gear; and solve, by taking a 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, and an importance coefficient of each input feature is solved with a random forest algorithm to identify the critical error element affecting the machining accuracy of the worm gear machine.
[0122] Specific implementation of a method for iteratively compensating a critical error of a worm gear machine provided by the embodiment is as follows:
[0123] 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.
[0124] As shown in
[0125] Step 1: by using the above-mentioned method for identifying a critical error of a worm gear machine in the embodiment, determine the critical errors affecting a machining accuracy of a worm gear machine, retain the identified critical error items, and simplify a geometric error-pose error model of the worm gear machine.
[0126] Step 2: Obtain, for an x-direction pose error, a mapping relation between the critical error item and the x-direction pose error by using the simplified geometric error-pose error model of the worm gear machine. If a motion position of the X-axis is controlled by an NC instruction x, an actual x-direction position of a cutter may be set as x+Δx(x,y,z,c) according to the simplified error model. The error compensation is intended to drive the X-axis through an NC code x to move to a predetermined position x.sup.i. Accordingly, a relation between the ideal cutter position and the NC instruction during compensation may be expressed as x+Δx(x,y,z,c)=x.sup.i, to obtain the 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)
[0127] 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.
[0128] 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,c.sub.i)
[0129] 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;
[0130] 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.sub.i−f.sub.Δy(x.sub.i+1,y.sub.i,z.sub.i+1,c.sub.i)
[0131] 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.
[0132] 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)
[0133] 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;
[0134] Step 3: 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 4; 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 2. Specifically, the motion accuracy of each of the X, Z, Y and C axes should meet:
[0135] where, Δ.sub.x, Δ.sub.z, Δ.sub.y and Δ.sub.c represent a maximum allowable threshold for the motion accuracies of the X-, Z-, Y-, and C axes, respectively.
[0136] Step 4: Output an actual NC instruction (x.sub.i, y.sub.i, z.sub.i, c.sub.i).
[0137] 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.
[0138] 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.