Control device and actuator system

The control device addresses sensor-related challenges in motor systems by using intermediate calculation data and a machine learning unit to enhance anomaly detection accuracy and reliability.

JP2026123467APending Publication Date: 2026-07-30ROHM CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
ROHM CO LTD
Filing Date
2025-01-17
Publication Date
2026-07-30

AI Technical Summary

Technical Problem

Existing motor control systems face challenges with vibration sensors, including inaccurate data due to improper installation, environmental conditions, and space constraints, leading to unreliable anomaly detection.

Method used

A control device that utilizes a control block to generate control output signals based on feedback signals, incorporating an anomaly detection block that analyzes intermediate calculation data using a machine learning unit and a three-layer neural network to detect anomalies without additional sensors.

Benefits of technology

Enhances anomaly detection accuracy by eliminating the need for vibration sensors, improving system maintainability and robustness while detecting anomalies through intermediate calculation data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026123467000001_ABST
    Figure 2026123467000001_ABST
Patent Text Reader

Abstract

The present invention provides a control device that enables anomaly detection without the need to add vibration sensors or other devices for anomaly detection. [Solution] The control device (100) includes a control block (11) configured to generate control output signals (hu / hl, hv / lv and hw / lw) that control the actuator (20) based on feedback signals (Iu, Iv, Iw) from the actuator (20), and an abnormality detection block (140) configured to detect abnormalities based on intermediate calculation data generated by calculations in the process of generating the control output signals based on the feedback signals in the control block.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This disclosure relates to a control device. [Background technology]

[0002] Conventionally, systems using actuators such as motors are equipped with a control device to control the actuators.

[0003] For example, Patent Document 1 discloses a motor control device in which a machine learning block detects the failure level based on data detected by a vibration sensor attached to the motor. [Prior art documents] [Patent Documents]

[0004] [Patent Document 1] International Publication No. 2021 / 200671

[0005] [overview] However, as mentioned above, there are various challenges in using vibration sensors, and there was room for improvement in the motor control device described above.

[0006] A control device according to one aspect of the present disclosure includes a control block configured to generate a control output signal for controlling an actuator based on a feedback signal from the actuator, The control block is configured to include an anomaly detection block which is configured to detect anomalies based on intermediate calculation data generated by calculations during the process of generating the control output signal based on the feedback signal in the control block. [Brief explanation of the drawing]

[0007] [Figure 1] Figure 1 shows a schematic configuration of a motor system related to a comparative example. [Figure 2] Figure 2 shows the configuration of a motor system according to an embodiment of this disclosure. [Figure 3] Figure 3 is a diagram showing a configuration example of a control block. [Figure 4] Figure 4 is a diagram showing a configuration example of an abnormality detection block. [Figure 5] Figure 5 is a diagram showing the configuration of a three-layer neural network. [Figure 6] Figure 6 is a flowchart showing an example of the learning processing operation in the abnormality detection block. [Figure 7] Figure 7 is a flowchart showing an example of the inference processing operation in the abnormality detection block. [Figure 8] Figure 8 is a diagram schematically showing a comparison of the result example of the FFT processing of the axis error Δθ between the normal state and the abnormal state. [Figure 9] Figure 9 is a diagram schematically showing a comparison of the result example of the FFT processing of the drive current Iu between the normal state and the abnormal state.

[0008] [Detailed Description] Hereinafter, exemplary embodiments of the present disclosure will be described with reference to the drawings. In the following, as an example, a motor will be described as the control target, but an actuator other than the motor may also be used as the control target.

[0009] [Comparative Example] First, before describing the embodiments of the present disclosure, a comparative example for comparison will be described. This will make the problems clearer.

[0010] Figure 1 is a diagram showing a schematic configuration of a motor system 1 according to a comparative example. The motor system 1 shown in Figure 1 includes a motor control device 10, a three-phase motor 20, a shunt resistor 30, a vibration sensor 40, and a temperature sensor 50. Note that the motor system is a type of actuator system.

[0011] The motor control device 10 is a semiconductor integrated circuit device (so-called motor control IC) that controls the rotational drive of a three-phase motor 20 by supplying three-phase drive currents Iu, Iv, and Iw, as well as three-phase drive voltages U, V, and W, to the three-phase motor 20.

[0012] The three-phase motor 20 includes three-phase coils connected to the motor control device 10 and a rotor that rotates according to the drive currents Iu, Iv, and Iw flowing through them (none of which are shown). The rotational speed (angular velocity) of the rotor is slower as the frequency of the drive currents Iu, Iv, and Iw decreases, and faster as the frequency of the drive currents Iu, Iv, and Iw increases.

[0013] The shunt resistor 30 generates current sense signals corresponding to the respective current values ​​of the drive currents Iu, Iv, and Iw. For the sake of explanation, this figure shows an example where the shunt resistor 30 is connected to the three-phase motor 20, but the shunt resistor 30 may also be connected to the driver 12, which will be described later. Furthermore, as a current detection method, a three-shunt method that individually detects the drive currents Iu, Iv, and Iw may be employed, or a one-shunt method that detects the drive currents Iu, Iv, and Iw from the DC bus current of the driver 12 may be employed.

[0014] The vibration sensor 40 is attached, for example, to the three-phase motor 20 (or any part of the motor system 1) and detects vibrations of the three-phase motor 20 (or motor system 1). For example, an acceleration sensor or a gyroscope can be suitably used as the vibration sensor 40.

[0015] The temperature sensor 50 is attached, for example, to the three-phase motor 20 (or any part of the motor system 1) and detects the temperature of the three-phase motor 20 (or the motor system 1).

[0016] Next, with reference to Figure 1, the configuration and operation of the motor control device 10 will be described in detail. The motor control device 10 in this example configuration includes a control block 11, a driver 12, an ADC (analog-to-digital converter) 13, an anomaly detection block 14, and a pre-processing block 15.

[0017] The control block 11 receives digital current values ​​(corresponding to the current values ​​of the drive currents Iu, Iv, and Iw) from the ADC 13 and drives the driver 12 to perform feedback control of the drive currents Iu, Iv, and Iw flowing to the three-phase motor 20 so that the torque and rotational speed of the three-phase motor 20 match the target values.

[0018] Furthermore, the control block 11 includes a function to dynamically switch its control parameters or control method according to the results detected by the anomaly detection block 14, a function to notify the higher-level system of the detection results, and a function to communicate with the higher-level system.

[0019] The driver 12 includes a three-phase half-bridge (= upper and lower three-phase FETs) connected to the control block 11, and generates three-phase drive currents Iu, Iv, and Iw flowing to the three-phase motor 20 based on three-phase gate signals input from the control block 11 (= upper gate signals applied to the gates of each of the upper three-phase FETs, and lower gate signals applied to the gates of each of the lower three-phase FETs). Note that the driver 12 may be a separate IC externally connected to the motor control device 10.

[0020] The ADC13 converts the analog current sense signal input from the shunt resistor 30 into digital current values ​​(corresponding to the current values ​​of the drive currents Iu, Iv, and Iw), and outputs these to the control block 11 and the preprocessing block 15.

[0021] The anomaly detection block 14 analyzes the input data received from the preprocessing block 15 to detect an anomaly in the three-phase motor 20. The input data to the anomaly detection block 14 includes information on the drive currents Iu, Iv, and Iw, and in this example, it also includes information on the vibration and temperature of the three-phase motor 20 (or motor system 1).

[0022] The preprocessing block 15 analyzes the frequency components of the input data (drive current, vibration, and temperature) by performing an FFT (fast Fourier transform) operation on the aforementioned input data before inputting it to the anomaly detection block 14. By performing this preprocessing, features are extracted from the input data.

[0023] <Issues with the comparative example> As described above, in the motor system 1 of the comparative example, abnormalities in the three-phase motor 20 are detected by using a vibration sensor 40 and a temperature sensor 50. However, there are various problems with using a vibration sensor.

[0024] For example, for a vibration sensor to function accurately, it must be installed at an appropriate distance and location from the vibration source. An inappropriate installation location may result in inaccurate data, potentially leading to incorrect diagnoses or predictions. The environment in which the vibration sensor is installed must also be considered. Harsh conditions such as high temperature, high humidity, and dust can affect the sensor's durability or accuracy. Therefore, it is necessary to check the environmental conditions of the installation site in advance and take appropriate protective measures. Furthermore, physical space constraints must also be considered when installing vibration sensors. In particular, securing space for mounting sensors can be difficult if existing equipment or machinery is densely packed. Similar challenges exist with temperature sensors.

[0025] <Embodiments of this Disclosure> In light of the above-mentioned challenges, the embodiment described below will be implemented.

[0026] <<Motor System>> Figure 2 shows the configuration of a motor system 1X according to an embodiment of the present disclosure. The motor system 1X includes a three-phase motor 20, a shunt resistor 30, and a motor control device 100. The three-phase motor 20 and the shunt resistor 30 are the same as those described in the comparative example above, so a detailed description is omitted.

[0027] The motor control device 100 is a semiconductor integrated circuit device having a control block 11, a driver 12, an ADC 13, a pre-processing block 150, and an abnormality detection block 140.

[0028] The driver 12 and ADC 13 are the same as in the comparative example described above. The control block 11, as in the comparative example described above, receives digital current values ​​(corresponding to the current values ​​of the drive currents Iu, Iv, and Iw) from the ADC 13 and drives the driver 12 to perform feedback control of the drive currents Iu, Iv, and Iw flowing to the three-phase motor 20 so that the torque and rotational speed of the three-phase motor 20 match the target values. A specific example of the motor control configuration of the control block 11 will be described later.

[0029] Furthermore, the control block 11 has a function to dynamically switch its control parameters or control method according to the results detected by the abnormality detection block 140, a function to notify the higher-level system of the above detection results, and a function to communicate with the higher-level system.

[0030] The preprocessing block 150 performs preprocessing on the intermediate calculation data, which will be described later, input from the control block 11. The preprocessing includes FFT processing, and details will be described later.

[0031] The anomaly detection block 140 analyzes the processed data after the preprocessing in the preprocessing block 150 and performs anomaly detection. Details of the anomaly detection block 140 will be described later.

[0032] <<Control Block>> Figure 3 shows an example of the configuration of the control block 11. The control block 11 shown in Figure 3 includes an excitation current control system 101, a calculator 102, a speed controller 103, a torque model 104, a three-phase / two-phase conversion unit 105, calculators 106 and 107, current controllers 108 and 109, an axis error detector 110, an advance angle control value setting unit 111, a calculator 112, a phase-synchronous controller 113, a non-interference calculator (motor model) 114, calculators 115 and 116, a two-phase / three-phase conversion unit 117, and a rotor position detection unit 118. It performs feedback control of the drive currents Iu, Iv, and Iw using a three-phase sensorless full vector control method. Vector control is also called FOC [Field Oriented Control].

[0033] The excitation current control system 101 outputs a d-axis current command Id*.

[0034] The arithmetic unit 102 outputs the difference between the angular velocity command ω1* and the angular velocity ω1.

[0035] The speed controller 103 (so-called ASR [automatic speed regulator]) outputs a torque command τ* to make the angular velocity ω1 follow the angular velocity command ω1* by PID [proportional-integral-differential] control according to the output value of the arithmetic unit 102 (= the difference between the angular velocity command ω1* and the angular velocity ω1). The speed controller 103 may also have a function to perform arbitrary error control when the output value of the arithmetic unit 102 exceeds a predetermined error judgment threshold for multiple cycles.

[0036] Torque model 104 converts the torque command τ* into the q-axis current command Iq*.

[0037] The three-phase / two-phase conversion unit 105 converts the three-phase drive currents Iu, Iv, and Iw input from the current detection unit 16 into two-phase d-axis current Id and q-axis current Iq using a predetermined conversion algorithm (such as Clarke conversion and Park conversion). The current detection unit 16 corresponds, for example, to the ADC 13 and shunt resistor 30 in Figure 2.

[0038] The arithmetic unit 106 outputs the difference between the d-axis current command Id* and the d-axis current Id.

[0039] The arithmetic unit 107 outputs the difference between the q-axis current command Iq* and the q-axis current Iq.

[0040] The current controller (so-called ACR [automatic current regulator]) 108 outputs a d-axis voltage command Vd* to make the d-axis current Id follow the d-axis current command Id* by PID control according to the output value of the arithmetic unit 106 (= the difference between the d-axis current command Id* and the d-axis current Id).

[0041] The current controller 109 outputs a q-axis voltage command Vq* to make the q-axis current Iq follow the q-axis current command Iq* by PID control corresponding to the output value of the arithmetic unit 107 (= the difference between the q-axis current command Iq* and the q-axis current Iq).

[0042] The axis error detector 110 detects the axis error Δθ from the d-axis current Id and q-axis current Iq, as well as the corrected d-axis voltage command Vd** and q-axis voltage command Vq**. With a configuration having such an axis error detector 110, an encoder for detecting the rotor position θ is not required, making it possible to reduce the cost and improve the reliability of the motor system 1X.

[0043] The advance angle control value setting unit 111 outputs a predetermined advance angle control setting value (for example, zero).

[0044] The arithmetic unit 112 outputs the difference between a predetermined advance angle control setting value and the axis error Δθ.

[0045] The phase-locked controller 113 (a so-called PLL [phase-locked loop]) outputs an estimated angular velocity ω1 to converge the axis error Δθ to the advance angle control setpoint by PID control corresponding to the output value of the arithmetic unit 112 (= the difference between a predetermined advance angle control setpoint and the axis error Δθ). This allows control delays and other issues to be absorbed. Note that the control used in the speed controller 103, current controllers 108, 109, and phase-locked controller 113 is not limited to the above-described feedback PID control method, but may be other control methods. For example, classical control methods such as feedforward control or 2-degree-of-freedom control may be used, or modern control methods such as adaptive control may be used.

[0046] The non-interference calculator 114 generates the d-axis voltage correction value ΔVd* (= -ω1 × Lq* × Iq*) and the q-axis voltage correction value ΔVq* (= ω1 × Ld* × Id* + kE* × ω1) through non-interference calculation processing based on the d-axis current command Id* and the q-axis current command Iq* and the angular velocity ω1. Ld and Lq represent the d-axis coil inductance and q-axis coil inductance, respectively, and kE represents the back electromotive force constant.

[0047] The arithmetic unit 115 adds the d-axis voltage command Vd* and the d-axis voltage correction value ΔVd* to output the corrected d-axis voltage command Vd**.

[0048] The arithmetic unit 116 adds the q-axis voltage command Vq* and the q-axis voltage correction value ΔVq* to output the corrected q-axis voltage command Vq**.

[0049] The two-phase / three-phase conversion unit 117 converts the two-phase d-axis voltage command Vd** and q-axis voltage command Vq** into three-phase (six in total, upper and lower) gate signals hu / hl, hv / lv, and hw / lw using a predetermined conversion algorithm (such as inverse Park conversion and inverse Clark conversion) and outputs them to the driver 12. In addition, the two-phase / three-phase conversion unit 117 first converts the two-phase d-axis voltage command Vd** and q-axis voltage command Vq** into three-phase voltage commands Vu, Vv, and Vw, and then outputs the gate signals hu / hl, hv / lv, and hw / lw by performing PWM (Pulse Width Modulation) conversion on the voltage commands Vu, Vv, and Vw.

[0050] The rotor position detection unit 118 detects the rotor position θ by integrating the angular velocity ω1 and outputs it to the three-phase / two-phase conversion unit 105 and the two-phase / three-phase conversion unit 117, respectively.

[0051] Furthermore, the control method of the control block 11 is not limited to the full vector control method described above; other vector control methods may be used, or even methods other than vector control methods may be used.

[0052] <<Intermediate Calculation Data>> As explained in Figure 2, in this embodiment, intermediate calculation data output from the control block 11 is input to the preprocessing block 150. The intermediate calculation data is data obtained by calculation in the process of generating gate signals hu / hl, hv / lv, and hw / lw (i.e., control output signals) that the driver 12 outputs from the control block 11, based on the three-phase drive currents Iu, Iv, and Iw (i.e., feedback signals) input from the current detection unit 16 to the control block 11.

[0053] Therefore, in Figure 3, the axis error Δθ, angular velocity ω1, d-axis current Id, and q-axis current Iq correspond to intermediate calculation data. The axis error Δθ, angular velocity ω1, d-axis current Id, and q-axis current Iq are controlled quantities that are controlled with the advance angle control set value, angular velocity command ω1*, d-axis current command Id*, and q-axis current command Iq* as target values, respectively. In addition to the above, the d-axis voltage command Vd** and q-axis voltage command Vq**, as well as voltage commands Vu, Vv, and Vw, also correspond to intermediate calculation data.

[0054] <<Preprocessing block>> The preprocessing block 150 performs preprocessing on the intermediate calculation data input from the control block 11 before allowing the anomaly detection block 140 to input data.

[0055] Preprocessing includes FFT processing. However, other frequency analysis processes, such as wavelet transform, may also be used.

[0056] Furthermore, preprocessing may include normalization. Normalization is a process that, for example, brings the data to a range of approximately 0 to 1 (or -1 to +1). Specifically, normalization is performed using the following formula.

number

[0057] Furthermore, pretreatment may include envelope treatment.

[0058] Furthermore, preprocessing may include window function processing. Examples of window functions that can be used include Hann windows, Hamming windows, Gauss windows, triangular windows, Kaiser windows, Chebyshev windows, and Blackman windows.

[0059] The preprocessing steps listed above may be performed individually, or in combination. For example, envelope processing may be performed after normalization, or FFT processing may be performed after normalization and window function processing.

[0060] In some cases, the intermediate calculation data may be input to the anomaly detection block 140 without performing any preprocessing.

[0061] <<Anomaly Detection Block>> Next, the anomaly detection block 140 will be described in detail. Figure 4 shows an example of the configuration of the anomaly detection block 140. The anomaly detection block 140 shown in Figure 4 includes a machine learning unit 140A, anomaly degree calculation unit 140B, anomaly degree determination unit 140C, detection result output unit 140D, and a non-volatile memory 140E.

[0062] The machine learning unit 140A performs learning and inference on input data (intermediate computation data). As the AI ​​model used in the machine learning unit 140A, for example, a three-layer neural network 17 as shown in Figure 5 is used.

[0063] As shown in Figure 5, the 3-layer neural network 17 is an AI model having an input layer 17A, a hidden layer 17B, and an output layer 17C. Generally, in the 3-layer neural network 17, n-dimensional input data x∈R with batch size k k×n For this, the inference result y∈R in n' dimension k×n’ This is obtained by setting y = G(x·α+b)β, where α∈R n×m is the weight that connects the input layer 17A and the hidden layer 17B, where β∈R m×n’ b∈R m is the bias of hidden layer 17B, and G is the activation function of hidden layer 17B.

[0064] In this embodiment, an algorithm is used that allows a 3-layer neural network 17 to be trained sequentially with an arbitrary batch size k. iThe i-th training data {x i ∈ R ki×n , t i ∈ R ki×n’} is obtained, it is necessary to find β that minimizes the error represented by the following equation (1). i

Equation

[0065] The optimized weight β i is calculated by the following equation (2). P i = P i-1 - P i-1 H i T (I + H i P i-1 H i T ) -1 H i P i-1 β i = β i-1 + P i H i T (t i - H i β​​​​​​​​​​​​​​​​​​​​​​​​​​​Each time the i-th training data is obtained, P i and β i The following is calculated sequentially. Alternatively, instead of using the formula for calculating β0 in equation (3), a value initialized with a random number may be used as β0.

[0068] Furthermore, in this embodiment, learning is performed using an autoencoder. The autoencoder reuses the input data directly as training data and learns to reconstruct the input data as the inference result. In other words, it learns with t=x as described above. Since the autoencoder does not require the creation of separate training data, it is a type of unsupervised learning algorithm.

[0069] According to the AI ​​model in the machine learning unit 140A, learning becomes possible on edge devices using computing devices of the size of a microcontroller. In particular, the computational bottleneck in equation (2) above is (I + H i P i-1 H i T ) -1 However, (I+H i P i-1 H i T Since the matrix size of ) is k × k, when k=1, the inverse matrix operation can be replaced with the reciprocal operation. Therefore, by fixing the batch size to k=1, the calculation becomes easy even with an arithmetic unit of the size of a microcontroller. The input data x is time-series data if no FFT processing is performed in preprocessing block 150, and frequency-domain data if FFT processing is performed.

[0070] In the anomaly calculation unit 140B, the anomaly is calculated using a loss function L(y,t) that represents the error between the inference result y and the training data t. For example, MAE (Mean Absolute Error) or MSE (Mean Squared Error) can be used as the loss function. When the loss function is MAE, the loss function L is expressed as shown in equation (4) below.

number

number

[0071] Since training is performed using an autoencoder, the anomaly score is calculated using the loss function L(y,t)=L(y,x).

[0072] The abnormality determination unit 140C compares the calculated abnormality with a predetermined threshold and determines the abnormality level of the abnormality. If there is only one threshold, the determined abnormality level is whether or not there is an abnormality. Multiple thresholds may also be used. For example, if a first threshold and a second threshold (>first threshold) are used, if the abnormality is lower than the first threshold, the abnormality level is low; if it is equal to or greater than the first threshold and lower than the second threshold, the abnormality level is medium; if it is equal to or greater than the second threshold, the abnormality level is high, and so on.

[0073] The detection result output unit 140D outputs the abnormality level determined by the abnormality determination unit 140C to the control block 11.

[0074] Here, an example of the operation of the anomaly detection block 140 will be explained using the flowcharts shown in Figures 6 and 7.

[0075] Figure 6 is a flowchart illustrating an example of the learning process operation in the anomaly detection block 140. When the process in Figure 6 begins, in step S1, the preprocessing block 150 first acquires intermediate calculation data from the control block 11. Then, in step S2, the preprocessing block 150 performs preprocessing (such as FFT processing) on ​​the acquired intermediate calculation data to extract features.

[0076] Next, in step S3, the machine learning unit 140A acquires the data after preprocessing by the preprocessing block 150 as input data and performs learning based on the on-device learning algorithm described above. This updates the model parameters of the AI ​​model. If the conditions for completing the learning process are not met (N in step S4), the process returns to step S1. The learning process is repeated and the model parameters are updated until the conditions for completing the learning process are met. When the conditions for completing the learning process are met (Y in step S4), the model parameters are saved to the non-volatile memory 140E (step S5). This completes the process (end).

[0077] Figure 7 is a flowchart illustrating an example of the inference processing operation in the anomaly detection block 140. First, in step S11, the machine learning unit 140A reads the model parameters from the non-volatile memory 140E. This initializes the AI ​​model for normal operation.

[0078] Then, in step S12, the preprocessing block 150 acquires intermediate calculation data from the control block 11. Then, in step S13, the preprocessing block 150 performs preprocessing (such as FFT processing) on ​​the acquired intermediate calculation data to extract features.

[0079] Next, in step S14, the machine learning unit 140A acquires the data after preprocessing by the preprocessing block 150 as input data and performs inference processing based on the AI ​​model. Then, in step S15, the anomaly calculation unit 140B calculates the anomaly score based on the inference result in step S14. Next, in step S16, the anomaly determination unit 140C compares the calculated anomaly score with a threshold and determines the anomaly level. Then, in step S17, the detection result output unit 140D outputs the determined anomaly level.

[0080] If the conditions for terminating the inference process are not met (N in step S18), the process returns to step S12. The inference process, anomaly calculation, and anomaly level determination are repeated until the conditions for terminating the inference process are met. When the conditions for terminating the inference process are met (Y in step S18), the process ends (end). The conditions for terminating the inference process include, for example, when a stop command is input from the user, or when the detection result in step S17 is determined to be "abnormal".

[0081] Thus, with the motor system 1X of this embodiment, additional vibration sensors and other devices used for anomaly detection, as in the comparative example, become unnecessary, thus eliminating the problems associated with providing vibration sensors and other devices. For example, the problems related to sensor installation and the need to consider sensor stability are eliminated, improving system maintainability and robustness. Furthermore, by using intermediate calculation data, information that cannot be detected by normal processing of sensor data can be detected, improving the accuracy of anomaly detection.

[0082] Furthermore, the machine learning unit 140A may perform learning using supervised methods as well as unsupervised methods. Also, the anomaly detection block 140 is not limited to using machine learning, but may also use a rule-based method to detect anomalies. In a rule-based method, for example, it is possible to compare the value of the frequency spectrum at a predetermined frequency in the data after FFT processing with a predetermined threshold, or to input the input data into a predetermined function and determine the output value.

[0083] <<Example of Feature Extraction>> In the case of a circulator, which is an example of a device equipped with a motor, damage to the fan, which is the load, is a type of abnormality. Here, an eccentric state was created by fixing a weight to the fan, thereby simulating an abnormal state. In this abnormal state, while changing the rotation speed of the motor, an FFT processing of the axis error Δθ, which is an example of intermediate calculation data, was performed. Figure 8 shows a comparison of the results of this FFT processing of the axis error Δθ in the normal state and the abnormal state. As shown in Figure 8, three frequency spectrum peaks are observed in both the normal and abnormal states, but the low-frequency spectrum (dashed box) is larger in the abnormal state compared to the normal state.

[0084] On the other hand, Figure 9 shows the results of performing an FFT on the drive current Iu while varying the motor's rotation speed under the same abnormal conditions as described above, along with the results under normal conditions. As can be seen in Figure 9, there is no significant difference in the frequency spectrum between the normal and abnormal conditions. Thus, intermediate calculation data can sometimes extract features that cannot be extracted from the drive current alone.

[0085] <Other> Furthermore, the various technical features disclosed herein can be modified in various ways, in addition to the embodiments described above, without departing from the spirit of the technical creation. In other words, the embodiments described above should be considered in all respects to be illustrative and not restrictive, and the technical scope of this disclosure should be understood to include all modifications that fall within the meaning and scope equivalent to the claims, rather than being limited to the embodiments described above.

[0086] <Note> As described above, the control device (100) according to one aspect of the present disclosure is A control block (11) is configured to generate control output signals (hu / hl, hv / lv, and hw / lw) that control the actuator based on feedback signals (Iu, Iv, Iw) from the actuator (20), The control block is configured to detect an anomaly based on intermediate calculation data generated by calculations in the process of generating the control output signal based on the feedback signal (first configuration).

[0087] With this configuration, anomaly detection becomes possible without the need to add vibration sensors or other devices for detecting abnormalities.

[0088] Furthermore, in the first configuration described above, the actuator may be a motor (second configuration).

[0089] Furthermore, in the second configuration described above, the control block may be configured to generate the control output signal using a vector control method based on the feedback signal, which is the drive current of the motor (third configuration).

[0090] Furthermore, in the third configuration described above, the intermediate calculation data may include at least one of the following: d-axis current (Id) and q-axis current (Iq) generated by the three-phase / two-phase conversion unit (105) based on the drive current of the motor; axis error (Δθ) generated by the axis error detector (110) based on the d-axis current and q-axis current; and estimated angular velocity (ω1) generated by the phase-synchronous controller (113) based on the axis error (fourth configuration).

[0091] Furthermore, in any of the above configurations 1 to 4, the anomaly detection block (140) is: A machine learning unit (140A) is configured to receive data based on the aforementioned intermediate calculation data and perform learning and inference, An anomaly calculation unit (140B) is configured to calculate the anomaly score based on the inference results from the machine learning unit, The configuration may also include an abnormality determination unit (140C) configured to determine the abnormality level based on the abnormality calculated by the abnormality calculation unit (fifth configuration).

[0092] Furthermore, in the fifth configuration described above, the machine learning unit may be configured to perform learning and inference using an autoencoder (sixth configuration).

[0093] Furthermore, in any of the first to fourth configurations described above, the anomaly detection block may be configured to perform anomaly detection based on a rule-based approach with respect to the data based on the intermediate calculation data (seventh configuration).

[0094] Furthermore, in any of the first to seventh configurations described above, the system may also include a preprocessing block configured to perform preprocessing on the intermediate calculation data and output the preprocessed data to the anomaly detection block (the eighth configuration).

[0095] Furthermore, in the eighth configuration described above, the preprocessing may include at least one of the following: normalization processing, envelope processing, frequency analysis processing, and window function processing (ninth configuration).

[0096] Furthermore, an actuator system (1X) according to one aspect of the present disclosure comprises a control device (100) having any of the first to ninth configurations described above, and an actuator (20) controlled by the control device (the tenth configuration). [Industrial applicability]

[0097] This disclosure can be used, for example, for motor control. [Explanation of Symbols]

[0098] 1.1X Motor System 10 Motor control device 11 Control Blocks 12 drivers 13 ADC 14 Anomaly detection block 15 Preprocessing Block 16 Current detection unit 17. 3-Layer Neural Network 17A Input Layer 17B Hidden Layer 17C output layer 20 Three-phase motors 30 Shunt resistors 40 Vibration Sensor 50 Temperature Sensors 100 Motor control device 101 Excitation Current Control System 102 Arithmetic unit 103 Speed ​​controller 104 Torque Model 105 Three-phase / two-phase conversion unit 106,107 Arithmetic unit 108,109 Current controllers 110-axis error detector 111 Angle advance control value setting unit 112 Arithmetic unit 113 Phase-Locked Controller 114 Non-interference calculator (motor model) 115,116 Arithmetic unit 117 Two-phase / three-phase conversion unit 118 Rotor position detection unit 140 Anomaly detection block 140A Machine Learning Department 140B Abnormality calculation unit 140C Abnormality judgment part 140D Detection Result Output Unit 140E Non-Volatile Memory 150 Preprocessing Blocks

Claims

1. A control block configured to generate a control output signal to control the actuator based on a feedback signal from the actuator, An anomaly detection block is configured to detect anomalies based on intermediate calculation data generated by calculation in the process of generating the control output signal based on the feedback signal in the control block, A control device equipped with the following features.

2. The control device according to claim 1, wherein the actuator is a motor.

3. The control device according to claim 2, wherein the control block generates the control output signal by a vector control method based on the feedback signal as the drive current of the motor.

4. The control device according to claim 3, wherein the intermediate calculation data includes at least one of the following: a d-axis current and a q-axis current generated by a three-phase / two-phase conversion unit based on the drive current of the motor; an axis error generated by an axis error detector based on the d-axis current and the q-axis current; and an estimated angular velocity generated by a phase-synchronous controller based on the axis error.

5. The aforementioned anomaly detection block is A machine learning unit configured to receive data based on the aforementioned intermediate calculation data and perform learning and inference, An anomaly calculation unit configured to calculate the anomaly score based on the inference results from the machine learning unit, An abnormality determination unit configured to determine the abnormality level based on the abnormality level calculated by the abnormality level calculation unit, The control device according to claim 1, having the following features.

6. The control device according to claim 5, wherein the machine learning unit performs learning and inference using an autoencoder.

7. The control device according to claim 1, wherein the anomaly detection block performs anomaly detection on data based on the intermediate calculation data based on a rule basis.

8. The control device according to claim 1, further comprising a preprocessing block configured to perform preprocessing on the intermediate calculation data and output the preprocessed data to the anomaly detection block.

9. The control device according to claim 8, wherein the preprocessing includes at least one of normalization, envelope processing, frequency analysis processing, and window function processing.

10. An actuator system comprising a control device according to any one of claims 1 to 9, and an actuator controlled by the control device.