In modern manufacturing, the precision of CNC machine tools is critical for producing high-quality components, especially in industries such as automotive and aerospace. Internal helical gears are widely used in these sectors due to their superior load distribution and quiet operation. However, grinding these gears introduces geometric errors that can compromise their performance. This study focuses on developing an online monitoring and compensation system for grinding errors in internal helical gears. We employ homogeneous coordinate transformations to model geometric errors and implement a real-time monitoring approach using built-in sensors. By compensating for key error sources, we aim to enhance machining accuracy and ensure the reliability of helical gears in practical applications.
The grinding process for internal helical gears involves multiple axes of motion, including linear and rotational movements. Errors in these axes can lead to deviations in the gear tooth profile, affecting the overall gear quality. To address this, we first establish a kinematic model of the grinding machine using multi-body system theory. This model helps in understanding the relationship between the workpiece and the tool, and how errors propagate through the system. The topology of the grinding machine is represented as a series of connected bodies, with each body corresponding to a machine component such as slides or spindles. For instance, the workpiece chain extends from the gear to the machine bed, while the tool chain spans from the grinding wheel to the bed. This representation allows us to derive transformation matrices that describe the ideal and actual positions of the tool relative to the workpiece.
We define the low-order body array to characterize the kinematic chain. Let $L(K)$ denote the adjacent lower-order body of body $K$. The low-order operator $L$ is recursively defined as $L^{(n)}(K) = L(L^{(n-1)}(K))$, with $L^{(0)}(K) = K$ and $L^{(0)} = 0$. Based on the machine topology, we can list the low-order body array as shown in Table 1.
| Low-Order Operator | Body 1 | Body 2 | Body 3 | Body 4 | Body 5 | Body 6 | Body 7 |
|---|---|---|---|---|---|---|---|
| $L^{(0)}(K)$ | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| $L^{(1)}(K)$ | 0 | 1 | 2 | 3 | 1 | 5 | 6 |
| $L^{(2)}(K)$ | 0 | 0 | 1 | 2 | 0 | 1 | 5 |
| $L^{(3)}(K)$ | 0 | 0 | 0 | 1 | 0 | 0 | 1 |
| $L^{(4)}(K)$ | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Next, we derive the homogeneous coordinate transformation matrices for the ideal and error-prone states. The ideal transformation from the workpiece to the tool is given by the product of individual transformation matrices along the kinematic chain. For example, the transformation from the gear coordinate system to the workpiece coordinate system is represented as $T_{gC}$, and similarly for other pairs. The overall ideal transformation matrix $T_{gW}$ is computed as:
$$ T_{gW} = T_{gC} T_{CX} T_{XJ} T_{JZ} T_{ZA} T_{AW} $$
In the presence of geometric errors, the actual transformation matrix $T_{gW}^e$ includes error components. We define error matrices for each pair, such as $N_{XC}$ for the transformation between the X and C axes, which accounts for linear and angular errors. The general form of an error matrix is:
$$ E = \begin{bmatrix}
1 & -\epsilon_z & \epsilon_y & \delta_x \\
\epsilon_z & 1 & -\epsilon_x & \delta_y \\
-\epsilon_y & \epsilon_x & 1 & \delta_z \\
0 & 0 & 0 & 1
\end{bmatrix} $$
where $\delta_x$, $\delta_y$, and $\delta_z$ are linear errors along the X, Y, and Z axes, and $\epsilon_x$, $\epsilon_y$, and $\epsilon_z$ are angular errors. The actual transformation matrix is then:
$$ T_{gW}^e = T_{gC}^e T_{CX}^e T_{XJ}^e T_{JZ}^e T_{ZA}^e T_{AW}^e $$
and the error matrix $E_{gW}$ relating the ideal and actual transformations is:
$$ E_{gW} = T_{gW}^e (T_{gW})^{-1} $$
This error model forms the basis for our compensation strategy. The adjacent coordinate transformations, both ideal and with errors, are summarized in Table 2.
| Transformation Pair | Ideal Transformation Matrix | Transformation Matrix with Errors |
|---|---|---|
| C to g | $T_{gC} = I_{4 \times 4}$ | $T_{gC}^e = I_{4 \times 4}$ |
| X to C | $T_{XC} = \begin{bmatrix} \cos\alpha & -\sin\alpha & 0 & 0 \\ \sin\alpha & \cos\alpha & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix}$ | $T_{XC}^e = T_{XC} \cdot N_{XC}$, where $N_{XC} = \begin{bmatrix} 1 & -\epsilon_{zc} & \epsilon_{yc} & \delta_{xc} \\ \epsilon_{zc} & 1 & -\epsilon_{xc} & \delta_{yc} \\ -\epsilon_{yc} & \epsilon_{xc} & 1 & \delta_{zc} \\ 0 & 0 & 0 & 1 \end{bmatrix}$ |
| J to X | $T_{JX} = \begin{bmatrix} 1 & 0 & 0 & x \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix}$ | $T_{JX}^e = \begin{bmatrix} 1 & -\epsilon_{zx} & \epsilon_{yx} & x + \delta_{xx} \\ \epsilon_{zx} & 1 & -\epsilon_{xx} & \delta_{yx} \\ -\epsilon_{yx} & \epsilon_{xx} & 1 & \delta_{zx} \\ 0 & 0 & 0 & 1 \end{bmatrix}$ |
| Z to J | $T_{JZ} = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & z \\ 0 & 0 & 0 & 1 \end{bmatrix}$ | $T_{JZ}^e = \begin{bmatrix} 1 & -\epsilon_{zz} & \epsilon_{yz} & \delta_{xz} \\ \epsilon_{zz} & 1 & -\epsilon_{xz} & \delta_{yz} \\ -\epsilon_{yz} & \epsilon_{xz} & 1 & z + \delta_{zz} \\ 0 & 0 & 0 & 1 \end{bmatrix}$ |
| A to Z | $T_{ZA} = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & \cos\beta & -\sin\beta & 0 \\ 0 & \sin\beta & \cos\beta & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix}$ | $T_{ZA}^e = T_{ZA} \cdot \begin{bmatrix} 1 & -\epsilon_{za} & \epsilon_{ya} & \delta_{xa} \\ \epsilon_{za} & 1 & -\epsilon_{xa} & \delta_{ya} \\ -\epsilon_{ya} & \epsilon_{xa} & 1 & \delta_{za} \\ 0 & 0 & 0 & 1 \end{bmatrix}$ |
| W to A | $T_{AW} = I_{4 \times 4}$ | $T_{AW}^e = I_{4 \times 4}$ |
To model the tooth surface error of helical gears, we consider the grinding wheel profile and its interaction with the gear. The axial profile of the wheel is parameterized by $\eta$, and the wheel surface is generated by rotating this profile about its axis. Let $r_q(\eta) = [x_q(\eta), y_q(\eta), 0, 1]^T$ be the axial profile vector. The wheel surface in the wheel coordinate system is given by:
$$ r_w(\eta, \phi) = T_{qw}(\phi) r_q(\eta) $$
where $T_{qw}(\phi)$ is the rotation matrix about the wheel axis:
$$ T_{qw}(\phi) = \begin{bmatrix}
\cos\phi & \sin\phi & 0 & 0 \\
0 & 1 & 0 & 0 \\
0 & -\sin\phi & \cos\phi & 0 \\
0 & 0 & 0 & 1
\end{bmatrix} $$
The unit normal vector $n_w(\eta, \phi)$ to the wheel surface is derived from the partial derivatives of $r_w$ with respect to $\eta$ and $\phi$. In the gear coordinate system, the ideal wheel surface is represented as:
$$ \begin{cases}
r_g(\eta, \phi, \alpha, \beta, x) = T_{gW} \cdot r_w(\eta, \phi) \\
n_g(\eta, \phi, \alpha, \beta, x) = T_{gW} \cdot n_w(\eta, \phi)
\end{cases} $$
Similarly, the actual wheel surface, considering geometric errors, is:
$$ \begin{cases}
r_g^e(\eta, \phi, \alpha, \beta, x, G) = T_{gW}^e \cdot r_w(\eta, \phi) \\
n_g^e(\eta, \phi, \alpha, \beta, x, G) = T_{gW}^e \cdot n_w(\eta, \phi)
\end{cases} $$
where $G$ is the vector of geometric errors. The contact condition between the wheel and the gear tooth surface requires that the normal vector at the contact point is perpendicular to the relative velocity vector. The ideal contact condition is:
$$ f(\eta, \phi, \alpha, \beta, x) = (k_g \times r_g + k_g) \cdot n_g = 0 $$
and the actual contact condition is:
$$ f^e(\eta, \phi, \alpha, \beta, x, G) = (k_g \times r_g^e + k_g) \cdot n_g^e = 0 $$
where $k_g$ is the unit vector along the gear axis. By discretizing the wheel profile parameter $\eta$ into $n$ points, we can solve for the corresponding $\phi$ values and obtain a set of contact points. The tooth surface is then represented as a collection of contact lines. The error in the tooth surface due to geometric errors is quantified as:
$$ \begin{cases}
\delta F_g = [\delta g_x, \delta g_y, \delta g_z, 0]^T = r_{g_{kj}}^e – r_{g_{kj}} \\
\epsilon F_g = [\epsilon g_x, \epsilon g_y, \epsilon g_z, 0]^T = n_{g_{kj}}^e – n_{g_{kj}}
\end{cases} $$
for $k = 1, 2, \ldots, \lambda$ and $j = 1, 2, \ldots, n$, where $\lambda$ is the number of contact lines.

To monitor these errors in real-time, we implement an online monitoring system using built-in sensors on the CNC machine. The system collects data on the positions of the machine axes during the grinding of helical gears. The monitoring process involves data acquisition, processing, storage, and analysis. Sensors attached to the X, Z, and C axes provide feedback on their actual positions and tracking errors. For example, during grinding, the C axis rotates to position the gear tooth slot, the A axis sets the helix angle, and the Z axis controls the feed motion along the tooth width. The X, Y, A, and C axes are locked during the grinding of each tooth slot. The data collected from these axes show that the X axis has minimal tracking error (approximately ±0.01 mm), while the Z and C axes exhibit larger fluctuations (±0.17 mm and ±0.033°, respectively). This indicates that the Z and C axes are the primary sources of error in the grinding process for helical gears.
Based on the monitoring results, we apply software compensation to correct the geometric errors. Unlike hardware compensation, which involves mechanical adjustments, software compensation uses computational methods to offset errors without altering the machine structure. The compensation principle involves generating reverse error values based on the measured errors and feeding them into the CNC system. We use a lookup table method in the Siemens control system to input compensation values directly. The compensation process is dynamic, adjusting the axis motions in real-time to counteract errors. For instance, the weighted compensation values for the Z and C axes are calculated and applied to reduce their tracking errors during grinding.
To validate the effectiveness of the compensation, we conduct experiments on an internal helical gear grinding machine. The gear parameters are listed in Table 3.
| Parameter | Value |
|---|---|
| Number of Teeth (Z) | 79 |
| Module (m_n) / mm | 2 |
| Pressure Angle (α_n) / ° | 20 |
| Helix Angle (β) / ° | 15 |
| Face Width (b) / mm | 45 |
| Profile Shift Coefficient (x_n) | 0 |
We use a gear measuring instrument to assess the gear accuracy before and after compensation. The evaluation criteria include cumulative pitch deviation ($F_P$), single pitch deviation ($f_P$), and total profile deviation ($F_\alpha$). The results, as shown in Table 4, demonstrate a significant improvement in gear accuracy after compensation. For example, the cumulative pitch deviation on the left flank decreased from 27.4 μm to 17.2 μm, raising the accuracy grade from 6 to 4. Similarly, the total profile deviation improved from 11.3 μm to 7.3 μm, enhancing the grade from 7 to 5. These improvements confirm that the compensation strategy effectively reduces geometric errors in the grinding of helical gears.
| Error Type | Before Compensation / μm | After Compensation / μm | Accuracy Grade Improvement |
|---|---|---|---|
| $F_P$ (Right Flank) | 28.8 | 24.1 | 6 to 5 |
| $F_P$ (Left Flank) | 27.4 | 17.2 | 6 to 4 |
| $f_P$ (Right Flank) | 7.9 | 6.2 | 6 to 5 |
| $f_P$ (Left Flank) | 5.8 | 3.6 | 5 to 4 |
| $F_\alpha$ (Total Profile) | 11.3 | 7.3 | 7 to 5 |
In conclusion, this study presents a comprehensive approach to online monitoring and compensation of grinding errors for internal helical gears. By modeling geometric errors through homogeneous coordinate transformations and implementing real-time monitoring, we identify and compensate for key error sources. The experimental results show marked improvements in gear accuracy, underscoring the importance of error compensation in high-precision manufacturing. This method not only enhances the quality of helical gears but also contributes to the advancement of CNC machine tool capabilities. Future work could focus on extending this approach to other types of gears or machining processes, further leveraging the principles of multi-body system theory and real-time data analysis.
