A method for predicting rotor temperature of permanent magnet synchronous motor

By calculating the difference in the rotor magnetic flux and Fourier decomposition, the rotor temperature is calculated using the motor's q-axis voltage, the problem of difficult to measure the rotor temperature of the motor is solved, and accurate temperature detection and control performance improvement is achieved.

CN115765556BActive Publication Date: 2025-08-29SUZHOU AUTOMOBILE RES INST OF TSINGHUA UNIV (WUJIANG) +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211333465.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-10-28
Publication Date
2025-08-29
Estimated Expiration
2042-10-28

AI Technical Summary

Technical Problem

In the control of permanent magnet synchronous motors, the motor rotor temperature is difficult to measure through sensors, resulting in inaccurate calculation of motor parameters and affecting control accuracy. The existing methods are difficult to meet the control accuracy requirements.

Method used

By calculating the difference between the reference magnetic flux of the rotor at room temperature and the current temperature, the rotor temperature is calculated using Fourier decomposition and the motor's q-axis voltage to achieve accurate temperature detection without sensors.

Benefits of technology

It improves the accuracy of rotor temperature detection, saves costs, and improves the control performance of the motor.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure FDA0005477374480000011
    Figure FDA0005477374480000011
  • Figure FDA0005477374480000013
    Figure FDA0005477374480000013
  • Figure FDA0005477374480000015
    Figure FDA0005477374480000015
Patent Text Reader

Abstract

The present invention discloses a method for predicting the rotor temperature of a permanent magnet synchronous motor, comprising the steps of: S1, calculating the rotor reference flux at room temperature; S2, calculating the rotor flux during normal operation of the motor, that is, the rotor flux at the current temperature; S3, predicting the current rotor temperature: the present invention selects the rotor flux value at room temperature as a reference value, and then obtains the current rotor temperature value based on the difference between the rotor flux value at the current temperature and the rotor flux reference value at room temperature. This method does not require a sensor and can effectively save costs. At the same time, based on the detection method provided by the present invention, the rotor temperature can also be inferred by detecting the q-axis voltage of the motor in the use environment of the motor, so that the actual temperature of the rotor can be more accurately detected in the use environment of the motor, thereby improving the control performance of the motor.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of permanent magnet synchronous motors, and in particular to a method for predicting the rotor temperature of a permanent magnet synchronous motor. Background Art

[0002] In the control of permanent magnet synchronous motors, the accuracy of motor parameter calculation directly impacts control precision. Motor parameters are closely related to motor temperature. Of all motor components, rotor temperature has the greatest impact on motor parameters, making accurate rotor temperature measurement crucial. Rotor temperature is difficult to measure using sensors, and conventional calculation methods that set the rotor temperature to a fixed value often struggle to meet control accuracy requirements. Therefore, a rotor temperature calculation method is needed to improve the control performance of permanent magnet synchronous motors. Summary of the Invention

[0003] The purpose of the present invention is to determine that the flux value of a motor rotor changes with the rotor temperature. Therefore, the rotor flux value at room temperature can be selected as a reference value, and then the current rotor temperature value can be obtained based on the difference between the rotor flux value at the current temperature and the rotor flux reference value at room temperature. This method does not require a sensor and can effectively save costs. At the same time, based on the detection method provided by the present invention, the rotor temperature can also be calculated by detecting the q-axis voltage of the motor in the motor's operating environment, thereby more accurately detecting the actual rotor temperature in the motor's operating environment.

[0004] The technical solution of the present invention is:

[0005] A method for predicting the rotor temperature of a permanent magnet synchronous motor comprises the following steps:

[0006] S1. Calculate the rotor reference flux at room temperature;

[0007] S2. Calculate the rotor flux during normal operation of the motor, that is, the rotor flux at the current temperature;

[0008] S3. Predict the current rotor temperature:

[0009] Assume that the rotor temperature increment TempDelta = f (rotor flux at current temperature / reference flux at 0°C), which can be expressed as:

[0010] Taking the inverse function of TempDelta=f(cPsiTempMod), we get:

[0011] cPsiTempMod=f -1 (TempDelta);

[0012] Then using Fourier decomposition, we get:

[0013] cPsiTempMod=1+cTemp1_P*TempDelta+cTemp2_P*TempDelta 2 ;

[0014] Let: cPsiTempMod-1=cTemp1_P*TempDelta+cTemp2_P*TempDelta 2 ;

[0015] Solve the above quadratic equation to get TempDelta;

[0016] Combined with: cTempRtr=TempRtr-TempDeltaRef, and TempRtrRef is zero, we can obtain the current rotor temperature TempRtr=cTempRtr.

[0017] Preferably, in S1, the rotor reference flux at room temperature is calculated under the following conditions: the motor is left to stand for several hours before starting to ensure that the rotor temperature is the same as the stator temperature and the stator temperature does not exceed 30°C; the stator current is approximately 0, and a fluctuation of 2A is allowed. When the above two conditions are met, the reference flux is calculated using the voltage equation, that is, The stator effective current I s =0, it becomes:

[0018] After calculation according to this formula, it is converted into the reference magnetic flux value at 0°C, where U q is the q-axis voltage; U d is the d-axis voltage; R s is the stator resistance; I q is the q-axis current; I d is the d-axis current; ω r is the rotor speed; is the rotor flux; f: motor angular frequency.

[0019] Preferably, in S2, the rotor flux of the motor is calculated during normal operation, using the formula get.

[0020] Preferably, before calculating the flux reference value in S1, the rotor flux is calibrated:

[0021] (1) Stator current I s Filter and get I sFlt ;

[0022] (2) If I sFltIf the value is less than the specified threshold value IsMaxPsiExcClb_P, the rotor flux linkage is calibrated. First, bPsiExcClbActv=true, and then each element in PT1, including the stator frequency FrqStr, U d 、U q and U smax Perform filtering processing;

[0023] (3) Assign an initial value to the rotor temperature calibration value TempRtrClb, and then calculate a correction factor cPsiTempRtrClb.

[0024] Preferably, after the rotor flux is calibrated, the flux reference value is calculated:

[0025] (1) According to And perform filtering to obtain the filtered stator voltage U sFlt ;

[0026] (2) Calculate the error voltage U qErr ;

[0027] (3) Considering the error voltage, calculate the effective q-axis voltage: U q =U sFlt +U qErr ;

[0028] (4) Filter the stator frequency and take the absolute value to obtain FrqStrFltAbs;

[0029] (5) Voltage equation in I s =0, it becomes: According to this formula, the rotor flux is obtained at I s = 0 and 0 ° C (corrected by factor cPsiTempRtrClb)

[0030] Preferably, to ensure that the rotor temperature is the same as the stator temperature, there are two situations:

[0031] First, the T15 shutdown state is valid, and the shutdown time is greater than the minimum value tPsiPlausDwnTimeMinLim_P. In addition, the stator temperature is less than the maximum value TempStrMaxPsiExcClb_P.

[0032] Second, the difference between the motor stator temperature and the internal combustion engine temperature does not exceed the maximum limit TempEnvDifMax_P, and the stator temperature is less than the matching value TempLimMax_P;

[0033] If one of the above two cases holds, the current environment is considered a low-temperature environment. The rotor flux linkage value PsiExcRefCld at low temperature is considered equal to PsiExcRefUnlim. And if the range of PsiExcRefUnlim meets the requirements, that is, PsiExcRefMin_P < PsiExcRefUnlim < PsiExcRefMax_P, the rotor flux linkage reference value PsiExcRef is also considered equal to PsiExcRefUnlim; if PsiExcRefUnlim is not within the above range, it is considered that the calibration fails, and the initial value GLB_PsiExcElMTyp_P is still assigned to PsiExcRef;

[0034] When neither of the above two cases holds, the current environment is considered a high-temperature environment. The rotor flux linkage value PsiExcRefHot at high temperature is considered equal to PsiExcRefUnlim, and stAlRtrOfs = OfsInaccurate_E.

[0035] The advantages of the present invention are:

[0036] The rotor temperature prediction method for the motor provided by the present invention can improve the accuracy of the rotor temperature, and does not require a sensor, and can effectively save costs. At the same time, based on the detection method provided by the present invention, it is also possible to infer the rotor temperature by detecting the q-axis voltage of the motor in the operating environment of the motor, so that the actual temperature of the rotor can be detected more accurately in the operating environment of the motor, thereby improving the control performance of the motor. Specific embodiments

[0037] The prediction method for the rotor temperature of the permanent magnet synchronous motor of the present invention adopts the following calculation model for the rotor temperature, which specifically includes the steps:

[0038] S1. Calculate the rotor reference flux linkage at room temperature. The conditions are: after the motor is left stationary for several hours and then started to ensure that the rotor temperature is the same as the stator temperature and the stator temperature does not exceed 30°C; the stator current is approximately 0, allowing a fluctuation of 2A. Under the condition of meeting the above two conditions, use the voltage equation to calculate the reference flux linkage, that is When the effective stator current I s = 0, it becomes: After calculating according to this formula, convert it to the reference flux linkage value at 0°C, where U q : q-axis voltage; U d : d-axis voltage; R s : stator resistance; I q : q-axis current; ω r : rotor speed; rotor flux linkage; f: motor angular frequency.

[0039] S2. Calculate the rotor flux of the motor during normal operation, that is, the rotor flux at the current temperature. This is done using the formula get.

[0040] S3. Calculate the current rotor temperature, mainly using the following functional relationship:

[0041] The increment of rotor temperature TempDelta = f (flux at current temperature / reference flux at 0°C)

[0042] It can be expressed as:

[0043] Take the inverse function of TempDelta=f(cPsiTempMod) and get: cPsiTempMod=f -1 (TempDelta);

[0044] Then using Fourier decomposition, we get:

[0045] cPsiTempMod=1+cTemp1_P*TempDelta+cTemp2_P*TempDelta 2

[0046] Let: cPsiTempMod-1=cTemp1_P*TempDelta+cTemp2_P*TempDelta 2

[0047] Solve the above quadratic equation to get TempDelta.

[0048] Combined with: cTempRtr=TempRtr-TempDeltaRef, and TempRtrRef is zero, the actual rotor temperature TempRtr=cTempRtr is obtained.

[0049] The following describes the program implementation process. In a certain product, m_IsCtl is responsible for calibrating the rotor reference flux module. The specific implementation process is as follows:

[0050] 1. If bEnblPsiExcClb is true, calibrate the rotor flux:

[0051] (1) Stator current I s Filter and get I sFlt ;

[0052] (2) If I sFlt If the value is less than the specified threshold value IsMaxPsiExcClb_P, the rotor flux linkage is calibrated.

[0053] bPsiExcClbActv=true,then for each element in PT1, including stator frequency FrqStr, U d 、U q

[0054] and U smax Perform filtering processing;

[0055] (3) Assign an initial value to the rotor temperature calibration value TempRtrClb (if bUseTempStrClb_Sw is true, assign the stator temperature to it, otherwise assign a matching value TempRtrClb_P to it), and then calculate a correction

[0056] Factor cPsiTempRtrClb (this factor is used to correct the flux linkage to the flux linkage at 0°C).

[0057] 2. After calibrating the rotor flux (bEnblPsiExcClb == false), calculate the flux reference value:

[0058] (1) According to And perform filtering to obtain the filtered stator voltage U sFlt ;

[0059] (2) Calculate the error voltage U qErr ;

[0060] (3) Considering the error voltage, calculate the effective q-axis voltage: U q =U sFlt +U qErr ;

[0061] (4) Filter the stator frequency and take the absolute value to obtain FrqStrFltAbs;

[0062] (5) Voltage equation in I s =0, it becomes:

[0063] According to this formula, the rotor flux is obtained at I s = 0 and 0 ° C (corrected by factor cPsiTempRtrClb)

[0064] The limit reference value below

[0065] (6) Ensure that the rotor temperature is the same as the stator temperature. There are two situations:

[0066] First, the T15 off state is valid, and the off time is greater than the minimum value tPsiPlausDwnTimeMinLim_P. Additionally, the stator temperature is less than the maximum value TempStrMaxPsiExcClb_P;

[0067] Second, the difference between the motor stator temperature and the internal combustion engine temperature does not exceed the maximum limit TempEnvDifMax_P, and the stator temperature is less than the matching value TempLimMax_P;

[0068] If either of the above two conditions is met, the current environment is considered a low-temperature environment. It is considered that the rotor flux linkage value PsiExcRefCld at low temperature is equal to PsiExcRefUnlim. And if the range of PsiExcRefUnlim meets the requirements, that is, PsiExcRefMin_P < PsiExcRefUnlim < PsiExcRefMax_P, then the rotor flux linkage reference value PsiExcRef is also considered equal to PsiExcRefUnlim; if PsiExcRefUnlim is not within the above range, it is considered that the calibration fails, and the initial value GLB_PsiExcElMTyp_P is still assigned to PsiExcRef. When neither of the above two conditions is met, the current environment is considered a high-temperature environment. It is considered that the rotor flux linkage value PsiExcRefHot at high temperature is equal to PsiExcRefUnlim, and stAlRtrOfs = OfsInaccurate_E.

[0069] 3. Calculate cPsiDeltaTemp according to different motor operating regions:

[0070] (1) Divide the motor operating range into five regions from 0 to 4: If the stator frequency is less than FrqStrMax0_P, it is defined that the motor operates in region 0. In this region, it is difficult to calculate accurately, so directly assign cPsiDeltaTemp0_P to cPsiDeltaTemp, and the filter time constant is dtDivTau = dtDivTau0_P; otherwise, it is defined that the motor operates in regions 1 to 4. In these four regions, use cPsiTempMod to calculate cPsiDeltaTemp, that is, cPsiDeltaTemp = cPsiTempMod - 1, and limit cPsiDeltaTemp to eliminate false values.

[0071] (2) Further divide the four operating regions from 1 to 4 according to the magnitude of the q-axis current, assign different filter time constants to different regions, and then use this filter time constant to filter cPsiDeltaTemp to obtain cPsiDeltaTempFlt.

[0072] 4. Calculate the rotor temperature increment TempDelta:

[0073] If cTemp2_P is less than cTemp2Max_C, retain the quadratic term cTemp2_P*TempDelta^2, consider cPsiDeltaTemp=cTemp1_P*TempDelta+cTemp2_P*TempDelta^2, and solve the quadratic equation to obtain TempDelta; otherwise ignore the quadratic term cTemp2_P*TempDelta^2, consider cPsiDeltaTemp=cTemp1_P*TempDelta, and solve the linear equation to obtain TempDelta.

[0074] 5. Calculate the current rotor temperature TempRtr:

[0075] According to TempDelta=TempRtr−TempRtrRef, combined with the reference temperature being 0°C (since the reference flux is the flux at 0°C), TempRtr=TempDelta (TempDelta is limited between TempRtrMin_P and TempRtrMax_P).

[0076] The above embodiments are intended only to illustrate the technical concepts and features of the present invention. Their purpose is to enable those skilled in the art to understand the contents of the present invention and implement them accordingly. They are not intended to limit the scope of protection of the present invention. Any modifications made based on the spirit of the main technical solution of the present invention shall be included in the scope of protection of the present invention.

Claims

1. A method for predicting the rotor temperature of a permanent magnet synchronous motor, characterized in that: Including steps: S1. Calculate the rotor reference flux linkage at normal temperature; S2. Calculate the rotor flux linkage when the motor is operating normally, i.e., the rotor flux linkage at the current temperature; S3. Predict the current rotor temperature: Assume that the rotor temperature increment TempDelta = f (rotor flux at current temperature / reference flux at 0°C), which can be expressed as: Take the inverse function of TempDelta = f(cPsiTempMod), obtaining: cPsiTempMod=f -1 (TempDelta); Then, using Fourier decomposition, obtain: ePsiTempMod=1+cTemp1_P*TempDelta+cTemp2_P*TempDelta 2 ; Let: cPsiTempMod-1 = cTemp1_P * TempDelta + cTemp2_P * TempDelta 2 ; Solve the above quadratic equation to obtain TempDelta; Then, combined with: cTempRtr = TempRtr - TempDeltaRef, and TempRtrRef is zero, thus obtaining the current rotor temperature TempRtr = cTempRtr; In S1, the rotor reference flux at room temperature is calculated. The conditions are: the motor is left to stand for several hours before starting to ensure that the rotor temperature is the same as the stator temperature and the stator temperature does not exceed 30°C; the stator current is approximately 0, and a fluctuation of 2A is allowed. When the above two conditions are met, the reference flux is calculated using the voltage equation, that is, The stator effective current I s =0, it becomes: After calculation according to this formula, it is converted into the reference magnetic flux value at 0°C, where U q is the q-axis voltage; U d is the d-axis voltage; R s is the stator resistance; I q is the q-axis current; I d is the d-axis current; ω r is the rotor speed; is the rotor flux; f: motor angular frequency.

2. The method for predicting the rotor temperature of a permanent magnet synchronous motor according to claim 1, wherein: In S2, the rotor flux of the motor is calculated during normal operation, using the formula get.

3. The method for predicting the rotor temperature of a permanent magnet synchronous motor according to claim 2, wherein: Before calculating the flux linkage reference value in S1, calibrate the rotor flux linkage first: (1) Stator current I s Filter and get I sFlt ; (2) If I sFlt If the value is less than the specified threshold value IsMaxPsiExcClb_P, the rotor flux linkage is calibrated. bPsiExcClbActv=true,then for each element in PT1, including stator frequency FrqStr, U d 、U q and U smax Perform filtering processing; (3) Assign an initial value to the rotor temperature calibration value TempRtrClb, and then calculate a correction factor cPsiTempRtrClb.

4. The method for predicting the rotor temperature of a permanent magnet synchronous motor according to claim 3, wherein: After calibrating the rotor flux linkage, calculate the flux linkage reference value: (1) According to And perform filtering to obtain the filtered stator voltage U sFlt ; (2) Calculate the error voltage U qErr ; (3) Considering the error voltage, calculate the effective q-axis voltage: U q =U sFlt +I qErr ; (4) Filter the stator frequency and take the absolute value to obtain FrqStrFltAbs; (5) Voltage equation in I s =0, it becomes: According to this formula, the rotor flux is obtained at I s = Limit reference value at 0 and 0℃ The 0°C temperature is corrected using the factor cPsiTemp RtrClb.

5. The method for predicting the rotor temperature of a permanent magnet synchronous motor according to claim 4, characterized in that: To ensure that the rotor temperature is the same as the stator temperature, there are the following two cases: First, the T15 off state is valid, and the off time is greater than the minimum value tPsiPlausDwnTimeMinLim_P. Additionally, the stator temperature is less than the maximum value TempStrMaxPsiExcClb_P; Second, the difference between the motor stator temperature and the internal combustion engine temperature does not exceed the maximum limit TempEnvDifMax_P, and the stator temperature is less than the matching value TempLimMax_P; If either of the above two cases holds, it is considered that the current environment is a low-temperature environment. It is considered that the rotor flux linkage value PsiExcRefCld at low temperature is equal to PsiExcRefUnlim, and if the range of PsiExcRefUnlim meets the requirements, i.e., PsiExcRefMin_P < PsiExcRefUnlim < PsiExcRefMax_P, it is considered that the rotor flux linkage reference value PsiExcRef is also equal to PsiExcRefUnlim; if PsiExcRefUnlim is not within the above range, it is considered that the calibration fails, and the initial value GLB_PsiExcElMTyp_P is still assigned to PsiExcRef; When neither of the above two cases holds, it is considered that the current environment is a high-temperature environment. It is considered that the rotor flux linkage value PsiExcRefHot at high temperature is equal to PsiExcRefUnlim, and stAlRtrOfs = OfsInaccurate_E.

Citation Information

Patent Citations

  • Non-weighted model predictive torque control system and method for permanent-magnet synchronous motors

    CN107017810A

  • Temperature distribution measurement method and system, and hardware device

    CN112202389A