Control device, model generation system, control method, model generation method, and program

The control device and system improve motor torque characteristics by using a neural network for real-time torque prediction and compensation, addressing the challenge of nonlinear torque ripple in existing technologies.

WO2026083669A1PCT designated stage Publication Date: 2026-04-23PANASONIC INTELLECTUAL PROPERTY MANAGEMENT CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
PANASONIC INTELLECTUAL PROPERTY MANAGEMENT CO LTD
Filing Date
2025-07-25
Publication Date
2026-04-23

AI Technical Summary

Technical Problem

Existing motor control devices struggle to improve nonlinear motor torque characteristics and compensate for torque ripple in a timely manner.

Method used

A control device and system that utilize a neural network-based torque prediction unit to output torque information, which is used by a control unit to adjust motor operation, and a model generation system that records and learns from motor information to generate a trained model for real-time torque compensation.

Benefits of technology

Enhances motor torque characteristics by reducing torque ripple and improving prediction accuracy and responsiveness through real-time compensation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2025026396_23042026_PF_FP_ABST
    Figure JP2025026396_23042026_PF_FP_ABST
Patent Text Reader

Abstract

Provided is a control device capable of easily improving characteristics of torque of a motor by compensation. A control device (1) comprises a torque prediction unit (12) and a control unit (11). The torque prediction unit (12) outputs torque information obtained by inputting motor information to a trained model (121). The motor information relates to a motor (M1). The trained model (121) is a neural network. The torque information relates to torque of the motor (M1). The motor information includes one or more of the value indicating a drive condition of the motor (M1) and the value indicating the state of the motor (M1). The torque information is a torque value or a torque ripple component after the time when the motor information was acquired. The control unit (11) controls the motor (M1) on the basis of the torque information.
Need to check novelty before this filing date? Find Prior Art

Description

Control device, model generation system, control method, model generation method, and program

[0001] This disclosure relates to a control device, a model generation system, a control method, a model generation method, and a program, and more particularly to a control device, a model generation system, a control method, a model generation method, and a program for controlling the torque of a motor.

[0002] Patent Document 1 discloses a motor control device. In the motor control device of Patent Document 1, a machine learning model equipped with a neural network outputs a motor current command based on at least one of the motor torque, motor current, and motor voltage. The machine learning model is trained to increase the motor torque, prevent the motor current from exceeding a specified value, and prevent the motor voltage from saturating.

[0003] Japanese Patent Publication No. 2018-14838

[0004] However, the motor control device described in Patent Document 1 has difficulty improving characteristics that are nonlinear and require compensation in a short time, such as torque ripple.

[0005] This disclosure aims to provide a control device, a model generation system, a control method, a model generation method, and a program that facilitate the improvement of motor torque characteristics through compensation.

[0006] A control device according to one aspect of this disclosure comprises a torque prediction unit and a control unit. The torque prediction unit outputs torque information obtained by inputting motor information into a trained model. The motor information relates to a motor. The trained model is a neural network. The torque information relates to the torque of the motor. The control unit controls the motor based on the torque information. The motor information includes one or more values ​​that indicate the motor's driving conditions and values ​​that indicate the motor's state. The torque information is the torque value or torque ripple component from the time the motor information was acquired onward.

[0007] A model generation system according to another aspect of this disclosure comprises a recording unit and a learning unit. The recording unit records motor information and torque information. The motor information relates to a motor. The torque information relates to the torque of a motor. The learning unit generates a trained model by performing machine learning based on training data. The training data includes motor information and torque information at each time point recorded in the recording unit. The trained model outputs torque information when motor information is input. The motor information includes one or more values ​​indicating the motor's driving conditions and values ​​indicating the motor's state. The torque information is the torque value or torque ripple component from the time the motor information was acquired onward.

[0008] A control method according to another aspect of this disclosure includes a torque prediction step and a control step. In the torque prediction step, motor information is input to a trained model and torque information obtained is output. The motor information relates to a motor. The trained model is a neural network. The torque information relates to the torque of the motor. In the control step, the motor is controlled based on the torque information. The motor information includes one or more values ​​that indicate the motor's driving conditions and values ​​that indicate the motor's state. The torque information is the torque value or torque ripple component from the time the motor information was acquired onward.

[0009] A model generation method according to another aspect of this disclosure includes a recording step and a learning step. In the recording step, motor information and torque information are recorded. Motor information relates to a motor. Torque information relates to the torque of a motor. In the learning step, machine learning based on training data is performed to generate a trained model that outputs torque information when motor information is input. The training data includes motor information and torque information at each time recorded in the recording step. Motor information includes one or more values ​​that indicate the motor's driving conditions and values ​​that indicate the motor's state. Torque information is the torque value or torque ripple component from the time the motor information was acquired onward.

[0010] A program relating to another aspect of this disclosure causes one or more processors to execute the control method relating to the above aspect.

[0011] A program relating to another aspect of this disclosure causes one or more processors to execute the model generation method relating to the above aspect.

[0012] According to one aspect of this disclosure, the control device, model generation system, control method, model generation method, and program facilitate the improvement of the motor's torque characteristics through compensation.

[0013] Figure 1 is a block diagram showing the configuration of the control device according to Embodiment 1. Figure 2 is a graph showing an overview of the motor torque ripple. Figure 3 is a partial block diagram showing the main parts of the control device according to Embodiment 1. Figure 4 is a flowchart showing the operation of the control device according to Embodiment 1. Figure 5 is a block diagram showing the configuration of the model generation system according to Embodiment 1. Figure 6 is a flowchart showing the operation of the model generation system according to Embodiment 1. Figure 7 is a partial block diagram showing the main parts of the control device according to Embodiment 2. Figure 8 is a block diagram showing the configuration of the control device according to Embodiment 3.

[0014] Hereinafter, the control device, model generation system, control method, model generation method, and program according to the embodiments will be described in detail with reference to the drawings. However, the figures described in the embodiments below are schematic diagrams, and the ratios of the size and thickness of each component do not necessarily reflect the actual dimensional ratios. Furthermore, the configurations described in the embodiments below are merely examples of this disclosure. This disclosure is not limited to the embodiments below, and various modifications are possible depending on the design, etc., as long as the effects of this disclosure can be achieved.

[0015] (Embodiment 1) (1) Configuration of the control device (1.1) Schematic diagram 1 is a block diagram showing the configuration of the control device 1 according to Embodiment 1.

[0016] The control device 1 is included, for example, in the drive system 2. The drive system 2 comprises a motor M1, a load 4, a position detection unit 3, and the control device 1. During operation, the drive system 2 receives operation commands from a higher-level controller (not shown) and controls the drive of the motor M1 to operate the load 4.

[0017] Motor M1 is a rotary servo motor. Motor M1 has an output shaft, and the output shaft rotates due to the power supplied from the control device 1.

[0018] Load 4, for example, has a positioning stage that operates using motor M1 as the drive source. Load 4 includes, for example, a ball screw that rotates synchronously with the output shaft of motor M1 and a table that moves linearly by the ball screw mechanism. Note that Load 4 is not limited to the above configuration and can be any device that operates using motor M1 as the drive source.

[0019] The control device 1 is installed in the servo amplifier that controls the motor M1. The control device 1 is connected to the position detection unit 3 in a communication manner and receives a position detection signal from the position detection unit 3.

[0020] The position detection unit 3 detects the rotation direction and rotation angle θ of the motor M1. The position detection unit 3 is a so-called encoder. The position detection unit 3 includes, for example, a disk that rotates in synchronization with the output shaft of the motor M1, and a sensor that detects the amount of movement (rotation angle) of the disk. The position detection unit 3 outputs a pulse signal as a position detection signal. The position detection signal indicates the rotation angle θ of the motor M1. The rotation angle θ of the motor M1 is a value that indicates the angle and direction by which the output shaft should rotate from a reference state to the current state. The rotation angle θ of the motor M1 is, for example, a value in which the angle is shown as an absolute value and the direction is shown as a sign. The rotation angle θ of the motor M1 is, for example, defined as clockwise as positive and counterclockwise as negative, with the reference position as 0 degrees, one rotation clockwise from the reference position as 360 degrees, and two rotations counterclockwise from the reference position as -720 degrees.

[0021] (1.2) Components of the control device The control device 1, as shown in Figure 1, comprises a current control unit 11, a torque prediction unit 12, a compensation command determination unit 13, a power conversion unit 14, and a conversion unit 15.

[0022] The current control unit 11 determines the control value (torque value) of the servo motor according to the current command value and the torque information output by the torque prediction unit 12. That is, the current control unit 11 controls the motor according to the torque information output by the torque prediction unit 12. The current control unit 11 corresponds to the control unit of this disclosure. The current command value is generated by feedback control so that the operation command from the higher-level controller matches the position command value of the motor M1. The current command value includes, for example, a d-axis current command value id and a q-axis current command value iq. The current control unit 11 performs feedback control based on the rotation angle θ and speed of the motor M1 acquired from the position detection unit 3 via the conversion unit 15. The current control unit 11 also controls the motor M1 to reduce fluctuations in the torque of the motor M1 based on the torque information output by the torque prediction unit 12. More specifically, the current control unit 11 adds the compensation amounts Δid and Δiq output by the compensation command determination unit 13 based on the torque information output by the torque prediction unit 12 to the current command values ​​id and iq. The current control unit 11 then converts the current command values ​​id and iq into the current values ​​for the U, V, and W phases of a three-phase AC power supply and outputs them to the power conversion unit 14. This allows the current control unit 11 to control the power output by the power conversion unit 14 to the motor M1.

[0023] The torque prediction unit 12 outputs torque information obtained by inputting motor information into the trained model 121. The trained model 121 is a neural network and comprises, for example, an input layer, one or more hidden layers, and an output layer.

[0024] The motor information includes one or more values ​​indicating the driving conditions of motor M1 and values ​​indicating the state of motor M1. In the torque prediction unit 12 shown in Figure 1, the motor information includes the rotation angle, d-axis current value, and q-axis current value, which are values ​​indicating the state of motor M1. The torque information is information regarding the torque of motor M1, and more specifically, it is the torque value of motor M1 from the time the rotation angle, which is motor information, was acquired. In the following description of Embodiment 1, the torque information is the torque value of motor M1 at the time the motor information was acquired, among the torque values ​​of motor M1 from the time the motor information was acquired. That is, the learned model 121 predicts the torque value of motor M1 based on the rotation angle of motor M1. Here, the torque value of motor M1 includes the torque ripple of motor M1. Figure 2 is a graph showing an overview of the torque ripple of motor M1. Note that in Figure 2, the units of the horizontal axis showing time and the vertical axis showing torque value are both arbitrary units. Torque ripple refers to the periodic fluctuation in the output torque of an energized motor M1, as shown in Figure 2. By predicting the torque value of motor M1 using the trained model 121, the current control unit 11 can perform compensation to reduce the torque ripple of motor M1. Figure 3 is a partial block diagram showing the main parts of the control device 1 according to Embodiment 1. The torque prediction unit 12 outputs, for example, the predicted torque value TrP(t) of motor M1 at time t when motor information is acquired, as shown in Figure 3.

[0025] The compensation command determination unit 13 determines the compensation amounts Δid and Δiq based on the torque information output from the torque prediction unit 12. The compensation command determination unit 13 holds compensation coefficients Isd and Isq, for example, as shown in Figure 3. The compensation coefficient Isd is, for example, the value of Δid at which the change in torque of motor M1 becomes a specified amount. The compensation coefficient Isq is, for example, the value of Δiq at which the change in torque of motor M1 becomes a specified amount. The compensation command determination unit 13, for example, multiplies the torque prediction value TrP(t), which is the torque information from the torque prediction unit 12, by the compensation coefficient Isd and divides by id to obtain the compensation amount Δid. The compensation command determination unit also multiplies the torque prediction value TrP(t) by the compensation coefficient Isq and divides by iq to obtain the compensation amount Δiq. The compensation command determination unit 13 outputs the compensation amounts Δid and Δiq to the current control unit 11.

[0026] The power conversion unit 14 supplies three-phase AC to the motor M1 based on the current values ​​iu, iv, and iw of the U-phase, V-phase, and W-phase of the three-phase AC output by the current control unit 11. The power conversion unit 14 includes, for example, a PWM generation unit and an inverter. The PWM generation unit generates control signals to be applied to the inverter based on the current values ​​of the U-phase, V-phase, and W-phase input from the current control unit 11. The control signals are, for example, multiple switching signals applied to multiple switching elements included in the inverter.

[0027] The conversion unit 15 converts the current value of the motor M1 output by the inverter from a three-phase AC current value to a d-axis current value and a q-axis current value in a dq rotation coordinate system, based on the rotation angle θ of the motor M1 output by the position detection unit 3. The conversion unit 15 outputs the d-axis current value and the q-axis current value to the current control unit 11. The current control unit 11 uses the d-axis current value and the q-axis current value output by the conversion unit 15 for feedback control of the motor M1. The conversion unit 15 also outputs the d-axis current value and the q-axis current value to the torque prediction unit 12. The torque prediction unit 12 uses the d-axis current value and the q-axis current value as motor information to predict the torque of the motor M1.

[0028] The control device 1 includes, for example, a computer having a processor. More specifically, the control device 1 includes, for example, a computer system having a CPU (Central Processing Unit) and a memory. The computer system realizes the functions of each of the current control unit 11, torque prediction unit 12, compensation command determination unit 13, power conversion unit 14, and conversion unit 15 of the control device 1 by executing a program stored in the memory with the CPU. The program may be recorded in advance in the memory of the computer system, may be provided by being recorded on a recording medium such as a memory card, or may be provided through an electric communication line such as the Internet.

[0029] (2) Operations of the Control Device FIG. 4 is a flowchart showing the operations of the control device 1 according to Embodiment 1. As shown in FIG. 4, the control device 1 predicts information regarding torque (step S1). The torque prediction unit 12 of the control device 1 inputs motor information to the learned model 121 and outputs a torque prediction value TrP(t), which is torque information regarding torque.

[0030] Next, the control device 1 controls the motor M1 based on the torque information (step S2). The control device 1 compensates the current command value based on the torque prediction value TrP(t), which is torque information regarding torque, and outputs drive power to the motor M1 based on the compensated current command value. More specifically, the compensation command determination unit 13 of the control device 1 determines compensation amounts Δid and Δiq for the current command values id and iq. The current control unit 11 of the control device 1 compensates the current command values id and iq using the compensation amounts Δid and Δiq, and outputs drive power to the motor M1 based on the compensated current command values id and iq.

[0031] As a result, the motor M1 is controlled by the control device 1 so as to reduce torque ripple. The control device 1 reduces the torque variation of the motor M1 by repeating steps S1 and S2.

[0032] According to the control device 1, the motor M1 is controlled based on the torque prediction value TrP(t). Therefore, it is easy to reduce the torque fluctuation in the motor M1 by improving the accuracy of torque prediction. For example, when the torque prediction value TrP(t) has strong non-linearity with respect to the motor information, in the method of holding the torque prediction value corresponding to the motor information as a table, the accuracy of torque prediction will decrease unless the data amount of the table is increased. In contrast, in the control device 1, even when the torque prediction value TrP(t) has strong non-linearity with respect to the motor information, if the learned model 121 is appropriately configured, the accuracy of torque prediction will not decrease. Also, when trying to reduce the torque fluctuation of the motor M1 by feedback control, it takes time to find the optimal compensation amount when the motor information fluctuates. However, in the control device 1, since the torque prediction value TrP(t) can be obtained quickly, it is possible to improve the responsiveness.

[0033] (3) Configuration of the model generation system The model generation system 5 generates the learned model 121 based on the teacher data based on the measurement results of the motor M1.

[0034] FIG. 5 is a block diagram showing the configuration of the model generation system 5 according to Embodiment 1. As shown in FIG. 5, the model generation system 5 includes a control device 1, a motor M1, a recording unit 6, and a learning unit 7.

[0035] The configuration of the control device 1 is the same as that of the above-described control device 1, so the description is omitted. However, in the model generation system 5, the torque prediction unit 12 does not output torque information. In FIG. 5, the illustration of the torque prediction unit 12 is omitted. That is, in the model generation system 5, the control device 1 does not perform correction based on the torque information of the torque prediction unit 12. Also, the control device 1 outputs the motor information to the recording unit 6.

[0036] The output shaft of motor M1 is connected to the recording unit 6. Here, it is preferable that the output shaft of motor M1 is not connected to the load 4. Depending on the load 4, it may be necessary to operate motor M1 so that the rotation angle θ of the output shaft or the rotation speed of the output shaft does not exceed an allowable range. On the other hand, if the output shaft of motor M1 is not connected to the load 4, it is possible to create training data as long as the rotation angle θ of the output shaft or the speed of the output shaft of motor M1 alone is within an allowable range.

[0037] The recording unit 6 receives and records motor information from the control device 1. The recording unit 6 also records torque information relating to the torque of motor M1, corresponding to the motor information. Specifically, the torque information is the torque value Tr(t) of motor M1 corresponding to time t. Here, it is preferable for the recording unit 6 to reduce the component of the motor M1 torque value Tr(t) that is 30 times or more the frequency of the electrical angle in motor rotation (fundamental frequency). For example, the recording unit 6 uses an LPF to reduce the component of the motor M1 torque value Tr(t) that is 30 times or more the fundamental frequency.

[0038] The learning unit 7 generates a trained model 121, which is a neural network, through machine learning based on training data. The training data includes motor information and torque information at each time point. When motor information is input, the learning unit 7 generates the trained model 121 to output torque information corresponding to the motor information. For example, the training data includes torque information at the time the motor information was acquired as the correct answer corresponding to the motor information. When motor information is input, the learning unit 7 generates the trained model 121 to output torque information at the time corresponding to the time of the motor information. The torque information corresponds to a time after the time of the motor information. For example, the torque information corresponds to the same time as the time of the motor information. The learning unit 7 transmits the generated trained model 121 to the torque prediction unit 12 of the control device 1.

[0039] The model generation system 5 includes, for example, a computer having a processor. More specifically, the model generation system 5 includes, for example, a computer system having a CPU and memory. The computer system implements the respective functions of the control unit 1, recording unit 6, and learning unit 7 of the model generation system 5 by executing a program stored in memory using the CPU. Note that the respective functions of the control unit 1, recording unit 6, and learning unit 7 may be implemented in different computer systems, or two or more functions of the control unit 1, recording unit 6, and learning unit 7 may be implemented in the same computer system.

[0040] (4) Operation diagram 6 of the model generation system is a flowchart showing the operation of the model generation system 5 according to Embodiment 1. As shown in Figure 6, the model generation system 5 records torque information (step S11). More specifically, the recording unit 6 records the motor information to be input to the torque prediction unit 12 of the control device 1 and the torque of the motor M1 corresponding to the motor information in association.

[0041] Next, the model generation system 5 generates a trained model 121 using machine learning (step S12). More specifically, the learning unit 7 uses the motor information and torque information recorded in the recording unit 6 at each time point as training data, and performs machine learning to minimize the difference between the output and the corresponding torque information when motor information is input, thereby generating the trained model 121. The training data includes motor information and, as the correct answer for the motor information, the torque corresponding to the motor information. As a result, when motor information is input, a trained model 121 is generated that outputs the torque corresponding to the motor information.

[0042] (5) Effects The control device 1 according to Embodiment 1 comprises a torque prediction unit 12 and a current control unit 11. The torque prediction unit 12 outputs torque information obtained by inputting motor information into a learned model 121. The motor information relates to motor M1. The learned model 121 is a neural network. The torque information relates to the torque of motor M1. The current control unit 11 controls motor M1 based on the torque information. The motor information includes one or more values ​​that indicate the driving conditions of motor M1 and values ​​that indicate the state of motor M1. The torque information is the torque value or torque ripple component after the time the motor information was acquired. As a result, the control device 1 according to Embodiment 1 makes it easy to improve the torque characteristics of motor M1 by compensation.

[0043] Furthermore, in the control device 1 according to Embodiment 1, the motor information includes values ​​indicating the state of the motor M1. The values ​​indicating the state of the motor M1 include one or more of the following: motor temperature, output torque, rotation angle, d-axis current value, and q-axis current value. As a result, in the control device 1 according to Embodiment 1, it is possible to improve the prediction accuracy of the torque value or torque ripple component of the motor M1 by the torque prediction unit 12.

[0044] Furthermore, in the control device 1 according to Embodiment 1, the torque information is the predicted torque value TrP for a time after the time when the motor information was acquired. The current control unit 11 controls the motor M1 to reduce the fluctuation of the motor M1's torque based on the torque information. As a result, in the control device 1 according to Embodiment 1, it is possible to reduce the torque ripple of the motor M1 based on the predicted torque value TrP of the motor M1 predicted by the torque prediction unit 12.

[0045] Furthermore, in the control device 1 according to Embodiment 1, the current control unit 11 adds compensation amounts Δid and Δiq based on torque information to the current command values ​​iq and id of the motor M1. As a result, in the control device 1 according to Embodiment 1, it becomes easy to reduce the torque ripple of the motor M1 based on the torque prediction value TrP of the motor M1 predicted by the torque prediction unit 12.

[0046] Furthermore, the control method according to Embodiment 1 includes a torque prediction step S1 and a control step S2. In the torque prediction step S1, motor information is input to a trained model 121 and torque information obtained is output. The motor information relates to motor M1. The trained model 121 is a neural network. The torque information relates to the torque of motor M1. In the control step S2, the motor is controlled based on the torque information. The motor information includes one or more values ​​that indicate the driving conditions of motor M1 and values ​​that indicate the state of motor M1. The torque information is the torque value or torque ripple component after the time the motor information was acquired. Furthermore, the program according to Embodiment 1 causes one or more processors to execute the control method according to Embodiment 1. As a result, the control method and program according to Embodiment 1 facilitate the improvement of the torque characteristics of motor M1 by compensation.

[0047] Furthermore, the model generation system 5 according to Embodiment 1 includes a recording unit 6 and a learning unit 7. The recording unit 6 records motor information and torque information. The motor information relates to motor M1. The torque information relates to the torque of motor M1. The learning unit 7 performs machine learning based on training data, which includes motor information and torque information recorded in the recording unit 6 at each time point, to generate a trained model 121. The training data includes motor information and torque information. When motor information is input, the trained model 121 outputs torque information. The motor information includes one or more values ​​that indicate the driving conditions of motor M1 and values ​​that indicate the state of motor M1. The torque information is the torque value or torque ripple component from the time the motor information was acquired onward. As a result, the model generation system 5 according to Embodiment 1 facilitates the improvement of the torque characteristics of motor M1 through compensation.

[0048] Furthermore, in the model generation system 5 according to Embodiment 1, the learning unit 7 creates a trained model 121 so as to output torque information at a time corresponding to the time of the motor information when motor information is input. As a result, in the model generation system 5 according to Embodiment 1, there is a one-to-one correspondence between the time of the motor information and the time of the torque information. Therefore, it becomes easy to perform real-time improvement of the torque characteristics of the motor M1 using the trained model 121.

[0049] Furthermore, the model generation method according to Embodiment 1 includes a recording step S11 and a learning step S12. In the recording step S11, motor information and torque information are recorded. The motor information pertains to motor M1. The torque information pertains to the torque of motor M1. In the learning step S12, machine learning is performed based on training data including motor information and torque information recorded in the recording step S11 to generate a trained model 121. The training data includes motor information and torque information. When motor information is input, the trained model 121 outputs torque information. The input information includes one or more values ​​indicating the driving conditions of motor M1 and values ​​indicating the state of motor M1. The torque information is the torque value or torque ripple component from the time the motor information was acquired onward. Furthermore, the program according to Embodiment 1 causes one or more processors to execute the model generation method according to Embodiment 1. This makes it easy to improve the torque characteristics of motor M1 through compensation in the model generation method and program according to Embodiment 1.

[0050] (Modification 1) (1) In the control device 1 according to Modification 1 of the Configuration Embodiment 1, the torque prediction unit 12 outputs the torque ripple component of the torque of the motor M1 as torque information.

[0051] The torque prediction unit 12 predicts, for example, the harmonics of the motor M1 that are multiples of 6, such as the 6th, 12th, 18th, and so on, of the fundamental frequency. That is, the torque prediction unit 12 approximates the predicted torque value TrP(t) of the motor M1 at time t using the following equation 1.

[0052]

[0053] Here, f is the fundamental frequency of the electrical angle in motor rotation, n is an integer, and A n (t) is the amplitude of the 6th harmonic component, θ n A is the phase of the 6th harmonic component, and A0 is the DC component of the torque. Here, 6n is an integer that is 6 times n. The trained model 121, for example, uses A as torque information. n (t) and θ n The system outputs combinations of (n = 1 to 5). The torque prediction unit 12 outputs a torque prediction value TrP(t) based on equation 1. Note that the range of values ​​for n is illustrative, and for example, n = 1 to 3 may also be used.

[0054] Furthermore, in the model generation system 5 according to the modified example 1 of Embodiment 1, the recording unit 6 creates training data in the following manner. The recording unit 6 takes the torque value Tr(t) of the output shaft of the motor M1 and calculates the amplitude A for the 6nth harmonic. n (t) and phase θ n The recording unit 6 extracts the following. For the torque value Tr(t) as time-series data, for example, it performs a Fast Fourier Transform on the data for each time interval of one period of the fundamental frequency to obtain the amplitude of the torque value Tr(t) for each frequency. The learning unit 7 extracts the DC component A0 and the amplitude A of the 6th harmonic component for the motor information. n (t) and phase θ n A trained model 121 is generated to output the following.

[0055] (2) Effects In the control device 1 according to Modification 1 of Embodiment 1, the torque information is the torque ripple component at a time after the time when the motor information was acquired. The current control unit 11 controls the motor M1 to reduce the fluctuation of the motor M1's torque based on the torque information. As a result, in the control device 1 according to Modification 1 of Embodiment 1, it is possible to reduce the torque ripple of the motor M1 based on the torque prediction value TrP of the motor M1 predicted by the torque prediction unit 12. Furthermore, since the torque prediction unit 12 predicts the torque ripple component rather than the entire torque, it is possible to reduce the computational load of the prediction and improve accuracy.

[0056] (Modification Example 2) In the control device 1 according to Modification Example 2 of Embodiment 1, the compensation command determination unit 13 determines the compensation amount as follows with respect to the predicted value of the torque ripple output based on the above formula 1, which is different from the control device 1 according to Modification Example 1 of Embodiment 1.

[0057] First, the compensation command determination unit 13 uses the following two compensation coefficients, compensation coefficient A ns and compensation coefficient θ ns to determine the compensation amount. Compensation coefficient A ns and compensation coefficient θ ns are calculated based on the following actually measured data obtained in advance. The actually measured data is the output torque waveform when the compensation command determination unit 13 outputs a ripple compensation component with a reference of 6n order. Compensation coefficient A ns , θ ns represent the ratios of the amplitude and phase required to reduce the ripple with respect to the reference 6n-order ripple compensation component.

[0058] Specifically, the amplitude A nz and phase θ nz that satisfy the following formula 2 are calculated from the trigonometric function synthesis formula. Here, the amplitude of the 6n-order component of the output torque waveform is amplitude A nx , and the phase of the 6n-order component is phase θ nx .

[0059]

[0060] Next, compensation coefficient A ns is calculated based on the following formula 3, and compensation coefficient θ ns is calculated based on the following formula 4. Here, amplitude A s and phase θ s are the amplitude and phase of the reference 6n-order ripple compensation component in the actually measured data.

[0061]

[0062]

[0063] The compensation command determination unit 13 calculates the amount obtained by inverting the phase of the ripple component by 180 degrees as the compensation amount. Specifically, compensation coefficient A ns and θ nsUsing this, the compensation command determination unit 13 determines the compensation amount Δiq according to equation 5.

[0064]

[0065] The control device 1 according to Modification 2 of Embodiment 1 also makes it possible to reduce the torque ripple of the motor M1 based on the torque prediction value TrP of the motor M1 predicted by the torque prediction unit 12, similar to the control device 1 according to Modification 1 of Embodiment 1. Furthermore, since the torque prediction unit 12 predicts the torque ripple component rather than the entire torque, it is possible to reduce the computational load of the prediction and improve accuracy.

[0066] (Embodiment 2) (1) In the control device 1 according to configuration embodiment 2, the torque prediction unit 12 predicts the torque value of the motor M1 at time t+Δt, which is delayed by a predetermined time Δt from the time t when the motor information was acquired.

[0067] The torque prediction unit 12 outputs a predicted torque value TrP(t+Δt) for motor M1 at time t+Δt, based on the motor information acquired at time t. For example, when the trained model 121 receives motor information acquired at time t, it outputs a predicted torque value TrP(t+Δt) for motor M1 at time t+Δt.

[0068] Here, the predetermined time Δt is determined based on the time delay between the input and output of the control device 1. Specifically, the predetermined time Δt is determined, for example, based on the time lag between the change in the current command value of the current control unit 11 and the change in the torque of the motor M1. For example, if the time lag between the change in the current command value of the current control unit 11 and the change in the torque of the motor M1 is 1 second, the predetermined time Δt is set to 1 second. This makes it possible to compensate based on the prediction of the torque value at the time when the torque changes depending on the motor information, rather than the time when the motor information was acquired, when the time delay between the input and output of the control device 1 is not zero. Therefore, the immediacy of compensation is increased, and the accuracy of the trained model 121 can also be improved.

[0069] The compensation command determination unit 13 determines the compensation amounts Δid and Δiq based on the torque information output from the torque prediction unit 12. Here, the compensation command determination unit 13 determines the compensation amounts Δid and Δiq based on the torque prediction value TrP(t+Δt), which is the torque information output from the torque prediction unit 12.

[0070] Figure 7 is a partial block diagram showing the main parts of the control device 1 according to Embodiment 2. The compensation command determination unit 13 holds compensation coefficients Isd and Isq, for example, as shown in Figure 7. The compensation coefficient Isd is, for example, the value of Δid at which the change in torque of motor M1 becomes a specified amount. The compensation coefficient Isq is, for example, the value of Δiq at which the change in torque of motor M1 becomes a specified amount. The compensation command determination unit 13 calculates the difference between the torque prediction value TrP(t+Δt), which is torque information from the torque prediction unit 12, and the torque command value Tr*(t). The compensation command determination unit 13 then outputs a compensation amount Δid as the sum of the values ​​obtained by dividing the compensation coefficient Isd by the current command value id(t) on the difference between the torque prediction value TrP(t+Δt) and the torque command value Tr*(t). Furthermore, the compensation command determination unit 13 outputs a compensation amount Δiq as the sum of the values ​​obtained by dividing the compensation coefficient Isq by the current command value iq(t) for the difference between the predicted torque value TrP(t+Δt) and the torque command value Tr*(t).

[0071] In the control device 1 according to Embodiment 2, at time t, the motor M1 is controlled based on the predicted torque value at time t + Δt. On the other hand, there is a time lag between when the control device 1 controls the motor M1 and when the torque of the motor M1 changes. Therefore, by determining a predetermined time Δt based on the time lag between the change in the current command value of the current control unit 11 and the change in the torque of the motor M1, it becomes possible to properly control the torque of the motor M1 at time t + Δt.

[0072] (2) Effects: In the control device 1 according to Embodiment 2, the torque information indicates the torque of motor M1 at a predetermined time after the time when the motor information was acquired. As a result, in the control device 1 according to Embodiment 2, if there is a difference between the time when the torque prediction unit 12 outputs the torque information and the time when the torque of motor M1 changes based on the torque information from the torque prediction unit 12, it becomes possible to control the torque of motor M1 at an appropriate timing, taking into account the time difference.

[0073] Furthermore, in the control device 1 according to Embodiment 2, the predetermined time is determined based on the time delay between the input and output of the control device 1. This makes it possible to bring closer together the time when the torque of the motor M1 changes based on the change in motor information and the time when the torque changes due to the control of the control unit 11 based on the motor information. Therefore, even when the time delay between the input and output of the control device 1 is not zero, it is possible to control the torque of the motor M1 immediately.

[0074] (Embodiment 3) (1) In the control device 1 according to configuration embodiment 3, the torque prediction unit 12 receives multiple pieces of information as motor information.

[0075] Figure 8 is a block diagram showing the configuration of the control device 1 according to Embodiment 3. In the control device 1 according to Embodiment 3, as shown in Figure 8, the torque prediction unit 12 receives a plurality of values ​​indicating the state of the motor M1 as motor information. The values ​​indicating the state of the motor M1 include, for example, one or more of the following: motor temperature T1, output torque Tr(t) of the motor M1, rotation angle of the motor M1, d-axis current value, and q-axis current value. As a result, the torque prediction unit 12 can improve the accuracy of the information regarding the torque of the motor M1 based on the plurality of pieces of information. Note that the values ​​indicating the state of the motor M1 may be time-series data that includes not only the value corresponding to the acquired time, but also one or more values ​​corresponding to previous times. As a result, it is possible to predict the torque of the motor M1 based on the time-series change of the values ​​indicating the state of the motor M1.

[0076] Furthermore, in the control device 1 according to Embodiment 3, as shown in Figure 8, the torque prediction unit 12 receives values ​​indicating the driving conditions of the motor M1 as motor information. The values ​​indicating the driving conditions of the motor M1 include, for example, one or more of the position command value, speed command value, and torque command value. This makes it possible for the torque prediction unit 12 to improve the accuracy of predicting the torque of the motor M1. The values ​​indicating the driving conditions of the motor M1 may also be time-series data corresponding to the acquired time and previous times, similar to the values ​​indicating the state of the motor M1.

[0077] Note that the motor information is not limited to the data described above; it may also be the voltage values ​​Vu, Vv, and Vw of the U, V, and W phases of the three-phase AC applied to the motor M1.

[0078] (2) Effects In the control device 1 according to Embodiment 3, the motor information includes a value indicating the driving conditions of the motor M1. The value indicating the driving conditions of the motor M1 includes one or more of the position command value, speed command value, and torque command value. As a result, the control device 1 according to Embodiment 3 makes it possible to improve the prediction accuracy of the torque value or torque ripple of the motor M1 by the torque prediction unit 12.

[0079] (Other modifications according to the embodiment) (1) In the control device 1 according to Embodiment 2, the torque information output by the torque prediction unit 12 is the predicted torque value of the motor M1 at time t + Δt, but as with the modification of Embodiment 1, it may also be a value indicating the torque ripple component. For example, the torque information is the amplitude A of the 6nth harmonic component of the motor M1 at time t + Δt n (t + Δt) and phase θ n This is the value.

[0080] (2) In the control device 1 according to Embodiments 1 to 3 and modified examples, the compensation command determination unit 13 calculates the compensation amounts Δid and Δiq for the current command value based on the torque prediction value. However, for example, the compensation command determination unit 13 may calculate the compensation amounts Δid and Δiq for the current command value based on the difference between the torque prediction value and the torque command value.

[0081] (Aspect) The control device (1) according to the first aspect comprises a torque prediction unit (12) and a control unit (11). The torque prediction unit (12) outputs torque information obtained by inputting motor information into a trained model (121). The motor information relates to a motor (M1). The trained model (121) is a neural network. The torque information relates to the torque of the motor (M1). The control unit (11) controls the motor (M1) based on the torque information. The motor information includes one or more values ​​that indicate the driving conditions of the motor (M1) and values ​​that indicate the state of the motor (M1). The torque information is the torque value or torque ripple component after the time the motor information was acquired.

[0082] According to the control device (1) in the above embodiment, it becomes easy to improve the torque characteristics of the motor (M1) through compensation.

[0083] In the control device (1) according to the second embodiment, in the first embodiment, the motor information includes a value indicating the driving conditions of the motor (M1). The value indicating the driving conditions of the motor (M1) includes one or more of the position command value, speed command value, and torque command value.

[0084] According to the control device (1) described above, it is possible to improve the accuracy of the torque prediction unit (12)'s prediction of the torque value or torque ripple component of the motor (M1).

[0085] In the control device (1) according to the third embodiment, in the first or second embodiment, the motor information includes a value indicating the state of the motor (M1). The value indicating the state of the motor (M1) includes one or more of the following: motor temperature (T1), output torque (Tr), rotation angle, d-axis current value, and q-axis current value.

[0086] According to the control device (1) described above, it is possible to improve the accuracy of the torque prediction unit (12)'s prediction of the torque value or torque ripple component of the motor (M1).

[0087] In the control device (1) according to the fourth embodiment, in any of the first to third embodiments, the torque information is the torque value (TrP) at a time after the time when the motor information was acquired. The control unit (11) controls the motor (M1) to reduce fluctuations in the torque of the motor (M1) based on the torque information.

[0088] According to the control device (1) described above, it is possible to reduce the torque ripple of the motor (M1) based on the torque value (TrP) of the motor (M1) predicted by the torque prediction unit (12).

[0089] In the control device (1) according to the fifth embodiment, in any of the first to third embodiments, the torque information is the torque ripple component at a time after the time when the motor information was acquired. The control unit (11) controls the motor (M1) to reduce the fluctuation of the motor's torque based on the torque information.

[0090] According to the control device (1) described above, the torque ripple of the motor (M1) can be reduced based on the torque ripple component of the motor (M1) predicted by the torque prediction unit (12). Furthermore, since the torque prediction unit (12) only needs to predict the torque ripple component, the computational load on the torque prediction unit (12) is reduced, and the accuracy of the prediction is improved.

[0091] In the control device (1) according to the sixth embodiment, in the fourth or fifth embodiment, the control unit (11) adds a compensation amount (Δid, Δiq) based on torque information to the current command value (id, iq) of the motor (M1).

[0092] According to the control device (1) in the above embodiment, it becomes easy to reduce the torque ripple of the motor (M1) based on the torque ripple component of the motor (M1) predicted by the torque prediction unit (12).

[0093] In the control device (1) according to the seventh embodiment, in any of the fourth to sixth embodiments, the torque information indicates the torque of the motor (M1) at a predetermined time after the time when the motor information was acquired.

[0094] According to the control device (1) described above, if there is a difference between the time when the torque prediction unit (12) outputs torque information and the time when the torque of the motor (M1) changes based on the torque information from the torque prediction unit (12), it becomes possible to control the torque of the motor (M1) at an appropriate timing, taking into account the time difference.

[0095] In the control device (1) according to the eighth embodiment, the predetermined time is determined based on the time delay between the input and output of the control device (1), as in the seventh embodiment.

[0096] According to the control device (1) in the above embodiment, it is possible to bring closer together the time at which the torque of the motor (M1) changes based on the change in motor information and the time at which the torque changes due to the control of the control unit (11) based on the motor information. Therefore, even if the time delay between the input and output of the control device (1) is not zero, it is possible to control the torque of the motor (M1) immediately.

[0097] The ninth embodiment of the model generation system (5) comprises a recording unit (6) and a learning unit (7). The recording unit (6) records motor information and torque information. The motor information relates to a motor (M1). The torque information relates to the torque of the motor (M1). The learning unit (7) generates a trained model (121) by performing machine learning based on training data. The training data includes motor information and torque information at each time recorded in the recording unit (6). The trained model (121) outputs torque information when motor information is input. The motor information includes one or more values ​​that indicate the driving conditions of the motor (M1) and values ​​that indicate the state of the motor (M1). The torque information is the torque value or torque ripple component from the time the motor information was acquired onward.

[0098] According to the model generation system (5) described above, the torque characteristics of the motor (M1) can be easily improved by compensation.

[0099] In the model generation system (5) according to the tenth embodiment, in the ninth embodiment, the learning unit (7) generates a trained model (121) such that when motor information is input, it outputs torque information for a time corresponding to the time of the motor information.

[0100] According to the model generation system (5) described above, the time of the motor information and the time of the torque information correspond one-to-one. Therefore, it becomes easy to improve the torque characteristics of the motor (M1) using the trained model (121) in real time.

[0101] The control method according to the eleventh embodiment includes a torque prediction step (S1) and a control step (S2). In the torque prediction step (S1), motor information is input to a trained model (121) and torque information obtained is output. The motor information relates to a motor (M1). The trained model (121) is a neural network. The torque information relates to the torque of the motor (M1). In the control step (S2), the motor is controlled based on the torque information. The motor information includes one or more values ​​that indicate the driving conditions of the motor (M1) and values ​​that indicate the state of the motor (M1). The torque information is the torque value or torque ripple component after the time the motor information was acquired.

[0102] According to the control method described above, it becomes easier to improve the torque characteristics of the motor (M1) through compensation.

[0103] The model generation method according to the twelfth embodiment includes a recording step (S11) and a learning step (S12). In the recording step (S11), motor information and torque information are recorded. The motor information pertains to a motor (M1). The torque information pertains to the torque of the motor (M1). In the learning step (S12), machine learning based on training data is performed to generate a trained model (121) that outputs torque information when motor information is input. The training data includes motor information and torque information at each time recorded in the recording step (S11). The motor information includes one or more values ​​that indicate the driving conditions of the motor (M1) and values ​​that indicate the state of the motor (M1). The torque information is the torque value or torque ripple component from the time the motor information was acquired onward.

[0104] According to the model generation method described above, it becomes easier to improve the torque characteristics of the motor (M1) through compensation.

[0105] The program according to the 13th embodiment causes one or more processors to execute the control method according to the 10th embodiment.

[0106] According to the program described above, it becomes easier to improve the torque characteristics of the motor (M1) through compensation.

[0107] The program according to the 14th embodiment causes one or more processors to execute the model generation method according to the 12th embodiment.

[0108] According to the program described above, it becomes easier to improve the torque characteristics of the motor (M1) through compensation.

[0109] The control device, model generation system, control method, model generation method, and program of this disclosure facilitate the improvement of motor torque characteristics through compensation. Thus, the control device, model generation system, control method, model generation method, and program of this disclosure are industrially useful.

[0110] 1 Control device 11 Current control unit (control unit) 12 Torque prediction unit 121 Learned model 5 Model generation system 6 Recording unit 7 Learning unit M1 Motor TrP Torque prediction value (torque value) id d-axis current command value (current command value) iq q-axis current command value (current command value) Δid, Δiq Compensation amount S1 Torque prediction step S2 Control step S11 Recording step S12 Learning step

Claims

1. A control device comprising: a torque prediction unit that outputs torque information relating to the torque of a motor obtained by inputting motor information relating to a motor into a trained model which is a neural network; and a control unit that controls the motor based on the torque information, wherein the motor information includes one or more values ​​that indicate the driving conditions of the motor and values ​​that indicate the state of the motor, and the torque information is the torque value or torque ripple component from the time the motor information was acquired onward.

2. The control device according to claim 1, wherein the motor information includes a value indicating the driving conditions of the motor, and the value indicating the driving conditions of the motor includes one or more of a position command value, a speed command value, and a torque command value.

3. The control device according to claim 1, wherein the motor information includes a value indicating the state of the motor, and the value indicating the state of the motor includes one or more of the following: motor temperature, output torque, rotation angle, d-axis current value, and q-axis current value.

4. The control device according to claim 1, wherein the torque information is the torque value at a time after the time the motor information was acquired, and the control unit controls the motor to reduce fluctuations in the torque of the motor based on the torque information.

5. The control device according to claim 1, wherein the torque information is the torque ripple component at a time after the time the motor information was acquired, and the control unit controls the motor to reduce the fluctuation of the torque of the motor based on the torque information.

6. The control device according to claim 4 or 5, wherein the control unit adds the compensation amount based on the torque information to the current command value of the motor.

7. The control device according to claim 4 or 5, wherein the torque information indicates the torque of the motor at a predetermined time after the time the motor information was acquired.

8. The control device according to claim 7, wherein the predetermined time is determined based on the time delay between the input and output of the control device.

9. A model generation system comprising: a recording unit that records motor information relating to a motor and torque information relating to the torque of the motor; and a learning unit that performs machine learning based on training data including the motor information and torque information recorded in the recording unit at each time point to generate a trained model that outputs the torque information when the motor information is input, wherein the motor information includes one or more values ​​indicating the driving conditions of the motor and values ​​indicating the state of the motor, and the torque information is a torque value or torque ripple component from the time the motor information was acquired onward.

10. The model generation system according to claim 9, wherein the learning unit generates the learned model such that when the motor information is input, it outputs the torque information for a time corresponding to the time of the motor information.

11. A control method comprising: a torque prediction step of inputting motor information relating to a motor into a trained model which is a neural network and outputting torque information relating to the torque of the motor obtained from that input; and a control step of controlling the motor based on the torque information, wherein the motor information includes one or more values ​​that indicate the driving conditions of the motor and values ​​that indicate the state of the motor, and the torque information is a torque value or torque ripple component from the time the motor information was acquired onward.

12. A model generation method comprising: a recording step of recording motor information relating to a motor and torque information relating to the torque of the motor; and a learning step of performing machine learning based on training data including the motor information and torque information recorded in the recording step to generate a trained model that outputs the torque information when the motor information is input, wherein the motor information includes one or more values ​​indicating the driving conditions of the motor and values ​​indicating the state of the motor, and the torque information is a torque value or torque ripple component from the time the motor information was acquired onward.

13. A program that causes one or more processors to execute the control method described in claim 11.

14. A program that causes one or more processors to execute the model generation method described in claim 12.

Citation Information

Patent Citations

  • Controller and control method

    JP2019185742A

  • Motor control device and motor control method

    JP2023051040A

  • Servo control device

    WO2019092852A1

  • Motor control device

    WO2020213062A1