Self-adaptive correction method and system for zero position of motor
By designing an adaptive correction system in motor zero calibration, and using software to record and correct zero compensation values, the zero deviation problem caused by mechanical assembly errors is solved, efficient and automated zero correction is achieved, and cost and operation complexity is reduced.
Patent Information
- Application Number
- CN202411543421.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-31
- Publication Date
- 2025-03-04
AI Technical Summary
The prior art in motor zero calibration is due to mechanical assembly errors, which cannot cover all prototypes, and adding zero calibration process requires additional resources and costs.
Design a motor zero point position adaptive correction system. Through software design, the zero position adaptive correction method is used. While the bench calibration obtains the zero position compensation value, the internal operation parameters of the software are recorded and written to the storage module. The adaptive correction process is run when the motor is offline, and the zero position correction is completed by comparing with the calibration timing parameters.
No additional bench resources are required, and zero adaptive correction is completed by just idle motor, reducing operational complexity and cost and improving zero accuracy.
Smart Images

Figure CN119561440A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the technical field of automobile motor control, and in particular to a motor zero point position adaptive correction method and system. Background Art
[0002] For electric vehicles, the accuracy of the motor zero position is the basis for achieving motor control and has a direct impact on motor performance and energy consumption. Experimental studies have shown that the accuracy of the motor zero position directly affects the peak power and peak torque of the motor, which in turn affects the control effect and operating efficiency of the motor. Zero position deviation will cause the peak power and peak torque of the motor to decrease, thereby affecting the energy consumption performance of the entire vehicle.
[0003] Although existing technologies can achieve zero-position calibration, the method of calibrating the zero position through mechanical zeroing plus random sampling cannot ensure that the mechanical zeroing position is completely consistent due to certain errors in mechanical assembly, resulting in the calibrated zero position being unable to cover all prototypes; and adding a zero-position calibration process after the motor is offline can ensure the accuracy of the zero position of each prototype, but it requires additional bench resources and debugging processes, which adds extra time, equipment and labor costs. Summary of the invention
[0004] The purpose of the present invention is to provide a method and system for adaptively correcting the zero point position of a motor. The system and method can design a set of zero position adaptive correction methods through software to address the zero position deviation caused by installation errors in the mechanical zeroing method of the prior art. While obtaining the zero position compensation value during the bench calibration, the internal operating parameters of the software are recorded and written into a storage module. The adaptive correction process is run when the motor is offline, and the zero position correction is completed by comparing with the parameters during calibration, and the parameters are written into the storage module.
[0005] To achieve this purpose, the present invention designs a motor zero position adaptive correction system, which includes a friction torque detection module and a zero position detection module;
[0006] The friction torque detection module is used to obtain the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, and the average value of the difference between the direct-axis inductance and the quadrature-axis inductance in a preset period in the idling mode after the motor enters the zero-position self-learning process, and estimate the motor friction torque value under the current working condition according to the obtained average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance and the motor torque formula, and then determine whether the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of the zero-position self-learning;
[0007] The zero position detection module is used to reduce the current direct-axis current of the motor to the target value when the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of zero position self-learning, and then recalculate the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within a preset period, and use the recalculated average value of the quadrature-axis current as the measured quadrature-axis current value, calculate the theoretical quadrature-axis current under the current direct-axis current of the motor according to the motor torque formula, the estimated motor friction torque value, and the recalculated average value of the difference between the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within the preset period, and then judge whether the zero position at the current speed is within the valid range according to the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value; if the zero position at the current speed is not within the valid range, the zero position is corrected by changing the zero position compensation value.
[0008] Furthermore, the method for obtaining the average value of the cross-axis current, the average value of the direct-axis current, the average value of the rotor flux, and the average value of the difference between the direct-axis inductance and the cross-axis inductance within a preset period includes: within the preset period, sampling the cross-axis current value, the direct-axis current value, the rotor flux value, the direct-axis inductance and the difference between the cross-axis inductance at the same time intervals, and calculating the average values respectively.
[0009] Furthermore, the method for estimating the motor friction torque value under the current working condition according to the obtained average value of the quadrature-axis current, average value of the direct-axis current, average value of the rotor flux, average value of the difference between the direct-axis inductance and the quadrature-axis inductance, and the motor torque formula includes:
[0010] Among them, T e is the estimated motor friction torque value, i d is the average direct-axis current, i q is the average value of the quadrature axis current, is the average flux of the rotor permanent magnet, L d -L q is the average value of the difference between the direct-axis inductance and the quadrature-axis inductance, and p is the number of pole pairs.
[0011] Furthermore, the method for determining whether the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of zero-position self-learning includes: when the difference between the estimated motor friction torque value and the actual motor friction torque value is within [-a+a]Nm, allowing zero-position self-learning to continue, where a is the motor friction torque variance that allows zero-position self-learning.
[0012] Further, the method for determining whether the zero position at the current rotational speed is within the effective range by the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value includes: reducing the direct-axis current to 1 / 2 of the maximum current amplitude, calculating the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value, and when the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value is within the range [m n], it is determined that the zero position is within the effective range, where [m n] is the maximum error range allowed for the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value.
[0013] Further, when the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value > n or the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value < m, the zero position compensation value will be increased or decreased, and the above method will be repeated to re-determine whether the difference between the estimated motor friction torque value and the actual motor friction torque value and the zero position at the current rotational speed are within the normal range until the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value is within the range [m n].
[0014] Further, during the process of increasing or decreasing the zero position compensation value until the difference between the measured quadrature-axis current value and the theoretically calculated current value reaches within the range [m n], if there are multiple compensation values that meet the requirements, the zero position compensation value corresponding to when the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value is closest to (m + n) / 2 is taken, and the zero position compensation value is the deviation between the measured angular position and the actual angular position.
[0015] Further, increase the rotational speed at an interval of a set step size, obtain the zero position compensation values at multiple rotational speeds. If the deviations of the zero position compensation values at each rotational speed are all within the effective range, the average value is taken as the final zero position compensation value; otherwise, the motor controller exits the self-learning process and returns a fault message indicating that the zero position deviation is too large.
[0016] The motor zero position adaptive correction method designed based on the above motor zero position adaptive correction system includes the following steps:
[0017] After the motor enters the zero position self-learning process, obtain the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor magnetic flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within a preset period in the no-load mode, estimate the motor friction torque value under the current working condition according to the obtained average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor magnetic flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance and the motor torque formula, and then determine whether the difference between the estimated motor friction torque value and the actual motor friction torque value is within the zero position self-learning allowable range;
[0018] When the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of zero-position self-learning, after reducing the current direct-axis current of the motor to the target value, the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, and the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within the preset period are recalculated, and the recalculated average value of the quadrature-axis current is used as the measured quadrature-axis current value. According to the motor torque formula, the estimated motor friction torque value, and the recalculated average value of the difference between the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within the preset period, the theoretical quadrature-axis current of the motor under the current direct-axis current is calculated, and then, according to the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value, it is judged whether the zero position at the current speed is within the valid range. If the zero position at the current speed is not within the valid range, the zero position is corrected by changing the zero position compensation value.
[0019] Beneficial effects of the present invention: In the prior art, there is a method of calibrating the zero position through mechanical zeroing plus random sampling, but due to certain errors in mechanical assembly, it cannot be guaranteed that the mechanical zeroing position is completely consistent, resulting in the calibrated zero position being unable to cover all prototypes; or a zero position calibration process is added after the motor is offline. Although it can ensure the accuracy of the zero position of each prototype, it requires additional bench resources and debugging processes, which adds additional time, equipment and labor costs.
[0020] The present invention does not require bench resources, and only needs to ensure that the motor can idle to complete the zero position adaptive correction process. In addition, the operation is simple, and the process is automatically controlled, which reduces the requirements for operators. The present invention is used in conjunction with a mechanical zeroing motor to greatly reduce the number of zero position calibrations. At the same time, through the adaptive process, the angle deviation caused by the assembly can be effectively corrected to improve the zero position accuracy. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] Figure 1 It is the zero position self-learning flow chart of the present invention;
[0022] Figure 2 It is a structural schematic diagram of the present invention. DETAILED DESCRIPTION
[0023] The present invention is further described in detail below with reference to the accompanying drawings and specific embodiments:
[0024] A specific embodiment of a motor zero position adaptive correction system designed by the present invention:
[0025] Example 1
[0026] like Figure 2 As shown, a motor zero position adaptive correction system includes a friction torque detection module and a zero position detection module;
[0027] The friction torque detection module is used to obtain the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, and the average value of the difference between the direct-axis inductance and the quadrature-axis inductance in a preset period in the idling mode after the motor enters the zero-position self-learning process, and estimate the motor friction torque value under the current working condition according to the obtained average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance and the motor torque formula, and then determine whether the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of the zero-position self-learning;
[0028] The zero position detection module is used to reduce the current direct-axis current of the motor to the target value when the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of zero position self-learning, and then recalculate the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within a preset period, and use the recalculated average value of the quadrature-axis current as the measured quadrature-axis current value, calculate the theoretical quadrature-axis current under the current direct-axis current of the motor according to the motor torque formula, the estimated motor friction torque value, and the recalculated average value of the difference between the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within the preset period, and then judge whether the zero position at the current speed is within the valid range according to the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value; if the zero position at the current speed is not within the valid range, the zero position is corrected by changing the zero position compensation value.
[0029] The actual friction torque value of the motor is a known design value, and the quadrature-axis current and the direct-axis current are also called the Q-axis current and the D-axis current.
[0030] Assuming that the current zero position compensation value is correct, the motor adopts the speed control mode during the self-learning process, the zero position uses the preset value, and the motor controller defaults to the closed state before the self-learning process is activated. After the self-learning process is activated, when the motor controller meets the open-tube condition, that is, the motor high voltage is normal and in a static state, and the motor controller has no faults, the motor controller automatically opens the tube, and the motor enters the idling mode. The speed is the preset speed, which is generally 1000 rpm by default. If the open-tube condition is still not met after a certain time t1, the self-learning process will be exited and the exit reason will be returned: the open-tube condition is not met. The certain time t1 is determined according to the actual situation, for example, it can be set to 1 second or 1 minute. As long as the motor controller does not meet the open-tube condition, it will exit immediately.
[0031] After the motor controller is turned on, it executes speed loop control, with the default speed of 1000 rpm, and monitors motor current, speed and other signals. If the motor speed or current increases abnormally, such as when the motor speed continues to increase or reverses, the current output is immediately stopped until the motor speed drops to zero, and the motor controller shuts down and exits the self-learning process, and reports an error. During the self-learning process, if the motor speed exceeds a certain value, it immediately enters the fault handling mode, exits the self-learning process and returns the fault information; if there is no abnormality, after t2 time, the speed is set to N1. This speed needs to be set smaller to prevent the zero-position deviation from being too large, causing the actual torque to be opposite to the expected torque direction. The motor speed is monitored in real time. If the motor speed continues to increase, or is opposite to the speed direction, the current command is immediately output to 0. After the actual motor speed drops to 0, the zero-position compensation value is increased by 180° and the speed is set to N1 again. If the motor speed can be stabilized near the speed N1, it will enter the subsequent process after t2 time, otherwise it will shut down and exit the self-learning process and return the reason. t2 is set according to actual needs to ensure that the motor speed is stable near the speed.
[0032] In the above technical solution, the method for obtaining the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, and the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within a preset period includes: within the preset period, sampling the quadrature-axis current value, the direct-axis current value, the rotor flux value, the direct-axis inductance and the difference between the quadrature-axis inductance at the same time intervals, and calculating the average values respectively.
[0033] The direct-axis inductance and quadrature-axis inductance cannot be directly measured, and only the difference between the direct-axis inductance and the quadrature-axis inductance can be measured. The difference between the quadrature-axis current, direct-axis current, rotor flux, direct-axis inductance and the quadrature-axis inductance will cause small-range value fluctuations due to the pi adjustment control of the motor speed control, and the average value needs to be calculated to reduce the data error.
[0034] When calculating the average value, set the speed to the first motor self-learning speed N1. After the motor speed stabilizes for t3 time, the motor controller collects the Q-axis current value, D-axis current value, rotor flux value and the difference between the D-axis inductance and the Q-axis inductance at intervals of Δt within the set period. The set period is selected based on the detection accuracy and control stability of the motor controller, and it only needs to reflect the actual current. t3 and Δt can be selected according to actual needs.
[0035] In the above technical solution, the method for estimating the motor friction torque value under the current working condition according to the obtained average value of the quadrature-axis current, average value of the direct-axis current, average value of the rotor flux, average value of the difference between the direct-axis inductance and the quadrature-axis inductance, and the motor torque formula includes:
[0036] Among them, T e is the estimated motor friction torque value, i dis the average direct-axis current, i q is the average value of the quadrature axis current, is the average flux of the rotor permanent magnet, L d -L q is the average value of the difference between the direct-axis inductance and the quadrature-axis inductance, and p is the number of pole pairs.
[0037] The parameters obtained through the formula and measurement can only estimate the motor output torque more accurately, but cannot obtain the completely accurate motor output torque.
[0038] In the above technical scheme, the method for judging whether the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of zero-position self-learning includes: when the difference between the estimated motor friction torque value and the actual motor friction torque value is within [-a+a]Nm, zero-position self-learning is allowed to continue, and a is the motor friction torque variance that allows zero-position self-learning.
[0039] When the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of zero-position self-learning, the next step is to determine whether the motor zero point is within a reasonable range; if the difference between the estimated motor friction torque value and the actual motor friction torque value is not within the allowable range of zero-position self-learning, the self-learning process is exited and the exit reason is fed back: the friction torque deviation is too large.
[0040] In the above technical scheme, the method for judging whether the zero position at the current speed is within the valid range by the difference between the measured cross-axis current value and the theoretical cross-axis current value includes: reducing the direct-axis current to 1 / 2 of the maximum current amplitude, calculating the difference between the measured cross-axis current value and the theoretical cross-axis current value, and when the difference between the measured cross-axis current value and the theoretical cross-axis current value is within the range [mn], judging that the zero position is within the valid range, [mn] being the maximum error range allowed for the difference between the measured cross-axis current value and the theoretical cross-axis current value.
[0041] Reduce the D-axis current from the current value to 1 / 2 of the peak current. This 1 / 2 is an empirical value. When the motor zero position is inaccurate, the larger the absolute value of the D-axis current is, the larger the Q-axis component generated is, and the greater the impact on the torque is. When the motor zero position is accurate, the change in the D-axis current has basically no effect on the torque. Therefore, when the D-axis current is reduced from the current value to 1 / 2 of the peak current, the motor output torque basically does not change. Therefore, the estimated motor friction torque value can be used to calculate the theoretical cross-axis current value.
[0042] According to the motor torque formula, the estimated motor friction torque value, and the recalculated average value of the direct-axis current, the average value of the rotor flux, and the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within a preset period, a method for calculating the theoretical quadrature-axis current of the motor under the current direct-axis current includes:
[0043] wherein, T e is the estimated motor friction torque value, i d ’ is the average value of the direct-axis current after recalculation, i q ’ is the theoretical quadrature-axis current value, is the average value of the rotor permanent magnet flux linkage after recalculation, L d ’ - L q ’ is the average value of the difference between the recalculated direct-axis inductance and quadrature-axis inductance, and p is the number of pole pairs.
[0044] In the above technical solution, when the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value > n or the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value < m, the zero-position compensation value will be increased or decreased, and the difference between the estimated motor friction torque value obtained by repeating the above method and the actual motor friction torque value and whether the zero position at the current speed is within the normal range will be checked until the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value is within the range [m n].
[0045] If the difference between the measured Q-axis current value and the theoretical Q-axis current value is within a certain range [m n], it indicates that the zero-position value is correct at the current speed; if the difference between the measured Q-axis current value and the theoretical Q-axis current value exceeds this range, it indicates that there is a deviation in the current zero position of the motor, resulting in an additional torque generated by the D-axis current component. At this time, the zero-position compensation value will be increased or decreased, and then it will be rejudged whether the difference between the estimated motor friction torque value and the actual motor friction torque value and the zero position at the current speed are within the normal range until the current difference reaches the preset range, and the final zero-position compensation value will be recorded. m and n are obtained according to the bench calibration.
[0046] In the above technical solution, during the process of increasing or decreasing the zero-position compensation value until the difference between the measured quadrature-axis current value and the theoretical calculated current value reaches the range [m n], if there are multiple compensation values that meet the requirements, the zero-position compensation value corresponding to the situation where the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value is closest to (m + n) / 2 will be taken. The zero-position compensation value is the deviation between the measured angular position and the actual angular position.
[0047] (m + n) / 2 is the expected result of the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value, but the actual result may have a deviation. Therefore, the range [m n] is used for judgment. If there are multiple values within the final range of the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value, the result closest to the expected value will be taken.
[0048] In the above technical solution, the speed is increased by setting the step size at intervals to obtain the zero-position compensation values at multiple speeds. If the zero-position compensation value deviations at each speed are within the valid range, the average value is taken as the final zero-position compensation value; otherwise, the motor controller exits the self-learning process and returns a fault message that the zero-position deviation is too large.
[0049] In a specific embodiment, the motor speeds are set to N1, N2, N3, N4, N5 in sequence, and the zero-position compensation values X1, X2, X3, X4, X5 at the corresponding speeds are obtained, then the final zero-position compensation value X=1 / 5*(X1+X2+X3+X4+X5).
[0050] Generally, the speed is increased by 1000 rpm or the step size is selected according to actual needs. It should be noted that the motor speed cannot exceed the idling weak magnetic speed.
[0051] The motor controller exits the zero-position self-learning process and at the same time feeds back the final result through a message; if the zero-position self-learning is successful, the zero-position compensation value is updated, the self-learning is completed and a request is made to power off to complete sleep, and the updated compensation value is written to the storage module; otherwise, the self-learning fails and the specific reason for the failure is fed back.
[0052] Example 2
[0053] like Figure 1 As shown, the motor zero point position adaptive correction method designed based on the above motor zero point position adaptive correction system includes the following steps:
[0054] After the motor enters the zero-position self-learning process, the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, and the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within a preset period are obtained in the idling mode, and the motor friction torque value under the current working condition is estimated according to the obtained average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance and the motor torque formula, and then it is determined whether the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of the zero-position self-learning;
[0055] When the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of zero-position self-learning, after reducing the current direct-axis current of the motor to the target value, the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, and the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within the preset period are recalculated, and the recalculated average value of the quadrature-axis current is used as the measured quadrature-axis current value. According to the motor torque formula, the estimated motor friction torque value, and the recalculated average value of the difference between the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within the preset period, the theoretical quadrature-axis current of the motor under the current direct-axis current is calculated, and then, according to the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value, it is judged whether the zero position at the current speed is within the valid range. If the zero position at the current speed is not within the valid range, the zero position is corrected by changing the zero position compensation value.
[0056] Example 3
[0057] The present invention also includes a computer program product, including a computer program / instruction, which implements the steps of the above-mentioned motor zero point position adaptive correction method when executed by a processor.
[0058] The contents not described in detail in this specification belong to the prior art known to professional and technical personnel in this field.
Claims
1. A motor zero position adaptive correction system, characterized by: It includes: Friction torque detection module and zero position detection module; The friction torque detection module is used to obtain the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, and the average value of the difference between the direct-axis inductance and the quadrature-axis inductance in a preset period in the idling mode after the motor enters the zero-position self-learning process, and estimate the motor friction torque value under the current working condition according to the obtained average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance and the motor torque formula, and then determine whether the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of the zero-position self-learning; The zero position detection module is used to reduce the current direct-axis current of the motor to the target value when the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of zero position self-learning, and then recalculate the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within a preset period, and use the recalculated average value of the quadrature-axis current as the measured quadrature-axis current value, calculate the theoretical quadrature-axis current under the current direct-axis current of the motor according to the motor torque formula, the estimated motor friction torque value, and the recalculated average value of the difference between the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within the preset period, and then judge whether the zero position at the current speed is within the valid range according to the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value; if the zero position at the current speed is not within the valid range, the zero position is corrected by changing the zero position compensation value.
2. The motor zero position adaptive correction system according to claim 1, characterized in that: The method for obtaining the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, and the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within a preset period includes: within the preset period, sampling the quadrature-axis current value, the direct-axis current value, the rotor flux value, the direct-axis inductance and the difference between the quadrature-axis inductance at the same time intervals, and calculating the average values respectively.
3. The motor zero position adaptive correction system according to claim 1, characterized in that: The method for estimating the motor friction torque value under the current working condition according to the obtained average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor flux, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance, and the motor torque formula includes: Among them, T e is the estimated motor friction torque value, i d is the average direct-axis current, i q is the average value of the quadrature axis current, is the average flux of the rotor permanent magnet, L d -L q is the average value of the difference between the direct-axis inductance and the quadrature-axis inductance, and p is the number of pole pairs.
4. The motor zero position adaptive correction system according to claim 1, characterized in that: The method for determining whether the difference between the estimated motor friction torque value and the actual motor friction torque value is within the allowable range of zero-position self-learning includes: when the difference between the estimated motor friction torque value and the actual motor friction torque value is within [-a+a]Nm, allowing zero-position self-learning to continue, a is the motor friction torque variance that allows zero-position self-learning.
5. The motor zero position adaptive correction system according to claim 1, characterized in that: A method for judging whether the zero position at the current speed is within a valid range by the difference between the actual measured quadrature-axis current value and the theoretical quadrature-axis current value includes: reducing the direct-axis current to 1 / 2 of the maximum current amplitude, calculating the difference between the actual measured quadrature-axis current value and the theoretical quadrature-axis current value, and judging that the zero position is within the valid range when the difference between the actual measured quadrature-axis current value and the theoretical quadrature-axis current value is within a range of [mn], where [mn] is the maximum error range allowed for the difference between the actual measured quadrature-axis current value and the theoretical quadrature-axis current value.
6. A motor zero position adaptive correction system according to claim 5, characterized in that: When the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value > n or the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value < m, the zero-position compensation value will be increased or decreased, and the above method will be repeated to re-judge whether the difference between the estimated motor friction torque value and the actual motor friction torque value and the zero position at the current speed are within the normal range until the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value is within the range [m, n].
7. A motor zero position adaptive correction system according to claim 6, characterized in that: During the process of increasing or decreasing the zero-position compensation value until the difference between the measured quadrature-axis current value and the theoretical calculated current value reaches within the range [m, n], if there are multiple compensation values that meet the requirements, the zero-position compensation value corresponding to the case where the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value is closest to (m + n) / 2 is taken. The zero-position compensation value is the deviation between the measured angular position and the actual angular position.
8. The motor zero position adaptive correction system according to claim 1, characterized in that: Increase the speed at an interval of the set step size, and obtain the zero-position compensation values at multiple speeds. If the deviations of the zero-position compensation values at each speed are within the effective range, the average value is taken as the final zero-position compensation value; otherwise, the motor controller exits the self-learning process and returns a fault message indicating that the zero-position deviation is too large.
9. A method for adaptively correcting the zero position of a motor, characterized in that: It includes: After the motor enters the zero-position self-learning process, obtain the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor magnetic flux linkage, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within a preset period in the no-load mode, estimate the motor friction torque value under the current working condition according to the obtained average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor magnetic flux linkage, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance and the motor torque formula, and then judge whether the difference between the estimated motor friction torque value and the actual motor friction torque value is within the zero-position self-learning allowable range; When the difference between the estimated motor friction torque value and the actual motor friction torque value is within the zero-position self-learning allowable range, after reducing the current direct-axis current of the motor to the target value, recalculate the average value of the quadrature-axis current, the average value of the direct-axis current, the average value of the rotor magnetic flux linkage, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within the preset period, and take the recalculated average value of the quadrature-axis current as the measured quadrature-axis current value. Calculate the theoretical quadrature-axis current at the current direct-axis current of the motor according to the motor torque formula, the estimated motor friction torque value, and the recalculated average value of the direct-axis current, the average value of the rotor magnetic flux linkage, the average value of the difference between the direct-axis inductance and the quadrature-axis inductance within the preset period, and then judge whether the zero position at the current speed is within the effective range according to the difference between the measured quadrature-axis current value and the theoretical quadrature-axis current value. If the zero position at the current speed is not within the effective range, correct the zero position by changing the zero-position compensation value.
10. A computer program product, including a computer program / instructions, which when executed by a processor implement the steps of the method as described in claim 9 above.