Motor control device, magnetic pole position calculation method

The motor control device corrects phase differences in sine and cosine wave signals to accurately calculate the magnetic pole position, addressing inaccuracies and reducing torque vibrations for improved motor control.

JP7711308B2Active Publication Date: 2025-07-22ASTEMO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2024507436
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-03-18
Publication Date
2025-07-22
Estimated Expiration
2042-03-18

AI Technical Summary

Technical Problem

Existing motor control systems face challenges in accurately calculating the magnetic pole position due to offset and periodic errors in the phase difference between sine and cosine wave signals from angle sensors, leading to inaccurate motor rotation speed calculations and potential torque vibrations.

Method used

A motor control device that includes a phase difference calculation unit to determine the phase difference between sine and cosine wave signals and a phase change unit to correct the phases such that the difference becomes 90 degrees, enabling precise magnetic pole position calculation using corrected sine and cosine wave signals.

Benefits of technology

The solution allows for high-accuracy calculation of the magnetic pole position, reducing torque vibrations and improving motor control precision, thereby enhancing vehicle stability and comfort.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007711308000001
    Figure 0007711308000001
  • Figure 0007711308000002
    Figure 0007711308000002
  • Figure 0007711308000003
    Figure 0007711308000003
Patent Text Reader

Abstract

This motor control device is connected to an angle sensor that outputs a sine-wave signal and a cosine-wave signal that vary in accordance with the magnetic-pole position of a motor, and the motor control device calculates the magnetic-pole position on the basis of the sine-wave signal and the cosine-wave signal output from the angle sensor, and controls the motor by utilizing the calculated magnetic-pole position. The motor control device comprises: a phase-difference computing unit that computes the phase difference between the sine-wave signal and the cosine-wave signal; and a phase-changing unit that, on the basis of the phase difference computed by the phase-difference computing unit, corrects the phases of the sine-wave signal and the cosine wave signal by changing each of the phases by the same amount so that the phase difference after correction will be 90 degrees in electrical angle.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an apparatus for controlling a motor and a method for calculating a magnetic pole position of the motor.

Background Art

[0002] Conventionally, in a motor control apparatus that controls a synchronous motor using a permanent magnet for a magnetic pole, the magnetic pole position of the motor is calculated based on an angle signal output from an angle sensor such as a resolver attached to the motor, and the motor is controlled based on the calculation result. Accurately calculating the magnetic pole position of the motor leads to an improvement in the output torque accuracy of the motor. Therefore, for example, in a motor mounted on an electric vehicle, it leads to vibration suppression of the vehicle. Therefore, a technique capable of calculating the magnetic pole position of the motor with high accuracy is required.

[0003] Generally, the calculation result of the magnetic pole position based on the angle signal includes an offset error that always occurs with respect to the true value and a periodic error that periodically occurs in accordance with the rotation of the motor. Among these errors, the offset error can be easily corrected by a well-known method, but the periodic error may be difficult to correct. In particular, the phase difference between the sine wave signal (sin signal) and the cosine wave signal (cos signal) output by the angle sensor is ideally 90 degrees. However, if this phase difference deviates from 90 degrees, it leads to the occurrence of a periodic error that is difficult to correct in the calculation result of the magnetic pole position of the motor. As a result, a periodic error also occurs in the calculated value of the motor rotation speed, and there is a risk of inducing vibration in the output torque of the motor.

[0004] Regarding the improvement of the calculation accuracy of the magnetic pole position of the motor, for example, the technique described in Patent Document 1 is known. Patent Document 1 describes an apparatus that corrects a sine signal and a cosine signal based on preset magnetic sensor correction information so that the value of the sine signal or the cosine signal output by the magnetic sensor according to the rotation angle of the rotating body approaches the value of the reference sine signal or cosine signal of the magnetic sensor.

Prior Art Documents

Patent Documents

[0005] [Patent Document 1] Japanese Patent Application Laid-Open No. 2018-185287 [Summary of the Invention] [Problems to be Solved by the Invention]

[0006] In the technique described in Patent Document 1, when the difference between the value of the sine signal or cosine signal output by the magnetic sensor and the value of the reference sine signal or cosine signal is large, the correction amount becomes too large, and the corrected sine signal or cosine signal may deviate greatly from the original value. In this case, the magnetic pole position of the motor calculated from the corrected sine signal and cosine signal will deviate greatly from the original magnetic pole position, so that the magnetic pole position of the motor cannot be calculated with high accuracy. [Means for Solving the Problems]

[0007] The motor control device according to the present invention is connected to an angle sensor that outputs a sine wave signal and a cosine wave signal that change according to the magnetic pole position of the motor, calculates the magnetic pole position based on the sine wave signal and the cosine wave signal output from the angle sensor, and uses the magnetic pole position to control the motor. The motor control device includes a phase difference calculation unit that calculates a phase difference between the sine wave signal and the cosine wave signal, and a phase change unit that corrects the phase of the sine wave signal and the cosine wave signal by changing each by the same amount so that the corrected phase difference becomes 90 degrees in electrical angle based on the phase difference calculated by the phase difference calculation unit. The method for calculating the magnetic pole position according to the present invention is a method for calculating the magnetic pole position based on a sine wave signal and a cosine wave signal that change according to the magnetic pole position of a motor, and calculates the phase difference between the sine wave signal and the cosine wave signal, and based on the calculated phase difference, the phases of the sine wave signal and the cosine wave signal are each changed by the same amount for correction so that the corrected phase difference becomes 90 degrees in electrical angle, and the magnetic pole position is calculated based on the sine wave signal and the cosine wave signal whose phases have been corrected.

Advantages of the Invention

[0008] According to the present invention, the magnetic pole position of a motor can be calculated with high accuracy.

Brief Description of the Drawings

[0009]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Embodiments for Carrying Out the Invention

[0010] Hereinafter, embodiments for carrying out the present invention will be described in detail with reference to the drawings. In this embodiment, an application example to a motor drive system mounted on and used in an electric vehicle such as an electric vehicle or a hybrid vehicle will be described.

[0011] FIG. 1 is a diagram showing the configuration of a motor drive system including a motor control device according to an embodiment of the present invention. The motor drive system shown in FIG. 1 includes a motor control device 100, an inverter 200, a motor 300, and a high-voltage battery 400.

[0012] The motor control device 100 calculates a torque command value corresponding to a target torque required from the vehicle for the motor 300, and based on this torque command value, generates a semiconductor switch signal for controlling the operation of a plurality of semiconductor switch elements 201 included in the inverter 200. Then, by outputting the generated semiconductor switch signal to the inverter 200, the operation of each semiconductor switch element 201 of the inverter 200 is controlled to control the motor 300. Details of the motor control device 100 will be described later.

[0013] The inverter 200 includes an inverter circuit composed of a plurality of semiconductor switch elements 201, a gate drive circuit 202, a smoothing capacitor 203, and a current sensor 204. The gate drive circuit 202 generates a gate drive signal for controlling each semiconductor switch element 201 of the inverter circuit based on the semiconductor switch signal input from the motor control device 100, and outputs it to each semiconductor switch element 201. In the inverter circuit, semiconductor switch elements 201 are provided corresponding to the upper arms and lower arms of the U-phase, V-phase, and W-phase, respectively. By switching each semiconductor switch element 201 at a predetermined timing according to the gate drive signal input from the gate drive circuit 202, the DC power supplied from the high-voltage battery 400 is converted into three-phase AC power and output to the motor 300.

[0014] The smoothing capacitor 203 smooths the DC power supplied from the high-voltage battery 400 to the inverter 200. The current sensor 204 detects the AC current flowing from the inverter 200 to each phase of the motor 300, and outputs a current detection signal corresponding to the magnitude of the current in each phase to the motor control device 100.

[0015] The motor 300 is a synchronous motor that is rotationally driven by the supply of three-phase AC power from the inverter 200 and is electrically connected to the inverter 200. The motor 300 has an angle sensor 301, a rotor 302, and a stator 303. When the three-phase AC power input from the inverter 200 is applied to the three-phase armature coils provided in the stator 303, three-phase alternating currents are conducted in the motor 300, and armature fluxes are generated in the armature coils of each phase. By generating attractive and repulsive forces between the armature flux of each armature coil and the magnet flux of the permanent magnets arranged on the rotor 302, torque is generated in the rotor 302, and the rotor 302 is rotationally driven.

[0016] The angle sensor 301 outputs a sine wave signal and a cosine wave signal that change according to the magnetic pole position of the motor 300, that is, the rotation angle of the rotor 302, to the motor control device 100 connected to the angle sensor 301. Note that, for example, a resolver composed of an iron core and a winding can be used as the angle sensor 301. Alternatively, a magnetoresistive effect element such as a GMR element or a Hall element can also be used as the angle sensor 301.

[0017] The high-voltage battery 400 is a DC power source and is electrically connected to the inverter 200. The DC power stored in the high-voltage battery 400 is converted into three-phase AC power with a variable voltage and variable frequency by the inverter 200 based on the semiconductor switch signal output from the motor control device 100 and is supplied to the motor 300.

[0018] The motor control device 100 has functional blocks of a phase difference calculation unit 101, a phase change unit 102, an angle calculation unit 103, a rotation speed calculation unit 104, a torque command value calculation unit 105, and a semiconductor switch signal calculation unit 106. The motor control device 100 is composed of, for example, a microcomputer, and these functional blocks can be realized by executing a predetermined program in the microcomputer. Alternatively, some or all of these functional blocks may be realized using a hardware circuit such as a logic IC or an FPGA.

[0019] The phase difference calculation unit 101 calculates the phase difference between the sine wave signal and the cosine wave signal output from the angle sensor 301. The details of the phase difference calculation method by the phase difference calculation unit 101 will be described later.

[0020] The phase change unit 102 corrects the phases of the sine wave signal and the cosine wave signal respectively based on the phase difference between the sine wave signal and the cosine wave signal calculated by the phase difference calculation unit 101. The details of the phase correction method for the sine wave signal and the cosine wave signal by the phase change unit 102 will be described later.

[0021] The angle calculation unit 103 calculates the magnetic pole position of the motor 300 based on the sine wave signal and the cosine wave signal whose phases have been corrected by the phase change unit 102. Here, for example, the magnetic pole position of the motor 300 can be calculated from the phases of the corrected sine wave signal and cosine wave signal by a well-known calculation formula using trigonometric functions.

[0022] The rotation speed calculation unit 104 calculates the rotation speed (rotation rate) of the motor 300 by measuring the change amount per unit time of the magnetic pole position calculated by the angle calculation unit 103.

[0023] The torque command value calculation unit 105 calculates a torque command value for the motor 300 based on the target torque of the motor 300 input from an upper control device (not shown).

[0024] The semiconductor switch signal calculation unit 106 calculates a semiconductor switch signal for each semiconductor switch element 201 based on the torque command value calculated by the torque command value calculation unit 105, the magnetic pole position and the rotation speed of the motor 300 calculated by the angle calculation unit 103 and the rotation speed calculation unit 104 respectively, and the current detection signal input from the current sensor 204. The semiconductor switch signal calculation unit 106 can generate, as a semiconductor switch signal, a three-phase pulse train signal having a pulse width corresponding to the three-phase AC power to be output to the motor 300, for example, by performing a well-known PWM calculation.

[0025] The semiconductor switch signal calculated by the semiconductor switch signal calculation unit 106 is output from the motor control device 100 to the inverter 200. In the inverter 200, based on this semiconductor switch signal, a gate drive signal is generated by the gate drive circuit 202, thereby controlling the operation of each semiconductor switch element 201 and converting DC power into three-phase AC power. As a result, the driving of the motor 300 is controlled in the motor drive system.

[0026] Next, the details of the phase difference calculation unit 101 and the phase change unit 102 in the motor control device 100 will be described below with reference to FIGS. 2 to 4.

[0027] FIG. 2 is an explanatory diagram of the relationship between the error of the angle sensor and torque vibration.

[0028] The graph 21 shown in the upper left of FIG. 2 is an example of the sine wave signal and cosine wave signal before correction output from the angle sensor 301. The phase difference between these signals is ideally 90 degrees, but may not actually be 90 degrees due to errors and characteristic variations of components included in the angle sensor 301 and the motor control device 100. Such a phase difference deviation generates a vibrational error like the graph 22 in the calculation result of the magnetic pole position of the motor 300 by the angle calculation unit 103. Also, in the calculation result of the rotational speed of the motor 300 by the rotational speed calculation unit 104, a vibrational error like the graph 23 occurs.

[0029] When the driving of the motor 300 is controlled according to the semiconductor switch signal generated by the semiconductor switch signal calculation unit 106 based on the above calculation results, in the motor 300, there may occur a vibrational torque not included in the torque command value like the graph 24 in FIG. 2. Such torque vibration may lead to deterioration of the riding comfort and operability in the vehicle equipped with the motor drive system.

[0030] On the one hand, in the motor drive system of the present embodiment, in the motor control device 100, a phase difference calculation unit 101 and a phase change unit 102 are provided. Using these, the phases of the sine wave signal and the cosine wave signal output from the angle sensor 301 are corrected so that the phase difference between the sine wave signal and the cosine wave signal is 90 degrees. In the angle calculation unit 103, the magnetic pole position of the motor 300 is calculated using the sine wave signal and the cosine wave signal after phase correction. This prevents the occurrence of oscillatory errors such as those in graph 22 and suppresses the occurrence of torque oscillation in the motor 300.

[0031] Figure 3 is an explanatory diagram of the method for calculating the phase difference by the phase difference calculation unit 101.

[0032] In the motor control device 100, the phase difference calculation unit 101 detects the zero-crossing points for each of the sine wave signal and the cosine wave signal output from the angle sensor 301. The zero-crossing point is the point where the amplitude of the sine wave signal or the cosine wave signal indicates 0, that is, the point where the signal voltage crosses 0 and changes from positive to negative or from negative to positive. The phase difference calculation unit 101 can calculate the phase difference between the sine wave signal and the cosine wave signal based on the intervals between the detected zero-crossing points.

[0033] For example, as shown in Figure 3, consider the case where zero-crossing points P1 and P3 are detected for the cosine wave signal and zero-crossing points P2 and P4 are detected for the sine wave signal. In this case, if the interval from the first zero-crossing point P1 to the next zero-crossing point P2 is T1 and the interval from the second zero-crossing point P1 to the next zero-crossing point P3 is T2, then if the rotational speed of the motor 300 is constant, the interval from the third zero-crossing point P3 to the next zero-crossing point P4 is the same as the interval T1 between the zero-crossing points P1 and P2. Therefore, both the interval between the zero-crossing points P1 and P3 of the cosine wave signal and the interval between the zero-crossing points P2 and P4 of the sine wave signal are obtained as T1 + T2.

[0034] Therefore, the phase difference calculation unit 101 can calculate the phase difference θdiff between the sine wave signal and the cosine wave signal by the following formula (1). θdiff = 180 × T1 ÷ (T1 + T2) ···(1)

[0035] In the phase difference calculation unit 101, the signal periods can be obtained from the intervals between the zero-crossing points respectively detected for the sine wave signal and the cosine wave signal. And if the difference between the signal periods is within a predetermined threshold value, the rotational speed of the motor 300 can be regarded as constant. Therefore, the phase difference calculation unit 101 observes the periods of the sine wave signal and the cosine wave signal input from the angle sensor 301 respectively, and when the difference is within the predetermined threshold value, based on the intervals between the zero-crossing points respectively detected from the sine wave signal and the cosine wave signal, the phase difference can be calculated using Equation (1).

[0036] Note that in the phase difference calculation unit 101, the phase difference between the sine wave signal and the cosine wave signal may be calculated by a method other than the above. Any calculation method can be used as long as the phase difference between the sine wave signal and the cosine wave signal can be appropriately obtained.

[0037] Figure 4 is an explanatory diagram of the phase correction method for the sine wave signal and the cosine wave signal by the phase change unit 102.

[0038] In the motor control device 100, based on the phase difference between the sine wave signal and the cosine wave signal calculated by the phase difference calculation unit 101, the phase change unit 102 changes and corrects the phases of the sine wave signal and the cosine wave signal by the same amount so that the corrected phase difference becomes 90 degrees in electrical angle. Specifically, when the phase difference calculated by the phase difference calculation unit 101 is less than 90 degrees and when it is greater than 90 degrees, the phases of the sine wave signal and the cosine wave signal are changed as follows respectively.

[0039] Let the phases of the current (before correction) sine wave signal and cosine wave signal be θsin0 [deg] and θcos0 [deg] respectively, and let the phase difference calculated by the above-mentioned Equation (1) in the phase difference calculation unit 101 be θdiff [deg]. At this time, when the phase difference θdiff is less than 90 degrees, the phase change unit 102 can calculate the corrected sine wave signal A and cosine wave signal B by, for example, the following Equations (2) and (3). A = SIN(θsin0 - (90 - θdiff) ÷ 2) ···(2) B = COS(θsin0 + (90 - θdiff) ÷ 2) ···(3)

[0040] The phase change unit 102 uses the values obtained by subtracting the phase difference θdiff from 90 degrees and dividing the result by 2 as the phase correction values according to equations (2) and (3). The corrected sine wave signal A is obtained by subtracting the phase correction value from the current phase θsin0 of the sine wave signal, and the corrected cosine wave signal B is obtained by adding the phase correction value to the current phase θcos0 of the cosine wave signal. As a result, for example, as shown in FIG. 4, the corrected cosine wave signal B in which the phase of the original cosine wave signal is advanced by the phase correction value from the current angle and the corrected sine wave signal A in which the phase of the original sine wave signal is delayed by the phase correction value from the current angle can be obtained respectively.

[0041] Also, when the phase difference θdiff is greater than 90 degrees, the phase change unit 102 can calculate the corrected sine wave signal A and the cosine wave signal B respectively according to equations (4) and (5) below. A = SIN(θsin0 + (θdiff - 90) ÷ 2) ···(4) B = COS(θsin0 - (θdiff - 90) ÷ 2) ···(5)

[0042] The phase change unit 102 uses the values obtained by subtracting 90 degrees from the phase difference θdiff and dividing the result by 2 as the phase correction values according to equations (4) and (5). The corrected sine wave signal A is obtained by adding the phase correction value to the current phase θsin0 of the sine wave signal, and the corrected cosine wave signal B is obtained by subtracting the phase correction value from the current phase θcos0 of the cosine wave signal. As a result, the corrected cosine wave signal B in which the phase of the original cosine wave signal is delayed by the phase correction value from the current angle and the corrected sine wave signal A in which the phase of the original sine wave signal is advanced by the phase correction value from the current angle can be obtained respectively.

[0043] FIG. 5 is a diagram showing a comparison example between the calculated value and the true value of the angle (magnetic pole position) of the rotor 302 obtained from the sine wave signal and the cosine wave signal before and after the phase change, respectively.

[0044] When an error is included in the phase difference between the sine wave signal and the cosine wave signal output from the angle sensor 301, before the phase change by the phase change unit 102, for example, as shown in FIG. 5(a), the calculated value obtained by the angle calculation unit 103 vibrates up and down with respect to the true value of the angle of the rotor 302. On the other hand, after the phase change by the phase change unit 102, for example, as shown in FIG. 5(b), the calculated value obtained by the angle calculation unit 103 can be made to coincide with the true value of the angle of the rotor 302. From this, it can be seen that the magnetic pole position of the motor 300 can be calculated with high accuracy.

[0045] When the phase difference θdiff is less than 90 degrees, the phase change unit 102 calculates the corrected sine wave signal A and the cosine wave signal B using equations (2) and (3), respectively. On the other hand, when the phase difference θdiff is greater than 90 degrees, the phase change unit 102 calculates the corrected sine wave signal A and the cosine wave signal B using equations (4) and (5), respectively. That is, in any case, the phases of the sine wave signal and the cosine wave signal are corrected by changing them by the same amount so that the phase difference between the corrected sine wave signal A and the cosine wave signal B becomes 90 degrees in electrical angle. As a result, even when there is an angle offset between the angle sensor 301 and the rotor 302, and this angle offset causes an offset error in the phases of the sine wave signal and the cosine wave signal output from the angle sensor 301, respectively, in the calculated value of the magnetic pole position obtained by the angle calculation unit 103, the average value of the offset error during one rotation of the rotor 302 can be made zero. Therefore, even when there is an offset error, the calculated value can be made to coincide with the true value of the angle of the rotor 302, and the magnetic pole position of the motor 300 can be calculated with high accuracy.

[0046] FIG. 6 is an explanatory diagram of a phase difference detection method when the motor rotation speed is changing.

[0047] In the motor control device 100, as described above, the phase difference calculation unit 101 detects the zero-crossing points for each of the sine wave signal and the cosine wave signal output from the angle sensor 301, and calculates the periods of the sine wave signal and the cosine wave signal from the intervals between the zero-crossing points. Then, when the difference between these signal periods is within a predetermined threshold, the phase difference between the sine wave signal and the cosine wave signal is calculated by Equation (1). This is because when the rotational speed of the motor 300 is changing, the periods of the sine wave signal and the cosine wave signal are also changing, so the phase difference cannot be calculated correctly. That is, when calculating the rotational speed of the motor 300 based on the magnetic pole position calculated using the phase difference calculated in a state where the rotational speed of the motor 300 is changing, it is impossible to determine whether the vibration included in the calculation result is due to the vibration of the phase difference or due to the change in the rotational speed of the motor 300. Therefore, in the phase difference calculation unit 101, it is preferable to calculate the phase difference between the sine wave signal and the cosine wave signal when the change in the rotational speed of the motor 300 can be regarded as being within a certain range.

[0048] For example, as shown in FIG. 6, consider the case where, at high rotational speeds when the rotational speed of the motor 300 is high, the intervals between the zero-crossing points of the sine wave signal and the cosine wave signal input from the angle sensor 301 to the phase difference calculation unit 101 are T1, T2, and T1, respectively. In this case, the difference between the period T2 + T1 of the sine wave signal and the period T1 + T2 of the cosine wave signal is 0, and the phase difference θdiff can be calculated by Equation (1).

[0049] On the other hand, when the rotational speed of the motor 300 shifts from high rotational speed to low rotational speed, the difference between the period T2 + T1 of the sine wave signal and the period T1 + T3 of the cosine wave signal is (T2 + T1) - (T1 + T3). When this period difference is within a predetermined threshold, the phase difference calculation unit 101 performs the calculation of the phase difference between the sine wave signal and the cosine wave signal, and when it exceeds the threshold, the calculation of the phase difference is not performed.

[0050] Also, at low rotation speeds where the rotation speed of the motor 300 is low, the difference between the period T5 + T4 of the sine wave signal and the period T4 + T5 of the cosine wave signal becomes 0. By replacing T1 and T2 in Equation (1) with T4 and T5 respectively, the phase difference θdiff can be calculated using Equation (1) in the same way as at high rotation speeds.

[0051] The above threshold value is determined by how much the phase difference between the sine wave signal and the cosine wave signal needs to approach the ideal value of 90 degrees. That is, at the magnetic pole position obtained from the corrected sine wave signal A and cosine wave signal B calculated by the aforementioned Equation (2), (3) or Equation (4), (5), depending on how much the oscillatory error due to this phase difference deviation is allowed and how much the torque oscillation of the motor 300 caused thereby needs to be suppressed, the threshold value of the period difference for the phase difference calculation unit 101 to perform the phase difference calculation between the sine wave signal and the cosine wave signal is determined.

[0052] For example, when the period difference between the sine wave signal and the cosine wave signal is X, the phase difference θdiff between the sine wave signal and the cosine wave signal can be calculated by the following Equation (6) obtained by transforming Equation (1). Note that when X = 0 in Equation (6), it becomes the same as Equation (1). θdiff = 180 × T1 ÷ (T1 + T2 + X) ···(6)

[0053] According to one embodiment of the present invention described above, the following operational effects are achieved.

[0054] (1) The motor control device 100 is connected to an angle sensor 301 that outputs a sine wave signal and a cosine wave signal that change according to the magnetic pole position of the motor 300. Based on the sine wave signal and the cosine wave signal output from the angle sensor 301, it calculates the magnetic pole position and uses the magnetic pole position to control the motor 300. The motor control device 100 includes a phase difference calculation unit 101 that calculates the phase difference between the sine wave signal and the cosine wave signal, and a phase change unit 102 that corrects the phases of the sine wave signal and the cosine wave signal by changing their phases by the same amount based on the phase difference calculated by the phase difference calculation unit 101 so that the corrected phase difference becomes 90 degrees in electrical angle. By doing so, the magnetic pole position of the motor 300 can be calculated with high precision.

[0055] (2) When the phase difference θdiff is less than 90 degrees, the phase change unit 102 uses the expressions (2) and (3) to use half of the value obtained by subtracting the phase difference θdiff from 90 degrees as the phase correction value, adds the phase correction value to the phase of the cosine wave signal, and subtracts the phase correction value from the phase of the sine wave signal to correct the phases of the sine wave signal and the cosine wave signal respectively. When the phase difference θdiff is greater than 90 degrees, the phase change unit 102 uses the expressions (4) and (5) to use half of the value obtained by subtracting 90 degrees from the phase difference θdiff as the phase correction value, subtracts the phase correction value from the phase of the cosine wave signal, and adds the phase correction value to the phase of the sine wave signal to correct the phases of the sine wave signal and the cosine wave signal respectively. By doing so, in each of the cases where the phase difference between the sine wave signal and the cosine wave signal is less than 90 degrees and greater than 90 degrees, the phases of the sine wave signal and the cosine wave signal can be appropriately corrected.

[0056] (3) When the period difference between the sine wave signal and the cosine wave signal is within a predetermined threshold, the phase difference calculation unit 101 calculates the phase difference θdiff between the sine wave signal and the cosine wave signal based on the interval between the 0-crossing point of the sine wave signal and the 0-crossing point of the cosine wave signal using the expression (6). By doing so, the error included in the phase difference between the sine wave signal and the cosine wave signal can be accurately obtained.

[0057] (4) The motor control device 100 includes an angle calculation unit 103 that calculates the magnetic pole position based on the sine wave signal and the cosine wave signal whose phases are corrected by the phase change unit 102. By doing so, the calculation of the magnetic pole position of the motor 300 can be realized with high precision using the sine wave signal and the cosine wave signal whose phases are corrected so that the corrected phase difference becomes 90 degrees in electrical angle.

[0058] (5) The motor control device 100 includes a rotation speed calculation unit 104 that calculates the rotation speed of the motor 300 based on the magnetic pole position calculated by the angle calculation unit 103, the magnetic pole position calculated by the angle calculation unit 103, the rotation speed of the motor 300 calculated by the rotation speed calculation unit 104, and a torque command value input from the torque command value calculation unit 105. And a semiconductor switch signal calculation unit 106 that calculates a semiconductor switch signal for controlling the operation of the plurality of semiconductor switch elements 201. The motor 300 is connected to an inverter 200 having a plurality of semiconductor switch elements 201, and the inverter 200 switches the plurality of semiconductor switch elements 201 at a predetermined timing based on the semiconductor switch signal output from the semiconductor switch signal calculation unit 106, thereby converting DC power into AC power and outputting it to the motor 300. By doing so, the motor 300 can be appropriately controlled using the magnetic pole position of the motor 300 calculated with high precision, and vibration in the output torque of the motor 300 can be suppressed.

[0059] In the above-described embodiment, an application example to a motor drive system used in an electric vehicle such as an electric vehicle or a hybrid vehicle has been described. However, the present invention is not limited to this. The present invention can be applied to a motor control device used in any motor drive system as long as it is connected to a motor having an angle sensor and calculates the magnetic pole position based on the sine wave signal and the cosine wave signal output from the angle sensor to control the motor.

[0060] Further, the present invention is not limited to the above-described embodiment, and various changes can be made without departing from the spirit of the present invention.

Explanation of Reference Numerals

[0061] 100…Motor control device, 101…Phase difference calculation unit, 102…Phase change unit, 103…Angle calculation unit, 104…Rotation speed calculation unit, 105…Torque command value calculation unit, 106…Semiconductor switch signal calculation unit, 200…Inverter, 201…Semiconductor switch element, 202…Gate drive circuit, 203…Smoothing capacitor, 204…Current sensor, 300…Motor, 301…Angle sensor, 302…Rotor, 303…Stator, 400…High-voltage battery

Claims

1. A motor control device connected to an angle sensor that outputs a sine wave signal and a cosine wave signal that change according to the magnetic pole position of a motor, calculates the magnetic pole position based on the sine wave signal and the cosine wave signal output from the angle sensor, and controls the motor using the magnetic pole position, comprising: a phase difference calculation unit that calculates the phase difference between the sine wave signal and the cosine wave signal; a phase change unit that corrects the phases of the sine wave signal and the cosine wave signal by changing the phases of the sine wave signal and the cosine wave signal by the same amount so that the corrected phase difference becomes 90 degrees in electrical angle based on the phase difference calculated by the phase difference calculation unit. A motor control device comprising:

2. In the motor control device according to Claim 1, the phase change unit, when the phase difference is less than 90 degrees, uses half of the value obtained by subtracting the phase difference from 90 degrees as a phase correction value, adds the phase correction value to the phase of the cosine wave signal, and subtracts the phase correction value from the phase of the sine wave signal, thereby correcting the phases of the sine wave signal and the cosine wave signal respectively; when the phase difference is greater than 90 degrees, uses half of the value obtained by subtracting 90 degrees from the phase difference as a phase correction value, subtracts the phase correction value from the phase of the cosine wave signal, and adds the phase correction value to the phase of the sine wave signal, thereby correcting the phases of the sine wave signal and the cosine wave signal respectively. A motor control device

3. In the motor control device according to Claim 1, the phase difference calculation unit calculates the phase difference between the sine wave signal and the cosine wave signal based on the interval between the 0-crossing point of the sine wave signal and the 0-crossing point of the cosine wave signal when the period difference between the sine wave signal and the cosine wave signal is within a predetermined threshold. A motor control device

4. In the motor control device according to any one of Claims 1 to 3, an angle calculation unit that calculates the magnetic pole position based on the sine wave signal and the cosine wave signal whose phases have been corrected by the phase change unit. A motor control device

5. In the motor control device according to Claim 4, a rotation speed calculation unit that calculates the rotation speed of the motor based on the magnetic pole position calculated by the angle calculation unit, A semiconductor switch signal calculation unit that calculates a semiconductor switch signal for controlling the operations of a plurality of semiconductor switch elements based on the magnetic pole position calculated by the angle calculation unit, the rotation speed of the motor calculated by the rotation speed calculation unit, and an input torque command value. The motor is connected to an inverter having the plurality of semiconductor switch elements. The inverter is a motor control device that converts DC power into AC power and outputs it to the motor by switching each of the plurality of semiconductor switch elements at a predetermined timing based on the semiconductor switch signal output from the semiconductor switch signal calculation unit.

6. A method for calculating the magnetic pole position based on a sine wave signal and a cosine wave signal that change according to the magnetic pole position of a motor, comprising: calculating a phase difference between the sine wave signal and the cosine wave signal; correcting the phase of the sine wave signal and the cosine wave signal by changing each by the same amount based on the calculated phase difference so that the corrected phase difference is 90 degrees in electrical angle; A magnetic pole position calculation method for calculating the magnetic pole position based on the sine wave signal and the cosine wave signal whose phases have been corrected.

Citation Information

Patent Citations

  • Compensation value calculation method of angle detection sensor, and angle detecting sensor using this

    JP2006194861A

  • Rotation angle detection device and electric power steering device using the same

    JP2012068114A

  • Rotation angle detector and rotation angle detection method

    JP2018185287A

  • Vehicle power assisting system

    JP2020141529A

  • Angle detection device

    WO2020213181A1