Filtering of motor signals for chatter detection

A sensorless method for detecting machine tool chatter by analyzing motor torque signals in the frequency domain addresses the limitations of existing sensor-based systems, enabling effective detection of chatter at any frequency and improving machining quality.

JP2025073111APending Publication Date: 2025-05-12FANUC LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024187530
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-10-25
Filing Date
2024-10-24
Publication Date
2025-05-12

AI Technical Summary

Technical Problem

Existing chatter detection methods for machine tools require the integration of external sensors and data collection devices, and are often limited to detecting severe chatters, missing mild chattering issues. Additionally, these methods are data-intensive and computationally complex.

Method used

A sensorless method for detecting machine tool chatter that analyzes motor torque signals in the frequency domain, filtering out aliasing and encoder errors, and evaluating metric criteria to identify chatter, without the need for external sensors.

Benefits of technology

This method effectively detects chatter at any frequency, including low amplitudes, without the complexity of traditional sensor-based systems, enabling timely correction and improving machining quality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025073111000001_ABST
    Figure 2025073111000001_ABST
Patent Text Reader

Abstract

To provide a sensorless method for machine tool chatter detection.SOLUTION: A motor torque signal is analyzed in the time domain to determine whether a bit is currently cutting workpiece material. When not cutting material, an air-cut reference signal is stored for later use. When cutting material, the motor torque signal is converted to the frequency domain and filtered in a multi-step process. After removal of the air-cut reference signal via spectral subtraction, and removal of spindle harmonic components, additional filtering is performed to address aliasing and encoder error effects. The aliasing filtering removes artificial peaks in the frequency response spectrum resulting from interaction between sampling frequency and cutting frequency. The encoder error filtering removes frequency response peaks related to encoder design and interaction with motor speed. After filtering, indicator criteria are evaluated to detect chatter, and corrective action is taken when chatter is detected.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates generally to the field of chatter detection in machine tools, and more particularly to a method for detecting chatter in a machine tool without the need for sensors on the machine tool or its environment, where motor torque in the frequency domain is filtered in a multi-stage process that includes removing the effects of aliasing and encoder errors, and then indicator criteria are evaluated to detect the presence of chatter. [Background technology]

[0002] The use of computer-controlled equipment to perform machining operations such as drilling and milling parts is well known in the industry. In some applications, computer numerically controlled (CNC) machines are used that move the tool along three cardinal directions with or without changing the tool orientation. In other applications, multi-axis industrial robots equipped with machining heads can move the tool along any spatial path while controlling the tool orientation to any value.

[0003] Regardless of what type of machine tool or robot is used to perform a machining operation, the quality of the finished workpiece is always important and situations that can have a negative impact on the quality of the workpiece or the life of the machine tool must be avoided. Chatter is a particular problem that is known to occur in some machining operations.

[0004] Chatter is a condition where unwanted vibrations of the cutting tool occur during machining. For example, in milling, where the milling tool (bit) cuts transversely (perpendicular to the axis of the bit), slight compliance of the machine tool and milling bit causes the bit to vibrate relative to the workpiece during the cut. This vibration causes the machined surface of the workpiece to have a "wavy" profile, rather than the desired smooth profile. Furthermore, in some situations, the cutting conditions can become unstable; that is, the material thickness can change rapidly and become non-uniform in subsequent bit passes due to the wavy profile created in one cutting pass. The non-uniform cutting thickness increases the amplitude of the chatter vibration.

[0005] Unstable chatter often breaks the workpiece and can even damage the milling bit or the machine tool itself. It is therefore desirable to detect chatter as soon as it occurs and take measures to eliminate it.

[0006] Techniques for detecting chatter in machine tools are well known in the industry. Many existing systems require the addition of vibration sensors or microphones to the machine tool environment and the integration of associated data collection and analysis systems into the machine tool controller. Other techniques for detecting chatter involve measuring the structural dynamics of the machine tool system to identify the natural frequencies of vibration and use this information to predict process stability. Still other chatter detection techniques use artificial intelligence approaches where machine learning systems learn using data from multiple sensors to identify both stable and unstable cutting conditions. Summary of the Invention [Problem to be solved by the invention]

[0007] All of the above-mentioned existing chatter detection techniques suffer from one or more drawbacks, such as the need to add sensors and data collection devices to the machine tool system, the need to use a structural dynamic model of the machine tool system to predict problematic conditions, and the computationally and data-intensive nature of the analysis. Furthermore, most of the existing chatter detection techniques can only detect severe chatter above a certain amplitude, and may miss mild chatter conditions.

[0008] In view of the above, what is needed is an improved method for detecting chatter in a machine tool that does not require the integration of external sensors or data collection devices and can detect chatter at any frequency, even at low amplitudes. [Means for solving the problem]

[0009] This disclosure describes a method for detecting chatter in a machine tool without the need for sensors on the machine tool or its environment. When the spindle of the machine tool is running, the motor torque signal is analyzed in the time domain to determine whether the bit is currently cutting material from the workpiece. When not cutting material, the air cut reference signal is stored for use in a later step. When cutting material, the motor torque signal is transformed to the frequency domain and filtered in a multi-step process. After removal of the air cut reference signal by spectral subtraction and removal of spindle harmonic components at known frequencies, additional filtering is performed to address the effects of aliasing and encoder errors. Aliasing filtering removes artificial peaks in the frequency response spectrum that arise from the interaction of the sampling frequency and the cutting frequency. Encoder error filtering removes frequency response peaks associated with the structure of the encoder and the interaction of the motor speed with the encoder. After filtering, various indicator criteria are evaluated to detect the presence of chatter, including the magnitude of the filtered torque signal and the ratio of the magnitude of the filtered torque signal to the air cut reference signal. If chatter is detected, corrective action is carried out in the form of individual spindle speed changes.

[0010] Additional features of the disclosed systems and methods will become apparent from the following description and claims, taken in conjunction with the accompanying drawings. [Brief description of the drawings]

[0011] [Figure 1] FIG. 1 illustrates a machine tool workpiece machining operation and basic concepts related to unstable chatter in machine tools.

[0012] [Diagram 2] FIG. 1 is a schematic diagram of a system including a computer controlled machine tool for performing machining operations on a workpiece of a type applicable to the techniques of this disclosure.

[0013] [Diagram 3] 1 is a flowchart of a method for sensorless chatter detection in a machine tool using a two-stage filtering process in the frequency domain and evaluation of two indicator criteria according to an embodiment of the present disclosure.

[0014] [Figure 4] 4 is a frequency response graph of motor torque command data before and after filtering using the method of FIG. 3 in accordance with an embodiment of the present disclosure.

[0015] [Figure 5A] 4 is a frequency response graph of motor torque command data in the presence of chatter illustrating the effect of a filtering step and the results of the chatter indicator analysis of FIG. 3 according to an embodiment of the present disclosure; [Figure 5B] 4 is a frequency response graph of motor torque command data in a chatter-free condition illustrating the effect of a filtering step and the results of the chatter indicator analysis of FIG. 3 according to an embodiment of the present disclosure.

[0016] [Figure 6A] 4 is a frequency response graph of motor torque ratio (cutting to air cutting) in the presence of chatter, illustrating the effect of a filtering step and the results of the chatter indicator analysis of FIG. 3, according to an embodiment of the present disclosure; [Figure 6B] 4 is a frequency response graph of motor torque ratio (cutting to air cutting) in a chatter-free condition illustrating the effect of a filtering step and the results of the chatter indicator analysis of FIG. 3 according to an embodiment of the present disclosure.

[0017] [Figure 7] 11 is a frequency response graph of motor torque command data before and after filtering to remove aliasing effects in accordance with an embodiment of the present disclosure.

[0018] [Figure 8] 1 is a flowchart of a method for sensorless chatter detection in a machine tool that includes filtering and analyzing both spindle and servo motor data using a multi-stage filtering process in the frequency domain, according to an embodiment of the present disclosure.

[0019] [Figure 9] 1 is a mockup of a graphical user interface providing visualization and control of machine tool chatter detection in accordance with an embodiment of the present disclosure;

[0020] [Figure 10] 1 is a graph of a measured frequency response function of a machine tool in accordance with an embodiment of the present disclosure.

[0021] [Figure 11] 1 is a set of graphs plotting acceleration versus time for three tests included in Table 1, according to an embodiment of the present disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0022] The following description of embodiments of the present disclosure directed to sensorless machine tool chatter detection is merely exemplary in nature and is not intended to limit the disclosed apparatus and techniques or their applications or uses.

[0023] Chatter is a phenomenon that sometimes occurs during machining operations with machine tools. A typical example is in a milling operation, where the tip of an end mill vibrates laterally as it removes material from a workpiece. Chatter can cause a reduction in the quality of the workpiece or even damage to the workpiece and / or the machine tool, so it is desirable to avoid chatter as much as possible in machining operations.

[0024] FIG. 1 illustrates a diagram of a workpiece machining operation and basic concepts regarding machine tool chatter. An end mill 110 is attached to the machine tool spindle (not shown). The end mill 110 rotates at high speed about its central axis by the spindle. The machine tool moves the end mill 110 according to a computer-programmed tool path to perform machining operations on a workpiece 120. Depending on the type of machine tool or robot to which it is attached, the end mill 110 may move only in translation (three dimensions) or may translate and also rotate in various directions. In the example shown in FIG. 1, the end mill 110 moves in a feed direction indicated by the annotated arrow and cuts material from the workpiece 120 as shown. The end mill 110 has four cutting "teeth" or flutes 112. It should be understood that the end mill 110 is merely an example, the vibration concepts described herein apply generally to cutting tools, and the vibration detection techniques of the present disclosure are also applicable to other milling tools and other types of cutting devices in which chatter phenomena may occur.

[0025] 1 shows a chatter state in which an end mill 110 vibrates laterally so as to move toward and away from a workpiece 120. This vibration is generated by slight compliance or slackness in the machine tool, such as the flexibility of the end mill 110 itself, the mounting bearings for the spindle, and the installation and positioning structure of the entire machine tool.

[0026] During machining, the machined surface of the workpiece 120 does not have a perfectly smooth profile as would be desired, but rather takes on a wavy or continuous fan shape as characterized by vibration marks shown at 122. While any surface waviness shown in Figure 1 is exaggerated for visual effect, the vibration marks on the workpiece surface may actually be large enough to adversely affect the quality of the workpiece. The cutting conditions may be stable or unstable (i.e., chatter), as will be further explained below.

[0027] In a steady cutting condition, as shown in inset 130, the vibration marks left by the current tooth path 132 are in phase with the vibration marks left by the previous tooth path 134. That is, the phase angle of the vibration marks is zero (ε=0). When the vibration marks from one pass to the next are in phase, the thickness of material cut by the end mill 110 is essentially constant. In other words, the "chip thickness" 136 is essentially constant, similar to an ideal, chatter-free condition.

[0028] In an unstable chatter condition as shown in inset 140, the vibration marks left by the current tooth path 142 are out of phase with the vibration marks left by the previous tooth path 144. That is, the phase angle of the vibration marks is not zero (ε≠0). In the example shown in inset 140, the vibration marks from the current tooth path 142 are approximately 180 degrees out of phase with the vibration marks left by the previous tooth path 144. When the vibration marks are out of phase from one path to the next, the thickness of the material cut by the end mill 110 changes. In other words, the chip thickness 146 is not constant. As the chip thickness 146 varies, the torque and speed of the motor vary, creating an unstable condition in which the magnitude of the vibration increases. Unstable chatter can cause damage to the workpiece and even damage to the machine tool or end mill 110.

[0029] 2 is a schematic diagram of a system 200 including a computer-controlled machine tool that performs machining operations on a workpiece of a type applicable to the techniques of this disclosure. The machine tool 210 rotates a spindle 212 to which a cutting bit, in this case an end mill 220, is fixed. The machine tool 210 causes the end mill 220 to perform a machining operation on a workpiece 230. The machine tool 210 communicates with a controller 240, which is a computing device that provides motion instructions and spindle motor speed instructions to the machine tool 210. In a typical example, the machine tool 210 moves the rotating end mill 220 along a path from a starting point to remove material from the workpiece 230, disengages the end mill 220 from the workpiece 230, returns the end mill 220 to a position near the starting point, and then generates another path to remove more material from the workpiece 230.

[0030] The end mill 220 is shown in more detail in the inset showing the teeth or flutes on the tip 222. In this example, the end mill 220 again has four teeth or flutes. The number of flutes is important in relation to chatter conditions because when the cutting teeth engage the workpiece as the mill rotates, they leave a continuous vibration mark.

[0031] As described in more detail below, the techniques of the present disclosure are applicable to system 200. In particular, the chatter detection methods of the present disclosure can be programmed into controller 240 using data that is readily available in existing controller architectures. No sensors, microphones, or other data collection devices are required for data collection, nor is there a need to integrate a separate data collection or sensor subsystem into controller 240.

[0032] 2 are depicted in a fairly simple manner, with the machine tool 210 being movable about three primary axes of motion including a "vertical" direction (parallel to the axis of the end mill 220) and two "horizontal" directions (orthogonal to the axis of the end mill 220). The chatter detection methods of the present disclosure are applicable to any type of machine tool where chatter may occur, including multi-axis machines with tool positioning and orientation capabilities, and robotically controlled mills and drills with articulated robotic arms that provide full flexibility in tool positioning and orientation.

[0033] 3 is a flow chart diagram 300 of a method for sensorless chatter detection in a machine tool using a two-stage filtering process in the frequency domain and evaluation of two indicator criteria, according to an embodiment of the present disclosure. The method of FIG. 3 can be programmed to run on the machine tool controller 240 and uses input data that is readily available for any controller architecture. The disclosed method includes filtering and analysis steps to detect chatter without the complexities and limitations of conventional methods.

[0034] The process begins at start block 302 and proceeds to decision diamond 304 where it is determined whether the machine tool spindle is rotating (i.e. running or starting up). If the spindle is not rotating, no chatter analysis is required and the process waits until the spindle is started. If the spindle is rotating, the process proceeds to decision diamond 306 where it is determined whether the cutting operation is complete. Information regarding whether the spindle is rotating (decision diamond 304) and whether the cutting operation is complete (decision diamond 306) is available at the controller from the running machine control program (i.e. a "numerical control" program that defines the sequence of cutting paths / operations to be performed on the workpiece). If the cutting operation is complete, the process ends at endpoint 308. If the cutting operation is not complete, the process proceeds to decision diamond 310.

[0035] The remaining steps of the flow chart diagram 300 are all based on the analysis of the motor torque data. The basic premise is that if chatter is present, vibrations at the cutter-work interface will cause the cutter rotational speed to oscillate, which in turn will cause the commanded motor torque to oscillate, resulting in chatter appearing in the motor torque data. The commanded motor torque is readily available in software running on the machine controller, and the torque command is either directly available as a machine state or can be derived from available motor current data. In the following description, most of the analysis is based on the spindle torque command data (designated as Tcmd). Steps performed in the time domain are included in dashed box 330, and steps performed in the frequency domain are included in dashed box 340.

[0036] JPEG2025073111000002.jpg75169

[0037] If the cutting bit is not currently cutting workpiece material, the air cut reference torque signal is updated (e.g., by averaging currently collected air cut torque data with previously collected data) at block 312 and the process returns to decision diamond 306. Because the air cut torque signal may change over time as machine tool conditions change (bearing wear, lubrication changes, etc.), updates to the air cut reference torque signal are performed periodically to ensure that current data is preserved. Because the air cut torque data contains machine characteristics that are important for subsequent filtering and analysis steps, it is important to have current and accurate air cut reference data available.

[0038] If, from decision diamond 310, the machine tool is currently cutting the workpiece material, then in block 314 the time domain motor torque signal is converted to the frequency domain and a two stage filtering process is performed. A Fast Fourier Transform (FFT) is a technique that can be performed in a known manner on the time domain motor torque command signal (Tcmd(t)) to generate frequency domain torque command data (Tcmd(ω)). Other techniques for converting time domain motor torque signals to the frequency domain are known in the art. The frequency domain motor torque command data (Tcmd(ω)) at any time point (e.g., 3.5 seconds after the start of the cutting operation) can be visualized as a frequency response graph, as shown in a subsequent figure and described below.

[0039] JPEG2025073111000003.jpg81169

[0040] JPEG2025073111000004.jpg86169

[0041] JPEG2025073111000005.jpg70169

[0042] JPEG2025073111000006.jpg20158

[0043] Figure 4 is a frequency response graph 400 of motor torque command data both before and after filtering using the method of block 314 of Figure 3 in accordance with an embodiment of the present disclosure. Graph 400 plots spindle torque command (as a percentage of maximum value) on vertical axis 410 against frequency on horizontal axis 420. The dashed vertical lines 430 correspond to spindle harmonic frequencies.

[0044] Graph 400 includes plots of both the original (unfiltered) torque data and the filtered torque data, as indicated in the legend. In the original unfiltered torque data, the response contains large spikes such as those shown at 440 and 442. Response spikes 440 and 442 may be signal noise or may be due to the natural frequency characteristics of the machine tool, exacerbated by the machine tool's natural frequencies that correspond to the harmonic frequencies of the spindle. In an analysis of the original unfiltered torque data, spikes such as 440 / 442 may be misinterpreted as chatter.

[0045] The filtered torque data contains several small spikes in the frequency response, such as that shown at 450. Close analysis of the actual machine performance during the experiment that generated this data shows that spike 450 corresponds to actual chatter at 920 Hz. Two things are noteworthy about this. First, by using the filtering technique described above with respect to block 314 of FIG. 3, the frequency response content associated with actual chatter is revealed and easier to detect. Second, the chatter at 920 Hz is not as evident in the original (unfiltered) data, especially in comparison to the larger spikes 440 and 442 ("false positives") that do not correspond to actual chatter of the mill relative to the workpiece.

[0046] JPEG2025073111000007.jpg26160

[0047] JPEG2025073111000008.jpg103169

[0048] JPEG2025073111000009.jpg81169

[0049] The second chatter index also addresses distortion due to spindle dynamics. It is known that the torque command at the spindle is different from the torque at the tool tip, and the difference (known as distortion) varies with frequency (spindle speed). However, the second chatter index defined above is a ratio, so it mitigates this distortion, and the distortion in the numerator cancels out the distortion in the denominator.

[0050] The meaning of "much larger" in inequalities (5) and (7) can be defined in any manner found appropriate for the particular application (e.g., "10 times larger" or "50 times larger", etc.). Preferably, the calculated chatter indices are checked against predefined thresholds for chatter detection, with the thresholds (one for each chatter indices) being empirically defined from known chatter and non-chatter operating data. Statistical analysis such as Z-score (median and deviation analysis) can also be used to determine whether a particular feature in the frequency response data is an outlier indicative of chatter, for both index parameters.

[0051] If either the first or second chatter indicators (or both) indicate the occurrence of chatter, then the chatter frequency ωchatter is identified as the particular frequency at which inequalities (5) and / or (7) are true. Once chatter is detected and a chatter frequency is identified, the two chatter indicators may be further evaluated at sideband frequencies (above or below the chatter frequency by multiples of spindle speed) for a confirmatory indication of chatter, as will be further described below.

[0052] JPEG2025073111000010.jpg67165

[0053] At decision diamond 318, if chatter is not detected by the indicator analysis of block 316, the process returns to decision diamond 306 and the chatter detection method is repeated if the operation is not complete. This chatter detection iteration continues until the cutting operation is completed.

[0054] JPEG2025073111000011.jpg26160

[0055] JPEG2025073111000012.jpg67165

[0056] The data shown in FIG. 5A was collected from an experimental milling operation where 920 Hz chatter was independently verified, whereas FIG. 5B shows frequency response data for a similar experimental milling operation where independent monitoring did not detect chatter. FIG. 5B is a graph 550 plotting spindle torque command (as a percentage of maximum) on vertical axis 560 against frequency on horizontal axis 570. Graph 550 also includes plots of both the original (unfiltered) torque data and the filtered torque data, as indicated in the legend. It can be seen that the filtered torque response data is free of large spikes, which is consistent with the independent monitoring and analysis performed during the experiment. Again, it can be readily seen that the torque data filtered in accordance with the techniques of the present disclosure does not exhibit chatter in graph 550 of FIG. 5B.

[0057] In both graph 500 (FIG. 5A) and graph 550 (FIG. 5B), the original unfiltered torque data contains large spikes in the response similar to those described above with respect to FIG. 4. Many of the spikes in the response (both large and small) correspond to harmonic frequencies of the spindle, while other spikes correspond to other dynamic response characteristics of the machine. Because the spikes in the original unfiltered torque data have been substantially all removed in the filtered torque data, the actual chatter condition observed in FIG. 5A can be easily identified.

[0058] JPEG2025073111000013.jpg22169

[0059] FIG. 6A is a graph 600 plotting motor torque ratio (cutting to air cutting) on ​​the vertical axis 610 against frequency on the horizontal axis 620. Again, the vertical dashed lines coincide with the harmonic frequencies of the spindle. Graph 600, like the graphs above, includes plots of both the original (unfiltered) and filtered torque data. The ratio using the filtered torque data contains a large feature (spike) in the response data shown by ellipse 630. Based on the magnitude of this spike (much greater than zero), the spike in ellipse 630 is easily identifiable as chatter. The chatter frequency ωchatter is identified as 920 Hz, which matches the chatter frequency identified in FIG. 5A using data from the same experiment. The small spike also present in the filtered torque ratio data may indicate chatter occurring at a frequency offset from the chatter frequency by a multiple of the spindle speed.

[0060] The data shown in FIG. 6A was collected from an experimental milling operation where 920 Hz chatter was independently verified, whereas FIG. 6B shows frequency response data for a similar experimental milling operation where independent monitoring did not detect chatter. FIG. 6B is a graph 650 plotting spindle torque ratio (cutting to air cutting) on ​​the vertical axis 660 against frequency on the horizontal axis 670. Graph 650 also includes plots of both original (unfiltered) and filtered torque data as indicated in the legend. It can be seen that there are no significant spikes in the torque ratio data, which is consistent with the independent monitoring and analysis performed during the experiment. Again, the torque ratio indicator according to the disclosed technology readily indicates that chatter is not present in graph 650 of FIG. 6B.

[0061] The results shown in Figures 5 and 6 have been verified in experiments using external sensors such as an accelerometer and audio recorder. For the experimental operating conditions reflected in Figures 5A and 6A, the external sensors confirmed the presence of chatter at a frequency of 920 Hz, as identified by the analysis of the chatter indicator parameters described above. For the experimental operating conditions reflected in Figures 5B and 6B, the external sensors confirmed the absence of chatter. Thus, the torque data filtering and analysis techniques of the present disclosure have been demonstrated to provide the advantages of clearly and precisely indicating a chatter condition when it exists, and clearly and precisely indicating when chatter does not exist, eliminating many of the false positive spikes present in the frequency response spectrum of unfiltered torque data.

[0062] The discussion so far has focused on frequency domain filtering of the spindle motor torque data. This involves two filtering steps: spectral subtraction of the air cut reference signal and filtering of the spindle harmonic frequencies. These filtering steps effectively prepare the spindle motor torque data for analysis to detect chatter. Other types of filtering models and other types of motor data from the machine tool can also be added to the techniques described above. These additional data sources and filtering models have proven advantageous in certain chatter detection applications and are discussed below.

[0063] First, two additional filtering steps are described that address other sources of signal noise not addressed by the air-cut spectral subtraction and attenuation of the principal axis harmonics described above. The two additional filtering steps described below include the removal of aliasing artifacts and the removal of encoder interpolation errors.

[0064] Aliasing is the overlapping of frequency components caused by data sample rates below the Nyquist frequency. The Nyquist frequency is a property of a sampler that converts a continuous function or signal into a discrete sequence. For a given sampling rate (samples per second), the Nyquist frequency (cycles per second) is the frequency where the cycle length (or period) is twice the interval between samples, or 0.5 cycles / sample. An insufficient sampling frequency will cause distortions and artifacts when reconstructing a signal from the samples, causing the reconstructed signal to differ from the original continuous signal.

[0065] As a simple example, consider a 10 Hz sine wave sampled with time series data collected at 15 Hz and 50 Hz. When transformed into the frequency domain, the 15 Hz sampled data shows a strong frequency response at 5 Hz, which is incorrect and is due to aliasing effects. The 50 Hz sampled data shows a strong frequency response at 10 Hz, which is correct and is due to the sampling frequency being much higher than the frequency content of the signal. In other words, the 50 Hz sampling rate is high enough to avoid aliasing effects in the 10 Hz data signal.

[0066] In the chatter detection application of the present disclosure, aliasing causes artificial peaks in the frequency response spectrum resulting from the interaction of the sampling frequency and the cutting frequency. In a machine tool for chatter monitoring, the torque command is present in the CNC control system, and the control loop operates at different frequencies. Thus, the resulting frequency response spectrum may exhibit a mixture of real and artificial content due to aliasing effects from the slow components of the CNC controller. Assuming that the slow components of the controller operate at a sampling frequency (fs) of 1000 Hz, the corresponding Nyquist frequency (fNyquist) is 500 Hz, and above this frequency, aliasing artificial peaks may occur.

[0067] The cutting frequency of a machine tool is the frequency at which the grooves or teeth of the cutting bit / tool ​​(such as an end mill) contact the workpiece. For example, for a cutting tool with 6 flutes rotating at 1600 RPM, the cutting frequency (fcutting) is (1600) x (1 / 60) x (6), or 160 Hz.

[0068] Nyquist zones are a set of frequency regions defined by the sampling frequency (fs). Artificial peaks in the frequency response spectrum can appear within the Nyquist zones. The first Nyquist zone encompasses the 160Hz fcutting itself. The second Nyquist zone contains artificial peaks at frequencies obtained by "folding" the first Nyquist zone's fcutting to approximately half the sampling frequency (fs / 2). Folding 160Hz around 500Hz results in 840Hz, which is in the second Nyquist zone. The third Nyquist zone contains artificial peaks at frequencies obtained by folding the second Nyquist zone's artificial peaks with the sampling frequency (fs). Folding 840Hz around 1000Hz results in 1160Hz, which is in the third Nyquist zone. Continuing this process, a fourth Nyquist zone artificial peak occurs at a frequency obtained by folding the third Nyquist zone artificial peak by approximately 1.5 times the sampling frequency (3fs / 2): folding 1160 Hz about 1500 Hz gives 1840 Hz, which is contained in the fourth Nyquist zone.

[0069] JPEG2025073111000014.jpg46169

[0070] JPEG2025073111000015.jpg41164

[0071] 7 is a frequency response graph 700 of motor torque command data before and after filtering to remove aliasing effects, according to an embodiment of the present disclosure. Graph 700 plots torque command (as a percentage of maximum value) on vertical axis 710 and frequency on horizontal axis 720. A large spike 730 in the frequency response indicates that chatter is indeed occurring at approximately 1050 Hz.

[0072] Graph 700 includes plots of both the original (before aliasing filtering) and filtered (after aliasing filtering) torque data, as indicated in the legend. The original unfiltered torque data includes large spikes in the response, indicated at 40 and 742, in addition to the chatter frequency spike 730. Response spikes 740 and 742 could be mistaken for chatter in an analysis of the original unfiltered torque data.

[0073] The filtered torque data contains only spikes 730 at the actual chatter frequencies. Spikes 740 and 742, which are aliasing effects that occurred in the original torque data at frequencies of 840 Hz and 1160 Hz, respectively, have been removed using the filtering technique described above. The data in graph 700 of FIG. 7 is from an experiment with a sampling frequency (fs) of 1000 Hz and a cutting frequency (fcutting) of 160 Hz. Thus, the resulting noise frequencies in each Nyquist zone calculated using equation (10) and filtered using equation (11) contain frequencies of 840 Hz and 1160 Hz. The removal of the artificial peaks in the frequency response data shown in FIG. 7 indicates that the aliasing filtering technique further improves machine tool chatter detection.

[0074] Another filtering step involves removing encoder interpolation errors from the machine tool frequency response. A common type of rotating shaft encoder interpolates the rotation of the motor shaft from sine and cosine signals. Encoder interpolation errors arise from the interaction of the encoder line count (the number of sine and cosine waves around the circumference of the shaft) with the motor rotation frequency. In particular, encoder error noise occurs at frequencies that are multiples of the motor frequency (Hz) multiplied by the number of encoder lines. Encoder interpolation errors in the time series data depend on the motor speed and can appear as artificial spikes in the machine tool frequency response data.

[0075] JPEG2025073111000016.jpg36170

[0076] A filter can then be applied to the frequency response data in the same manner as defined in equation (11) to remove artificial peaks due to the encoder interpolation error. That is, for each noise frequency ωnoise=fnoise (evaluated at a value of k) related to the encoder error, a filtered torque command is calculated as the original torque command multiplied by a small value (e.g. 0.01) to significantly reduce its magnitude. Artificial peaks due to aliasing of the encoder interpolation error may also be present, but can be calculated and filtered as described above.

[0077] When experimental data for chatter-free conditions is collected and the frequency response is plotted in the same manner as shown in Figure 7, the original torque command data displays many small to medium sized spikes at regular frequency intervals. The frequency intervals at which the spikes occur correlate with the encoder error noise frequency intervals in equation (12). When the encoder error filtering frequency is calculated as in equation (12) and applied to the frequency response data, the artificial spikes are removed from the filtered frequency response. This indicates that the filtering step is effective in removing the encoder interpolation error, which allows for more accurate machine tool chatter detection.

[0078] It is worth noting that the first filtering step mentioned above (spectral subtraction of the air cut reference signal) actually removes most of the spindle motor encoder error (encoder error is included in the air cut reference signal since the air cut spindle speed is the same as the cutting spindle speed). Thus, for the spindle motor torque data, the encoder error filtering step essentially cleans up small spikes in the frequency response spectrum that were not completely removed by the spectral subtraction of the air cut reference signal. The following description explains why the encoder error filtering step is so important when using servo motor frequency response data (and not spindle motor data) for chatter detection.

[0079] All of the above discussion has been concerned with filtering and analyzing torque data of a spindle motor, i.e., the motor driving a spindle that carries a cutting bit (such as an end mill). In summary, four frequency domain filtering steps have been described above: spectral subtraction of the air cut reference signal, filtering to remove frequency response peaks at the spindle harmonic frequencies, filtering to remove aliasing effects, and filtering to remove encoder interpolation error effects. Returning to the flowchart of FIG. 3, all of these filtering steps are performed in block 314. The filtered frequency domain torque signal is then analyzed in block 316 to detect chatter conditions.

[0080] In addition to the spindle motor data, data from the servo motors used to position the machine tool can also be analyzed to effectively detect chatter. As mentioned above, many machine tools of the type shown in Figure 2 are configured for independent positioning in three orthogonal directions, typically identified as the X, Y and Z axes. A servo motor is used for positioning in each axis, and each of the three servo motors is controlled by a machine controller 240 to perform a specific pre-programmed machining operation.

[0081] Data from servo motors can be filtered and analyzed to detect chatter in a manner similar to that described above for spindle torque data. Indeed, in some types of machines and applications, data from one or more servo motors may be a more reliable indicator of chatter than the spindle motor data. For example, in a machine in which the spindle is belt-driven by the spindle motor, belt-related compliance and damping that exists between the spindle motor and the cutting bit (such as an end mill) may distort the time-domain spindle motor torque data, making the filtered frequency-domain spindle data less useful as an indicator of chatter. In such cases, frequency response data from one or more servo motors may be the best indicator of machine tool chatter, and it is therefore advantageous to analyze data from all motors in the machine tool.

[0082] In the above description of data collection and filtering for spindle motors, the data collected from the spindle motors has always been described as a torque signal. This is because the time series torque data of the spindle motor is easily available, such as by monitoring the motor current. For servo motors, there is another option. The frequency response analysis of the servo motor data can be based on either the motor torque data or the pulse coder data. The pulse coder is a device integrated into each servo motor and measures the angular position of the servo motor shaft. The time domain pulse coder angular position data from each servo motor can be numerically differentiated to provide a velocity signal. Alternatively, the pulse coder may provide the angular velocity information directly. In either case, the time domain velocity signal can be converted to the frequency domain and a filter applied to analyze the frequency response characteristics and detect chatter in the manner described above. Considerations when using motor torque data or pulse coder position / velocity data of servo motors are discussed further below.

[0083] The concepts of servo motor data filtering and analysis described in this article are applicable to all three positioning servo motors (X, Y and Z directions). However, some of the filtering and analysis of servo motor data is typically handled somewhat differently than the filtering and analysis of spindle motor data. In particular, when processing servo motor data, some of the four filtering steps mentioned above do not apply.

[0084] First, it is important to note that the positioning servo motors have time-varying behavior - that is, during the course of a machining operation, each of the three positioning servo motors may rotate in both directions at different speeds or stop completely. This differs from the spindle motors, which typically rotate at a substantially constant speed in only one direction during both the cutting and air-cutting portions of a programmed machining operation.

[0085] Since the operation of the servo motor changes over time, spectral subtraction of the air-cut reference signal is not possible, at least in a practical way. The reason is that the air-cut data needs to be collected at a specific motor speed. The only way to accurately perform the spectral subtraction of the air-cut reference signal is to perform the entire machining operation in air-cut mode, so that the exact combination of servo motor speed and direction is captured in the air-cut reference signal. Considering that a regular update of the air-cut reference signal is desirable to accurately reflect the current machine state, spectral subtraction of the air-cut reference signal of the servo motor becomes impractical. As a result, the spectral subtraction of the air-cut reference signal (the first of the four filtering steps) is not performed on the servo motor data.

[0086] Regarding the second filtering step to remove spindle harmonics, this filtering step is applied to the servo motor data (torque or speed) in the same way as it is applied to the spindle motor data, in order to filter the forced vibration content that may be transmitted from the spindle rotation to the servo motor, and to better highlight the chatter component, especially in the case of light chatter.

[0087] The third filtering step (removal of aliasing effects) can be performed on the servo motor data depending on the type (source) of data used for the servo motor. If torque data is used for the servo motor, the filtering step of removing aliasing effects is performed in the same manner as applied to the torque data of the spindle. However, if pulse coder position / velocity data is used for the servo motor signal, the aliasing effects mentioned above are not present in the frequency response data. The reason is that the aliasing effects are caused by the interaction of the slow feedback frequency of the controller with the cutting frequency. If servo motor torque is not used for the servo motor signal, the aliasing effects do not occur. Therefore, if pulse coder position / velocity data is used directly for the servo motor signal, the filtering step of removing aliasing effects is not performed.

[0088] A fourth filtering step (removal of encoder interpolation errors) is performed, which is particularly important for servo motor data. The reason is that (as mentioned above) no spectral subtraction of the air-cut reference signal is performed for the servo motor data. Thus, encoder interpolation errors are present in the servo motor data, whose removal is important for accurate and reliable chatter detection in the frequency response data. Furthermore, since servo motors operate at variable speeds and the encoder interpolation error frequency is a function of the motor speed, it is mandatory to calculate the encoder error noise frequency (calculated in equation (12)) and apply it to the frequency domain data for the specific operating speed of each servo motor at the specific conditions of the machine tool and machining program. This calculation can be performed in real time, as new short time segments of data are transformed into the frequency domain and analyzed for chatter detection.

[0089] 8 is a flow chart 800 of a method for sensorless chatter detection on a machine tool using a multi-stage filtering process in the frequency domain and including filtering and analyzing both spindle and servo motor data according to an embodiment of the disclosure. The method of FIG. 8 is programmable to run on the machine tool controller 240 and uses input data readily available in any controller architecture, such as spindle motor torque data derived from spindle motor currents and either motor torque or pulse coder position / velocity data for servo motors.

[0090] The left side of the flowchart 800 is substantially the same as the corresponding portion of the flowchart 300 of FIG. 3 described above. From a start block 802, the process waits at decision diamond 804 until it detects that the machine tool spindle has started. If the spindle is rotating, then it is determined at decision diamond 806 whether the entire cutting or machining operation is finished, and if so, the process ends at end point 808. If the machining operation program is still running, then it is determined at decision diamond 810 whether the cutting bit (such as an end mill) is currently cutting material. This determination is made by comparing the time domain spindle motor torque signal to a pre-stored air-cut reference signal, as described above. If material is not being cut, then at block 812 the air-cut reference torque signal is updated (such as by averaging currently collected air-cut spindle torque data with previously collected data) and the process returns to decision diamond 806.

[0091] As described above with respect to the corresponding portion of Figure 3, the steps included in dashed box 830 are performed in the time domain, and the steps included in dashed box 840 are performed in the frequency domain. The method of Figure 3 is used for applications where only spindle motor data is evaluated. In the method of Figure 8, both spindle motor and servo motor data are evaluated, and these steps are included in box 840.

[0092] At block 816, the time series spindle data is transformed into the frequency domain and then filtered as detailed above, including four frequency domain filtering steps configured to enhance the ability to detect chatter in the machine tool frequency response data. At block 816, the spindle motor frequency response data (after filtering) is analyzed to determine whether chatter is occurring.

[0093] In block 816, after converting the time series servo motor data to the frequency domain, the servo data is filtered as detailed above, including applying two or three (depending on whether servo motor torque or pulse coder data is used as the input signal) frequency domain filtering steps configured to enhance the ability to detect chatter in the machine tool frequency response data. In block 820, the servo motor frequency response data (after filtering) is analyzed to determine whether chatter is occurring.

[0094] JPEG2025073111000017.jpg56164

[0095] The meaning of "much greater than zero" in the analysis at blocks 816 and 820 can be defined in any manner deemed appropriate for a particular application (e.g., "greater than 0.1" or "greater than 0.25", etc.). Preferably, the calculated chatter index values ​​are checked against predefined thresholds for chatter detection (one for each chatter index) that are defined based on experience from known chatter and non-chatter operating data. Z-scores (median and variance analysis) may also be used for both spindle motor and servo motor index parameters to determine whether a particular feature of the frequency response data is an outlier indicative of chatter.

[0096] Returning to the flowchart of FIG. 8, after the filtered frequency response spectrum has been analyzed in blocks 816 (for the spindle motor data) and 820 (for the data from all three servo motors), it is determined in decision diamond 822 whether chatter has been detected by the analysis of the data from any of the motors. If chatter is not detected, processing returns to decision diamond 806, where data collection and analysis continues in real time as long as the machining operation is still running. If chatter is detected by the analysis of any of the motor signals from decision diamond 822, then in block 824 the machine controller performs steps to address and eliminate the chatter condition. As discussed above, the primary technique used to eliminate chatter is to change the spindle speed to move away from the conditions causing the chatter (i.e., the resonance or dynamic response that produces the phase shift shown in FIG. 1). The technique for identifying spindle speeds that have the potential to eliminate chatter is described above and defined in the calculation of equation (9).

[0097] In summary, the discussion so far has described chatter detection techniques using frequency domain filtering, analysis of spindle motor torque data (with four different filtering operations), and analysis of servo motor data (either torque data with three filtering operations, or pulse coder data with two filtering operations). To effectively apply these methods to chatter detection on a particular machine tool, it is advantageous to provide the machine controller with a user interface system that allows convenient visualization of the machine's frequency response characteristics and chattering conditions in real time, and allows setting the machine's chatter detection parameters.

[0098] 9 is a mock-up of a graphical user interface 900 for visualizing and providing control for machine tool chatter detection, according to an embodiment of the present disclosure. The graphical user interface 900 is displayed on a display device (such as a monitor or tablet device) that is in communication with a machine controller. The display device is understood to also include user input capabilities, such as a touch screen capability or a mouse, and optionally a keyboard or keypad, for selecting buttons and menu options on the graphical user interface 900.

[0099] On the left side of the graphical user interface 900 is a frequency response graph window 910. The frequency response graph window 910 displays a frequency response graph of a particular motor of the machine tool. The particular motor is selected from a drop list 912, which in a preferred embodiment includes selectable options for the spindle motor, the X-servo motor, the Y-servo motor, and the Z-servo motor. The frequency response graph window 910 displays the frequency response in real time based on a rolling buffer of the time series data of the selected motor, where a short time segment of the time series data is transformed into the frequency domain and displayed in the frequency response graph window 910. The frequency response graph shows the response characteristics (e.g., normalized torque) of the selected motor across the frequency spectrum after all the filtering operations described above.

[0100] The Tool Geometry button 920 allows the user to define the geometry parameters of the cutting bit or cutting tool (such as an end mill). In a preferred embodiment, when the user clicks on the Tool Geometry button 920, a pop-up window appears that allows the user to define the tool diameter (usually in millimeters) and the number of flutes (e.g., four as shown in FIG. 2). The number of flutes on the tool is used to calculate the spindle speed that has the potential to avoid vibration, as defined in equation (9) and discussed above. The number of flutes is also used to calculate the cutting frequency, which is used in the calculation of aliasing effects and filtering.

[0101] The motor settings button 930 allows the user to define parameters for detecting chatter in the operation of the machine tool. In a preferred embodiment, when the user clicks on the motor settings button 930, a pop-up window containing a small table is displayed. The first column of the table is a list of the motors contained in the machine tool. In one common example, the motors include the spindle, the X-servo, the Y-servo, and the Z-servo. The second column of the table is a priority number assigned to each motor. As mentioned above, a particular machine tool may exhibit different sensitivities to chatter for different motors. For example, on one machine, the spindle motor may be the motor that most clearly exhibits chatter conditions in its frequency response spectrum, while on another machine, the Z-servo most clearly exhibits chatter. For this reason, the motor settings button 930 allows the user to define a priority for each motor. For example, the spindle may be defined as #1 priority (highest priority for chatter detection), the Z-servo as #2 priority, the X-servo as #3 priority, and the Y-servo as #4 priority. The table also includes a user definable threshold for each motor, which can be defined as the Z-score threshold (e.g., 3.5σ) above which vibration is deemed to be occurring. Z-scores are described above.

[0102] The process stability window 940 indicates at a glance whether the machine tool is currently in a stable operating condition or if the machine tool is currently experiencing chatter (as shown in FIG. 9). If the process stability window 940 indicates chatter, the chatter frequency window 950 displays the frequency (Hz) at which the chatter is occurring. The chatter frequency is determined by analysis of the filtered frequency response spectrum, as detailed throughout this disclosure.

[0103] If process stability window 940 indicates chatter, window 960 displays one or more spindle speeds (rpm) that have the potential to return the machine tool to a stable operating condition. The potential stabilizing spindle speeds displayed in window 960 are calculated using equation (9) above. Using a mouse or touch screen functionality, the user selects one of the spindle speeds listed in window 960 and clicks on accept button 970 to control the machine tool to change the spindle speed to the selected value. A program stop button 980 is provided to allow the user to stop the machine tool from executing a machining operation program.

[0104] In some embodiments, options are included for the user to select the type of servo motor input signal, including servo motor torque data and pulse coder position / velocity data. These input data options, as well as considerations regarding filtering and analyzing the frequency domain response, are discussed above. The servo motor input data type selections may be conveniently included in a table accessible, for example, by the motor setup button 930. Other input data, such as the number of lines for the motor shaft encoder, may be defined by the user by clicking the motor setup button 930 or at an appropriate location in the graphical user interface 900.

[0105] The graphical user interface 900 provides convenient chatter detection visualization and control capabilities for the machine tool, while the data filtering and analysis techniques described above provide sensorless chatter detection with greater accuracy and sensitivity than existing chatter detection methods.

[0106] The techniques described above (including a detection method using spindle motor and optionally servo motor data, including multiple frequency domain filtering steps, and a graphical user interface for real-time monitoring and control to avoid chatter) provide powerful capabilities for detecting and eliminating chatter in machining operations. These capabilities can be further used to minimize forced vibrations even in finish machining operations with small cutting depths. By avoiding frequencies at which a particular machine tool tends to exhibit excessive vibrations, the surface finish quality of the workpiece is correspondingly improved.

[0107] Typical machining operations performed on a machine tool include a roughing operation followed by a finishing operation. In roughing operations, where surface finish quality is not critical, the depth of cut can be greater. In roughing operations, the workpiece is machined from its raw shape to near-finish shape. In finishing operations, where surface finish quality is critical, one or more passes are performed with a smaller depth of cut.

[0108] In roughing operations, the potential for chatter is much higher than in finishing processes due to the higher forces on the tool teeth. However, information gained from roughing operations, specifically the frequency response of the machine tool, and especially the critical chatter frequencies, can be used to improve the surface finish quality during finishing operations by avoiding critical chatter frequencies that are close to the dominant natural frequencies of the machine tool.

[0109] 10 is a graph 1000 of a measured frequency response function of a machine tool, according to an embodiment of the present disclosure. Graph 1000 plots the normalized ratio of output amplitude to input amplitude on the vertical axis 1010 and frequency against the horizontal axis 1020. Graph 1000 includes a frequency response plot of one of the machine tool's primary directional axes (i.e., the Y-axis) as measured at a cutting bit (such as an end mill). A large spike 1030 in the frequency response function plot indicates the natural frequency of vibration at approximately 900 Hz.

[0110] The frequency response function plotted in graph 1000 provides important information about the measured machine tool. Unfortunately, obtaining the natural frequencies of the vibration information shown in graph 1000 requires a tedious, expensive and time-consuming experimental setup, which includes attaching one or more motion sensors, such as accelerometers, to the machine tool and running tests using specialized impact equipment, data acquisition systems and computers. Fortunately, the natural frequencies of the machine tool shown in graph 1000 can also be estimated using the sensorless chatter detection techniques described above, without having to run frequency response function tests.

[0111] The methods of FIG. 3 (spindle data only) and FIG. 8 (both spindle and servo motor data) show how to detect chatter in a machine tool by filtering and analyzing frequency domain torque or pulse coder data from the motor. FIGS. 6A, 7 and 9 all show clear spikes in the frequency response graphs indicating chatter at specific frequencies. The chatter frequencies detected in these filtered frequency response results can be used to determine the natural frequencies of vibration to avoid for a particular machine tool in lieu of frequency response function testing. When the disclosed sensorless chatter detection technique was used in a roughing operation on the same machine tool as shown in the results of FIG. 10, the disclosed sensorless chatter detection technique identified chatter at a frequency of about 900 Hz, the same result as the frequency response function testing.

[0112] As mentioned above, finishing operations do not generate significant machine vibration due to the small depth of cut. However, chatter detection techniques are still useful in finishing operations, especially since excessive vibration can damage the workpiece. It is therefore desirable to know the critical natural frequencies of vibration for a particular machine tool and to ensure that the cutting frequency during finishing operations does not approach the machine's natural frequencies.

[0113] Manufacturers of cutting bits (e.g. end mills) know that damaged cutting bits will reduce the surface finish quality of the workpiece. Therefore, they tend to recommend spindle speed and feed rate combinations that will keep the cutting tool healthy. However, these recommendations do not take into account the actual natural frequencies of a particular machine tool. Therefore, the recommended cutting speeds may not provide optimal surface quality or productivity, and further fine-tuning will be required for most operations.

[0114] Table I contains the setup parameters for five machining operation tests that were performed to determine the correlation between cutting frequency and vibration amplitude for finishing operations, using the same machine tool as shown in the results in Figure 10 . JPEG2025073111000018.jpg69156

[0115] All tests shown in Table I were performed with the same feed per groove (F=0.082 mm / groove / revolution) and with the same depth and width of cut; in all tests the depth of cut was 15.0 mm and the width of cut was 1.0 mm. The spindle speed Ω varied from the manufacturer's recommended speed of 9231 rpm to a speed of 1350 rpm in five tests. With respect to the feed rate F, it can be inferred that for a constant feed rate F expressed in mm / groove / revolution, the higher the spindle speed Ω, the higher the linear velocity of the tool expressed in mm / sec. In other words, the higher the spindle speed Ω, the faster the machining operation can be performed while maintaining a constant feed rate F.

[0116] The right hand column of Table I gives the cutting frequency in Hertz, which is the number of groove impacts on the workpiece per second (discussed above in connection with the Nyquist zone calculation) plus harmonics of the cutting frequency. For the machine on which the tests of Table I were performed, the disclosed sensorless chatter detection technique identified chatter at a frequency of about 900 Hz. This is the same result as the test of the frequency response function shown in FIG. 10. Because the machine tool is a structure with very little inherent damping, the natural frequency spikes in the frequency response function are quite steep, and the frequency band to be avoided can be defined quite narrowly. One example for a machine with a natural frequency of 900 Hz shows that cutting frequencies in the range of 800 Hz to 1000 Hz should be avoided.

[0117] Returning to Table I, the cutting tool manufacturer's recommended spindle speed (9231 rpm) and feed rate used in Test #1 resulted in a cutting frequency of 615 Hz, well below the range to be avoided (800-1000 Hz). For the remaining tests, the spindle speed was increased in steps to 13500 rpm, which corresponds to a cutting frequency of 900 Hz.

[0118] 11 is a set of graphs plotting acceleration versus time for three tests included in Table I, in accordance with an embodiment of the present disclosure. Graph 1110 plots acceleration versus time for Test #1 of Table I, graph 1130 plots acceleration versus time for Test #3 of Table I, and graph 1150 plots acceleration versus time for Test #5 of Table I. All three graphs 1110, 1130, and 1150 plot acceleration on a common vertical scale and time on a common horizontal scale.

[0119] Graph 1110 shows the results of Test #1 with Ω=9231 rpm and a cutting frequency of 615 Hz, which is much lower than the natural frequency of the machine tool (900 Hz). Graph 1130 shows the results of Test #3 with Ω=11000 rpm and a cutting frequency of 733 Hz, which is still lower than the natural frequency of the machine tool (900 Hz) and is lower than the frequency band to be avoided (800-1000 Hz). However, graph 1150 shows the results of Test #5 with Ω=13500 rpm and a cutting frequency of 900 Hz, which is the same as the natural frequency of the machine tool (900 Hz). It can be seen that the vibration amplitude of graph 1150 (Test #5) is significantly higher than the other two graphs 1110 and 1130. The vibration amplitude (shown in the graph of FIG. 11) correlates with the surface finish quality, with the higher the vibration amplitude, the lower the surface finish quality. Therefore, in test #5, no chatter vibration occurs, but the surface finish quality of the workpiece deteriorates because the cutting frequency approaches the natural frequency of the machine tool.

[0120] It can also be seen in FIG. 11 that the elapsed time for each machining operation is different. Test #1 is performed in about 3.0 seconds, Test #3 in about 2.6 seconds, and Test #5 in about 2.2 seconds. The reason for this is that, as mentioned above, the higher the spindle speed, the faster the linear movement speed of the cutting bit. Since machine throughput is always a concern for part manufacturers, it is desirable to perform machining operations at the highest possible spindle speed and feed rate (to maximize throughput) while keeping the cutting frequency outside the machine's natural frequency avoidance band. Therefore, it is preferable to perform machining operations under the conditions of Test #3, where the vibration amplitude is not higher than Test #1 and the machining operation time is significantly shorter.

[0121] The above discussion emphasizes the importance of avoiding the natural frequencies of the machine tool even when chatter is unlikely to occur in light machining operations such as finishing. Thus, after identifying the chatter frequency using the sensorless chatter detection techniques of the present disclosure, subsequent machining operations can be performed using machine speeds that avoid a frequency band defined as the chatter frequency plus or minus a certain amount (e.g., + / - 100 Hz). This allows finishing operations to be performed at the highest spindle speeds and feed rates (thus maximizing throughput) while staying away from the machine's natural frequencies (thus maximizing surface finish quality).

[0122] The graphical user interface 900 of FIG. 9 can be easily extended to include functionality that guides the user to avoid cutting frequencies within the natural frequency band of the machine tool. For example, a machine setting button can be added that allows the user to define spindle speeds and feed rates. Then, after performing a machining operation where chatter is detected (such as chatter frequency 975 Hz in FIG. 9), the graphical user interface 900 can recommend the highest possible spindle speed while keeping the cutting frequency outside the band (e.g., + / - 100 Hz) around the known chatter frequency of the machine tool. Those skilled in the art can imagine other implementations, including background functionality that pops up a warning if a spindle speed and feed rate are entered such that the cutting frequency falls within the natural frequency band of the machine.

[0123] In the discussion above, various computers and controllers have been described and referenced. It should be understood that the software applications and modules of these computers and controllers are executed on one or more electronic computing devices having a processor and memory modules. In particular, this includes the machine controller 240 of FIG. 2 described above. In particular, the processor of the controller 240 is configured to perform the sensorless chatter detection of the machine tool described above, including the method steps of FIGS. 3 and 8, and calculations using the equations and other techniques described above, as well as control of the machine tool itself and user interaction via the graphical user interface 900.

[0124] While several exemplary aspects and embodiments of the sensorless chatter detection method for a machine tool have been described above, those skilled in the art will recognize modifications, permutations, additions, and subcombinations thereof, and it is therefore intended that the appended claims and any claims hereafter introduced be interpreted as including all such modifications, permutations, additions, and subcombinations within their true spirit and scope.

Claims

1. 1. A method for detecting chatter in a machine tool, comprising the steps of: determining by a control device of the machine tool whether the machine tool is cutting material from a workpiece based on spindle torque command data; transforming the air cut reference data set and the spindle torque command data into a frequency domain to generate air cut frequency data and torque command frequency data, respectively, when the machine tool is cutting material from the workpiece; filtering the torque command frequency data to generate filtered torque command data, the filtering including: spectrally subtracting multiples of the air cut frequency data from the torque command frequency data; applying a filter to remove spindle harmonics; applying a filter to remove aliasing effects; and applying a filter to remove encoder interpolation error effects; evaluating a plurality of chatter indices at frequencies across a frequency spectrum, where a first indice is a magnitude of the filtered torque command data and a second indice is a ratio of a magnitude of the filtered torque command data to the air cut frequency data; changing an operating condition of the machine tool by the control device when a comparison of the first index and the second index with a predetermined criterion indicates that chatter is occurring based on either of the indexes; and The method includes:

2. The method of claim 1 , wherein the spindle torque command data is determined from current data of a spindle motor of a machine tool.

3. The method of claim 1 , wherein determining whether the machine tool is cutting material from the workpiece comprises comparing the spindle torque command data to the air-cut reference data set.

4. 2. The method of claim 1, wherein when the machine tool is not cutting material from the workpiece, the air-cut reference data set is updated by averaging a current time segment of the spindle torque command data with data already contained in the air-cut reference data set.

5. The method of claim 1 , wherein transforming the air-cut reference data set and the spindle torque command data into the frequency domain comprises using a Fast Fourier Transform calculation.

6. 2. The method of claim 1 , wherein spectrally subtracting a multiple of the air cut frequency data from the torque command frequency data comprises: subtracting a multiple of the air cut frequency data from the torque command frequency data at frequencies across a frequency spectrum; and applying a mapping function after spectrally subtracting the multiple of the air cut frequency data to eliminate negative values, the multiple being a value between 1 and 2.

7. 2. The method of claim 1, wherein applying a filter to remove spindle harmonics comprises multiplying the torque command frequency data by a constant at a frequency equal to an integer multiple of the spindle speed, the constant being a value less than 0.

1.

8. 2. The method of claim 1, wherein applying a filter to remove aliasing effects includes multiplying the torque command frequency data by a constant at a number of artificial peaks within a Nyquist zone, the frequency of the artificial peaks being calculated as the absolute value of the sum of a cutting frequency and positive and negative integer multiples of a data sampling frequency, the constant being a value less than 0.

1.

9. 2. The method of claim 1, wherein applying a filter to remove encoder interpolation error includes multiplying the torque command frequency data by a constant at a plurality of encoder error frequencies, the encoder error frequencies being calculated as an integer multiple of a motor frequency in Hertz multiplied by a number of lines on a motor shaft encoder, the constant being a value less than 0.

1.

10. 2. The method of claim 1, wherein evaluating a first indicator includes comparing a magnitude of the filtered torque command data at each frequency to a threshold value determined computationally on the air cut frequency data or determined from statistical analysis of previously collected data, and wherein a threshold value exceeded by the filtered torque command data at a particular frequency is indicative of chatter at the particular frequency.

11. 2. The method of claim 1, wherein evaluating a second indicator includes comparing the magnitude ratio at each frequency to a threshold value, the threshold value being defined to be a particular value greater than zero or determined from statistical analysis of previously collected data, and wherein the magnitude ratio exceeding a threshold value at a particular frequency is indicative of chatter at the particular frequency.

12. 2. The method of claim 1, further comprising determining a chatter frequency when a comparison of the first indicator and the second indicator with a predetermined standard indicates that chatter is occurring based on either indicator, and changing an operating condition of the machine tool comprises changing a spindle speed to a new speed determined by a calculation based on the chatter frequency and a number of flutes on a cutting bit of the machine tool.

13. 1. A method for detecting chatter in a machine tool, comprising the steps of: transforming the air cut reference data set and the spindle torque command data into the frequency domain to generate air cut frequency data and torque command frequency data, respectively; filtering the torque command frequency data to generate filtered torque command data, the filtering including: spectrally subtracting multiples of the air cut frequency data from the torque command frequency data; applying a filter to remove spindle harmonics; applying a filter to remove aliasing effects; and applying a filter to remove encoder interpolation error effects; evaluating a first chatter index, the magnitude of the filtered torque command data, and a second chatter index, the ratio of the magnitude of the filtered torque command data to the air cut frequency data; changing an operating condition of the machine tool when the first chatter indicator or the second chatter indicator indicates that chatter is occurring; The method includes:

14. 1. A system for detecting chatter in a machine tool without using a sensor, comprising: a machine tool configured to perform an operation on a workpiece; a controller capable of communicating with the machine tool and configured to detect chatter by performing a plurality of steps; The steps include: determining whether the machine tool is cutting material from the workpiece based on spindle torque command data; storing time segments of the spindle torque command data in an air-cut reference data set when the machine tool is not cutting material from the workpiece; transforming the air cut reference data set and the spindle torque command data into a frequency domain to generate air cut frequency data and torque command frequency data, respectively, when the machine tool is cutting material from the workpiece; filtering the torque command frequency data to generate filtered torque command data, the filtering including: spectrally subtracting multiples of the air cut frequency data from the torque command frequency data; applying a filter to remove spindle harmonics; applying a filter to remove aliasing effects; and applying a filter to remove encoder interpolation error effects; evaluating a plurality of chatter indices at frequencies across a frequency spectrum, where a first indice is a magnitude of the filtered torque command data and a second indice is a ratio of a magnitude of the filtered torque command data to the air cut frequency data; changing an operating condition of the machine tool when a comparison of the first index and the second index with a predetermined criterion indicates that chatter is occurring; and Including, the system.

15. Spectrally subtracting multiples of the air cut frequency data from the torque command frequency data includes subtracting multiples of the air cut frequency data from the torque command frequency data at frequencies across a frequency spectrum; The system of claim 14 , wherein a mapping function is applied to remove negative values ​​from the filtered torque command data after spectrally subtracting the multiples of the air cut frequency data.

16. 15. The system of claim 14, wherein applying a filter to remove spindle harmonics includes multiplying the torque command frequency data by a constant at a frequency equal to an integer multiple of the spindle speed, the constant being a value less than 0.

1.

17. 15. The system of claim 14, wherein applying a filter to remove aliasing effects includes multiplying the torque command frequency data by a constant at a number of artificial peaks within a Nyquist zone, the frequency of the artificial peaks being calculated as the absolute value of the sum of a cutting frequency and positive and negative integer multiples of a data sampling frequency, the constant being a value less than 0.

1.

18. 15. The system of claim 14, wherein applying a filter to remove encoder interpolation error includes multiplying the torque command frequency data by a constant at a plurality of encoder error frequencies, the encoder error frequencies being calculated as an integer multiple of the motor frequency in Hertz multiplied by a number of lines on a motor shaft encoder, the constant being a value less than 0.

1.

19. evaluating a first indicator includes comparing a magnitude of the filtered torque command data at each frequency to a first threshold, the first threshold being determined computationally on the air cut frequency data or from a statistical analysis of previously collected data, and the filtered torque command data exceeding the first threshold at a particular frequency being indicative of chatter at the particular frequency; 15. The system of claim 14, wherein evaluating a second indicator includes comparing the magnitude ratio at each frequency to a second threshold, the second threshold defined to be a particular value greater than zero or determined from statistical analysis of previously collected data, and wherein a value of the filtered torque command data exceeding the second threshold at a particular frequency is indicative of chatter at the particular frequency.

20. The control device is further configured to determine a chatter frequency when a comparison of the first indicator and the second indicator with a predetermined criterion indicates that chatter is occurring, and 15. The system of claim 14, wherein altering an operating condition of the machine tool includes altering a spindle speed to a new speed determined by a calculation based on the chatter frequency and a number of flutes on a cutting bit of the machine tool.