Industry 4.1. Группа авторов
Чтение книги онлайн.
Читать онлайн книгу Industry 4.1 - Группа авторов страница 30
In short, process data are the major contributors to metrology data. They are used as the predictor variables; while the metrology data of products can be used as a label variable or category for typical supervised learning or reinforcement learning methods. In other words, given that the data acquisition quality is reliable, the causation between process data and metrology data would be a strong correlation that efficiently indicates if the manufacturing process performs well or not.
Thus, the root cause analysis can be conducted to narrow down to the specific process steps that affect product quality. Manufactures, therefore, have a chance to make their production line free from deficiencies or defects via continuous improvement and corrective actions.
2.3 Data Preprocessing
The goal of data preprocessing is to eliminate the noise imbedded in the signal and extract key‐feature‐related information. In general, data preprocessing consists of three steps: segmentation, cleaning, and feature extraction, they are introduced as follows.
2.3.1 Segmentation
This step accurately segments essential parts of the raw process data from the original manufacturing process, such as from a numerical control (NC) file. Because a typical machining process could take several minutes or even hours, the entire collected process data may exceed 100 k bytes per second. The premise of building a specific decision‐making model is to find the cause‐and‐effect relationship between the machining/process data and the corresponding precision/metrology data. As such, only the final machining process data are required for purposes like precision prediction or condition monitoring. In general, the final machining process takes only a few seconds.
Hence, a segmentation method is required for acquiring the essential segments from the NC file. These essential segments are directly related to the final precision items. Therefore, how to automatically specify the essential ranges from the original NC file as the signal segments and correlate the segments with precision items is the first step.
To acquire the desired sensor data, updated machining status and data from the controller of a machine tool are required. Conventionally, a polling method is used to retrieve the updated machining status and data from the controller through a TCP/IP based communication library provided by the vendor of the controller. However, this polling method has three issues as shown below.
1 The minimal time interval between two consecutive demands for querying machining status is only 100 μs.
2 The response time for a demand may vary from 50 to 300 μs depending on the loading of the controller.
3 A demand could be ignored by the controller due to flow exceptions or message errors.
Due to these three problems, the machining statuses retrieved by using the polling method may have random time delay, which will result in synchronization errors during machining. These synchronization errors may degrade the accuracy of predicting machining precision.
To avoid synchronization errors, a segmentation method by applying the pre‐defined miscellaneous function codes, denoted as M codes, is proposed in this chapter. Originally, the M codes are used to control the miscellaneous devices of machine tools; while, in this work, the M codes are applied to specify essential blocks of an NC program. When executing the pre‐defined M codes, the programmable logic controller (PLC) in the machine tool’s controller can turn on or off the specified devices. For instance, M08 and M09 are used to turn on and off a specific coolant valve, respectively.
An illustrative example for applying M codes to segment the “X44Y50” block is shown in Table 2.2. The “X44Y50” block is displayed in Line l. To segment this block, the M codes, M_i and M_j, are inserted in lines l−1 and l+1, respectively. When M_i is executed by the controller, the controller will turn on Relays 2 and 4. Therefore, the combination of Relays 1–4 becomes the relay code: “0101.” These four digits will then be sent through the digital input/output (DIO) ports into the external data acquisition system to acquire the sensor data via the ADC. Then, the “X44Y50” block is executed under the condition “0101.” As a result, all the machining process data of block “X44Y50” can be collected. After finishing the “X44Y50” block, M_j is executed such that the relay code becomes “0000,” which will notify the external data collection system to stop collecting the sensor data.
Table 2.2 Illustrative example of applying M codes to segment the “X44Y50” block in an NC code for machine tool.
Line | Block | Relay 1 | Relay 2 | Relay 3 | Relay 4 |
---|---|---|---|---|---|
… | 0 | 0 | 0 | 0 | |
l−1 | M_i | 0 | 1 | 0 | 1 |
l | X44Y50 | 0 | 1 | 0 | 1 |
l+1 | M_j | 0 | 0 | 0 | 0 |
… | 0 | 0 | 0 | 0 |
Source: Reprinted with permission from Ref. [8]; © 2015 JCIE.
Figure 2.13 demonstrates an example of an external data acquisition system triggered by four electronic relays (i.e. DIO) to acquire manufacturing parameters from the controller and sensing signals from one accelerometer and three current sensors.
Figure 2.13 An external data acquisition system triggered by electronic relays.
Source: Reprinted with permission from Ref. [8]; © 2015 JCIE.
Because the operation status can be updated in 0.5 μs with a sampling rate of 2 kHz and the time delay between the controller and the external data collection system is fixed to be less than 100 μs, synchronization errors can be effectively reduced. Thus, the segmented