Motor control method, device and vehicle

CN122533461APending Publication Date: 2026-08-07DEEPAL AUTOMOBILE TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
DEEPAL AUTOMOBILE TECH CO LTD
Filing Date
2026-05-29
Publication Date
2026-08-07

AI Technical Summary

Technical Problem

然而,传感器的工作性能易受温度、湿度、振动等恶劣环境影响,并且会增加车辆硬件成本

Benefits of technology

[0020]通过将电流和电压输入扩张状态观测器的状态方程进行迭代计算,得到直轴扩展反电动势和交轴扩展反电动势,能够将反电动势的幅值和相位信息从电流动态中分离出来,从而避免直接对包含反电动势的电流方程进行开环求解所带来的噪声放大问题,进而提高转子转速和位置在动态过程中的估计精度。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122533461A_ABST
    Figure CN122533461A_ABST
Patent Text Reader

Abstract

Embodiments of the present application relate to the technical field of vehicles, and disclose a motor control method and device and a vehicle. The motor control method is applied to a vehicle and comprises the following steps: obtaining a historical rotor speed estimated at a previous moment. In a case where the historical rotor speed is greater than a first preset speed threshold and less than a second preset speed threshold, a first rotor speed of the motor at a current moment is estimated based on a high-frequency injection method, and a second rotor speed of the motor at the current moment is estimated based on a back electromotive force method. The first preset speed threshold is less than the second preset speed threshold. Based on the first rotor speed and the second rotor speed, a target rotor speed of the motor at the current moment is determined. Based on the target rotor speed, a target rotor position of the motor at the current moment is determined. Based on the target rotor speed and the target rotor position, the motor is controlled to operate. In this way, the motor can be controlled without a sensor.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of vehicle technology, and more specifically to a motor control method, device, and vehicle. Background Technology

[0002] Motors typically rely on sensors to obtain rotor position information in order to control the motor. However, the performance of sensors is easily affected by harsh environments such as temperature, humidity, and vibration, and this also increases the cost of vehicle hardware.

[0003] Therefore, how to control the motor without sensors has become a pressing technical problem that needs to be solved. Summary of the Invention

[0004] In view of the above shortcomings, the purpose of this application is to provide a motor control method, device and vehicle, which aims to solve the technical problem of how to control the motor without sensors.

[0005] In a first aspect, embodiments of this application provide a motor control method, which includes: acquiring the historical rotor speed estimated at the previous moment; if the historical rotor speed is greater than a first preset speed threshold and less than a second preset speed threshold, estimating the first rotor speed of the motor at the current moment based on a high-frequency injection method, and estimating the second rotor speed of the motor at the current moment based on a back electromotive force method; the first preset speed threshold is less than the second preset speed threshold; determining the target rotor speed estimated by the motor at the current moment based on the first rotor speed and the second rotor speed; determining the target rotor position estimated by the motor at the current moment based on the target rotor speed; and controlling the motor operation based on the target rotor speed and the target rotor position.

[0006] By acquiring the historical rotor speed estimated at the previous moment, the appropriate sensorless estimation method can be automatically selected based on the actual operating speed range of the motor. When the historical rotor speed is greater than a first preset speed threshold but less than a second preset speed threshold, the estimated motor operating speed is in the intermediate speed range transitioning from the low-speed to the high-speed region. At this time, the first rotor speed of the motor at the current moment is estimated based on the high-frequency injection method, and the second rotor speed of the motor at the current moment is estimated based on the back EMF method. The target rotor speed of the motor at the current moment is determined based on the first and second rotor speeds. The sensitivity of the high-frequency injection method to the salient pole effect at low speeds and the reliability of the back EMF signal at medium speeds can be used to compensate for the accuracy shortcomings of a single method in the transition range. This results in smoother and more continuous rotor observation information than a single estimation method, avoiding instantaneous switching of the motor at a single speed threshold, which could cause a step or jitter in the estimated position signal. Subsequently, after determining the estimated target rotor speed of the motor at the current moment, the rotor speed has good low-pass filtering characteristics. Determining the estimated target rotor position of the motor at the current moment using the target rotor speed makes the rotor position signal smoother, reduces position jumps or phase jitter, improves the stability of coordinate transformation, and reduces torque ripple. Then, based on the target rotor speed and target rotor position, the motor operation is controlled, enabling sensorless motor control and improving the stability and accuracy of rotor observation within the speed transition range.

[0007] In one possible embodiment, determining the estimated target rotor position of the motor at the current moment based on the target rotor speed includes: performing an integral calculation on the target rotor speed to obtain the target rotor position of the motor.

[0008] The target rotor position is obtained by integrating the target rotor speed. The deterministic kinematic relationship between speed and position can be used to convert the estimated discrete speed information into continuous position angle information, thereby avoiding the introduction of additional position sensors or complex position observers, and thus reducing the system hardware cost and the implementation complexity of the control algorithm.

[0009] In one possible embodiment, the target rotor position of the motor is obtained by integrating the target rotor speed, including: determining the target speed product at the current moment based on the target rotor speed and a preset time period, wherein the target speed product is the product between the target rotor speed and the preset time period; and determining the target rotor position based on the target speed product and the historical rotor position estimated at the previous moment.

[0010] By multiplying the target rotor speed by a preset time period, and combining this with the historical rotor position estimated at the previous moment, the target rotor position at the current moment is determined. This allows for real-time updating of the rotor position angle using a discretized position recursion method. This avoids real-time solving of continuous integral equations, reducing the computational burden on the controller. Furthermore, since the position recursion relies only on the position value from the previous moment and the estimated speed at the current moment, it avoids drastic jumps due to single position observation anomalies, thus enhancing the continuity and anti-interference capability of rotor position tracking.

[0011] In one possible embodiment, determining the target rotor speed of the motor at the current moment based on the first rotor speed and the second rotor speed includes: performing a weighted calculation on the first rotor speed and the second rotor speed based on weighting to obtain the target rotor speed of the motor at the current moment.

[0012] The target rotor speed is obtained by weighting the first rotor speed and the second rotor speed based on weighted calculation. The contribution ratio of the high-frequency injection method and the back EMF method in the final estimation result can be dynamically adjusted according to the current operating state, so as to achieve smooth fusion of the estimation results of the two algorithms within the transition speed range, thereby suppressing the jump in speed estimation value caused by algorithm switching.

[0013] In one possible embodiment, the first rotor speed and the second rotor speed are weighted and calculated to obtain the estimated target rotor speed of the motor at the current moment, including: ; in, Used to indicate the target rotor speed Used to represent weighted weights, Used to indicate the first rotor speed. Used to indicate the speed of the second rotor.

[0014] By using a linear weighting method to perform a weighted average between the estimation results of the two algorithms, the target rotor speed can be continuously transitioned from the estimation result of the high-frequency injection method to the estimation result of the back electromotive force method when the weighting weight μ varies in the range of 0 to 1. This provides a simple transition strategy that is easy to adjust in engineering, thereby reducing the threshold for implementing algorithm fusion.

[0015] In one possible embodiment, the weighting weight is determined as follows: A first difference is determined based on the absolute values ​​of a second preset speed threshold and historical rotor speeds; the first difference is the difference between the absolute values ​​of the second rotor speed and the historical rotor speed. A second difference is determined based on the first preset speed threshold and a second preset speed threshold; the second difference is the difference between the first preset speed threshold and the second preset speed threshold. A weighting weight is determined based on the first difference and the second difference; the weighting weight is the ratio between the first difference and the second difference.

[0016] By determining the first difference based on the second preset speed threshold and the historical rotor speed, and determining the second difference based on the first preset speed threshold and the second preset speed threshold, and using the ratio of the first difference to the second difference as the weighting weight, the weighting weight can be continuously changed from 0 to 1 as the current initial speed increases. This allows for a smooth transition from the high-frequency injection method to the back EMF method within the transition range, thereby enabling the algorithm's transition process to adaptively match the speed change and reducing the workload required to manually set the transition curve.

[0017] In one possible embodiment, predicting the second rotor speed of the motor at the current moment based on the back EMF method includes: acquiring the motor current and the motor voltage; obtaining the extended back EMF based on the current, voltage, and an extended state observer; and predicting the second rotor speed based on the extended back EMF.

[0018] By acquiring the motor's current and voltage, and obtaining the extended back EMF based on the current, voltage, and extended state observer, and then estimating the second rotor speed based on the obtained extended back EMF, the back EMF and its changes can be treated as internal disturbances of the system for real-time estimation without significantly increasing the computational burden. This allows for obtaining relatively stable speed observations even when there are certain deviations in motor parameters or changes in operating conditions, thereby improving the robustness of the back EMF method in engineering environments.

[0019] In one possible embodiment, the extended back EMF is obtained based on the current and voltage and the extended state observer, including: iteratively calculating the state equations of the extended state observer by inputting the current and voltage into the extended state observer to obtain the direct-axis extended back EMF and the quadrature-axis extended back EMF.

[0020] By iteratively calculating the state equations of the extended state observer using current and voltage inputs, the direct-axis extended back EMF and quadrature-axis extended back EMF are obtained. This allows the magnitude and phase information of the back EMF to be separated from the current dynamics, thus avoiding the noise amplification problem caused by directly solving the current equations containing the back EMF in an open-loop manner. This, in turn, improves the estimation accuracy of rotor speed and position during the dynamic process.

[0021] In one possible embodiment, estimating the second rotor speed based on the extended back EMF includes: estimating the rotor position at the current moment based on the direct-axis extended back EMF and the quadrature-axis extended back EMF; and estimating the second rotor speed based on the rotor position at the current moment based on the back EMF.

[0022] By first estimating the rotor position at the current moment based on the direct-axis extended back EMF and the quadrature-axis extended back EMF, and then estimating the second rotor speed based on the rotor position at the current moment, a relatively smooth position estimate can be obtained by utilizing the differential relationship between position and speed. Then, the speed can be obtained through position difference, thereby suppressing high-frequency fluctuations in speed estimation when measurement noise or observation noise exists, and thus improving the smoothness and availability of the second rotor speed.

[0023] In one possible embodiment, predicting the first rotor speed of the motor at the current moment based on the high-frequency injection method includes: injecting a high-frequency voltage signal into the stator windings of the motor via an inverter connected between a power supply and the stator windings; acquiring the high-frequency current response generated by the motor under the excitation of the high-frequency voltage signal; extracting the rotor position error signal from the high-frequency current response; inputting the rotor position error signal to a phase-locked loop speed and position observer, and outputting the first rotor speed.

[0024] By injecting a high-frequency voltage signal into the stator winding of the motor through an inverter, acquiring the high-frequency current response, extracting the rotor position error signal from it, and inputting the error signal into the phase-locked loop speed position observer to output the first rotor speed, it is possible to maintain the observation capability of rotor position at low speed or even zero speed by utilizing the salient pole effect or saturation effect. Thus, rotor speed estimation in the zero-speed and ultra-low-speed range can be achieved without relying on mechanical position sensors, thereby expanding the operating speed range of sensorless control.

[0025] In one possible embodiment, the high-frequency voltage signal is a square wave voltage signal, and the frequency of the high-frequency voltage signal is greater than the fundamental operating frequency of the motor and less than the switching frequency of the inverter. Extracting the rotor position error signal from the high-frequency current response includes: sampling the high-frequency current during the positive and negative half-cycles of each square wave period of the square wave voltage signal to obtain positive half-cycle sampled values ​​and negative half-cycle sampled values; performing a differential operation on the positive and negative half-cycle sampled values ​​to obtain the amplitude envelope of the high-frequency current; and demodulating the amplitude envelope to extract the rotor position error signal.

[0026] By using a square wave voltage signal with a frequency greater than the fundamental operating frequency and less than the inverter switching frequency as the high-frequency injection signal, and sampling the high-frequency current during the positive and negative half-cycles of each square wave cycle, and then eliminating the influence of the fundamental current and back EMF through differential operation, the rotor position error signal is demodulated after obtaining the high-frequency current amplitude envelope. This method can effectively suppress the fundamental operating component and back EMF interference by utilizing the high-frequency characteristics of the square wave signal and the differential cancellation method, thereby extracting rotor position-related information relatively cleanly under operating conditions with low signal-to-noise ratio, and thus improving the anti-interference capability and estimation stability of the high-frequency injection method.

[0027] In one possible embodiment, the motor control method further includes: when the historical rotor speed is less than or equal to a first preset speed threshold, estimating the low-speed rotor speed and low-speed rotor position of the motor at the current moment based on a high-frequency injection method; and controlling the motor operation based on the low-speed rotor speed and the low-speed rotor position of the motor at the current moment.

[0028] When the historical rotor speed is less than or equal to the first preset speed threshold, the low-speed rotor speed and low-speed rotor position are estimated and the motor is controlled based solely on the high-frequency injection method. This allows for independent control by leveraging the high observability of the rotor position in the low-speed region using the high-frequency injection method. This avoids introducing the back EMF method, which has poor observation performance under low-speed conditions, into this speed region, thereby improving the reliability of rotor state estimation and the stability of the control system in the low-speed range.

[0029] In one possible embodiment, the motor control method further includes: if the historical rotor speed is greater than a second preset speed threshold, estimating the high-speed rotor speed and the high-speed rotor position of the motor at the current moment based on the back electromotive force method; and controlling the motor operation based on the high-speed rotor speed and the high-speed rotor position of the motor at the current moment.

[0030] When the historical rotor speed is greater than the second preset speed threshold, the high-speed rotor speed and high-speed rotor position are estimated and the motor is controlled based solely on the back EMF method. This method can take advantage of the high estimation accuracy of the back EMF method in the high-speed range and the fact that it does not require active injection of high-frequency signals. This avoids the additional harmonic losses and negative impact on voltage utilization caused by high-frequency injection during high-speed operation, thereby improving the control efficiency and torque output capability in the high-speed operating range.

[0031] Secondly, this application provides a motor control device, which includes: a historical rotor speed acquisition module, a rotor speed prediction module, a target rotor speed determination module, a target rotor position determination module, and a motor control module.

[0032] The historical rotor speed acquisition module is used to obtain the estimated historical rotor speed at the previous moment.

[0033] The rotor speed prediction module is used to predict the first rotor speed of the motor at the current moment based on the high-frequency injection method and the second rotor speed of the motor at the current moment based on the back electromotive force method when the historical rotor speed is greater than the first preset speed threshold and less than the second preset speed threshold.

[0034] The target rotor speed determination module is used to determine the estimated target rotor speed of the motor at the current moment based on the first rotor speed and the second rotor speed.

[0035] The target rotor position determination module is used to determine the estimated target rotor position of the motor at the current moment based on the target rotor speed.

[0036] The motor control module is used to control the motor operation based on the target rotor speed and target rotor position.

[0037] Thirdly, this application provides a vehicle that includes a motor, an inverter, and a motor control device as described in the second aspect. Attached Figure Description

[0038] To more clearly illustrate the technical solutions in the embodiments of this application or the background art, the accompanying drawings used in the embodiments of this application will be described below.

[0039] Figure 1 This is a schematic diagram of the structure of a motor control system disclosed in an embodiment of this application; Figure 2 This is a schematic flowchart of a motor control method disclosed in an embodiment of this application; Figure 3 This is a schematic diagram illustrating an example of how the rotor position changes over time in a conventional scheme disclosed in this application. Figure 4 This is a schematic diagram illustrating an example of how a PWM carrier signal changes over time, as disclosed in an embodiment of this application. Figure 5 This is a schematic diagram illustrating an example of how a high-frequency square wave voltage changes over time, as disclosed in an embodiment of this application. Figure 6 This is a schematic diagram illustrating an example of how a high-frequency current response changes over time, as disclosed in an embodiment of this application. Figure 7 This is a schematic diagram illustrating an example of a rotating coordinate system disclosed in an embodiment of this application; Figure 8 This is a schematic diagram illustrating another example of a target rotor position calculation process disclosed in an embodiment of this application; Figure 9 This is a schematic diagram illustrating an example of a target rotor position calculation process disclosed in an embodiment of this application; Figure 10This is a schematic diagram illustrating an example of how a control state changes over time, as disclosed in an embodiment of this application. Figure 11 This is a schematic diagram illustrating an example of how the actual speed and estimated speed of a motor change over time, as disclosed in an embodiment of this application. Figure 12 This is a schematic diagram illustrating an example of how the error between the actual rotational speed and the estimated rotational speed changes over time, as disclosed in an embodiment of this application. Figure 13 This is a schematic diagram illustrating the time-varying rotor position estimated by the high-frequency injection method and the rotor position estimated by the back electromotive force method, as disclosed in the embodiments of this application. Figure 14 This is a schematic diagram illustrating an example of the rotor position change over time estimated by a weighted average using a conventional method disclosed in an embodiment of this application. Figure 15 This is a schematic diagram illustrating an example of the rotor position changing over time according to an embodiment of this application. Figure 16 This is a schematic diagram of the structure of a motor control device disclosed in an embodiment of this application; Figure 17 This is a schematic diagram of another motor control device disclosed in an embodiment of this application. Detailed Implementation

[0040] The terms “first,” “second,” etc., are used for descriptive purposes only and have no sequential or technical meaning, nor should they be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated.

[0041] In the embodiments of this application, "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this document generally indicates that the preceding and following related objects have an "or" relationship.

[0042] Furthermore, the terms "comprising" and "having," and any variations thereof, used in the description of this application are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or device that includes a series of steps or modules is not limited to the steps or modules listed, but may optionally include other steps or modules not listed, or may optionally include other steps or modules inherent to such process, method, product, or device.

[0043] Furthermore, in the embodiments of this application, the words "exemplarily" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design described as "exemplarily" or "for example" in this application should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of the words "exemplarily" or "for example" is intended to present concepts in a concrete manner.

[0044] This application provides a motor control method in which, by acquiring the historical rotor speed estimated at the previous moment, an applicable sensorless estimation method can be automatically selected based on the actual operating speed range of the motor. When the historical rotor speed is greater than a first preset speed threshold but less than a second preset speed threshold, the estimated motor operating speed is in the intermediate speed range transitioning from low speed to high speed. At this time, the first rotor speed of the motor at the current moment is estimated based on the high-frequency injection method, and the second rotor speed is estimated based on the back electromotive force method. The target rotor speed of the motor at the current moment is determined based on the first and second rotor speeds. This method leverages the sensitivity of the high-frequency injection method to the salient pole effect at low speeds and the reliability of the back electromotive force signal at medium speeds to compensate for the accuracy shortcomings of a single method in the transition range. This results in smoother and more continuous rotor observation information than a single estimation method, avoiding instantaneous switching of the motor at a single speed threshold, which could cause a step or jitter in the estimated position signal. Subsequently, after determining the estimated target rotor speed of the motor at the current moment, the rotor speed has good low-pass filtering characteristics. Determining the estimated target rotor position of the motor at the current moment using the target rotor speed makes the rotor position signal smoother, reduces position jumps or phase jitter, improves the stability of coordinate transformation, and reduces torque ripple. Then, based on the target rotor speed and target rotor position, the motor operation is controlled, enabling sensorless motor control and improving the stability and accuracy of rotor observation within the speed transition range.

[0045] For ease of description, the application scenarios involved in the embodiments of this application are introduced below.

[0046] For example, such as Figure 1As shown in the embodiments of this application, a motor control system may include a motor controller 1 and a motor 2. The motor controller 1 and the motor 2 are electrically connected via power lines and signal lines. The motor controller 1 may be an independent frequency converter, servo driver, or an intelligent drive module integrated into the motor body. The motor 2 may be a permanent magnet synchronous motor (PMSM), such as an interior permanent magnet synchronous motor (IPMSM) or a surface permanent magnet synchronous motor (SPMSM). This application does not impose any restrictions on the specific implementation of the motor controller 1 and the motor 2, as long as the motor controller 1 and the motor 2 constitute a motor drive system that needs to operate without position sensors.

[0047] The motor controller 1 includes an inverter, a current sampling circuit, a voltage sampling circuit, and a microprocessor or digital signal processor. The motor controller 1 internally deploys a sensorless control algorithm library, which can execute the motor control method described in any embodiment of this application. Mechanical position sensors, such as encoders or resolvers, may not be installed on the rotor shaft of the motor 2. The motor controller 1 applies voltage to the stator windings of the motor 2 through power lines and acquires the three-phase current signals of the motor 2 in real time through the current sampling circuit, thereby achieving closed-loop control of the motor 2 based on the motor control method provided in this application.

[0048] For example, when motor 2 starts from a standstill and operates at low speed, motor controller 1 uses a high-frequency injection method to inject a high-frequency voltage signal (e.g., a square wave signal) into the stator windings of motor 2 via an inverter. It then extracts the rotor position error signal from the sampled high-frequency current response and estimates the current low-speed rotor speed using a phase-locked loop (PLL) speed position observer. Subsequently, motor controller 1 integrates this low-speed rotor speed to obtain the rotor position at low speed. As motor 2 gradually accelerates and enters the medium-to-high-speed operating region, motor controller 1 automatically switches to or integrates with the back electromotive force (EMF) method. It reconstructs the extended back EMF of motor 2 using an extended state observer, thereby estimating the rotor speed at high speed. The rotor position at high speed is then obtained by integrating this rotor speed. Finally, motor controller 1 controls the operation of motor 2 based on this high-speed rotor speed and position.

[0049] It should be noted that the system architecture and application scenarios described in the embodiments of this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the evolution of system architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.

[0050] The motor control method provided in this application can be applied to a motor controller. This application uses the example of a motor controller executing the motor control method to illustrate the motor control method provided in this application.

[0051] like Figure 2 As shown, this application provides a motor control method, which includes: S201, Obtain the historical rotor speed estimated at the previous moment.

[0052] Here, "previous moment" refers to the control cycle preceding the current control cycle, and "historical rotor speed" is the estimated value of the motor rotor speed calculated using a sensorless algorithm.

[0053] As one possible implementation, during the motor startup phase, the starting rotor speed is estimated based on the high-frequency injection method at the initial startup moment. Before estimating the rotor speed at the next moment after the initial startup moment, the starting rotor speed is determined as the historical rotor speed. In each time cycle after the startup phase, before estimating the rotor speed at the current moment, the rotor speed estimated at the previous moment is determined as the historical rotor speed.

[0054] In this way, based on the historical rotor speed estimated at the previous moment, the rotor speed range of the motor can be determined, thereby determining the estimation method to be used when estimating the rotor speed of the motor at the current moment, thus achieving an accurate estimation of the rotor speed of the motor at the current moment.

[0055] S202. When the historical rotor speed is greater than the first preset speed threshold and less than the second preset speed threshold, the first rotor speed of the motor at the current moment is estimated based on the high-frequency injection method, and the second rotor speed of the motor at the current moment is estimated based on the back electromotive force method.

[0056] The first preset speed threshold is less than the second preset speed threshold, and the first and second preset speed thresholds are not equal. The first preset speed threshold is a pre-set low-speed boundary value; below this threshold, the motor is considered to be in the low-speed operating zone. The second preset speed threshold is a pre-set high-speed boundary value; above this threshold, the motor is considered to be in the high-speed operating zone. Since the motor needs to switch between different algorithms in different speed ranges, the selected speed switching range should ensure that both control schemes can operate normally. That is, the second preset speed threshold needs to be lower than the range where high-frequency pulsating square wave injection can operate normally, and the first preset speed threshold needs to be higher than the range where the state extension observer can operate normally. For example, the first preset speed threshold can be 4%, 5%, 6%, 7%, or 8% of the maximum allowable speed of the motor; the second preset speed threshold can be 13%, 15%, 17%, 18%, or 20% of the maximum allowable speed of the motor. The specific values ​​of the first and second preset speed thresholds can be set according to the actual usage scenario.

[0057] The high-frequency injection method is a sensorless approach to estimate rotor speed and position by injecting a high-frequency voltage signal into the stator windings of a motor and analyzing the high-frequency current response. In the low-speed operating range, the high-frequency injection method offers good observability. However, as the speed increases, the estimation accuracy gradually decreases due to factors such as inverter nonlinearity and harmonic interference, and continuous injection of high-frequency signals increases system losses. The back-EMF method is a sensorless approach to estimate rotor speed and position by detecting the back-EMF signal generated during motor rotation. In the high-speed operating range, the back-EMF method offers high estimation accuracy, but in the low-speed range, the small amplitude of the back-EMF and low signal-to-noise ratio make it difficult to accurately extract rotor information.

[0058] The high-frequency injection method can be a rotating high-frequency voltage injection method, a pulsed high-frequency voltage injection method, or a high-frequency square wave voltage injection method. The specific settings for the high-frequency injection method can be customized according to the actual scenario; this application does not impose any restrictions on this. For a detailed explanation of the process of estimating the first rotor speed of the motor at the current moment based on the high-frequency injection method, please refer to the following embodiments S801-S804.

[0059] The back EMF method can be the sliding mode observer method, the model reference adaptive method, the extended Kalman filter method, the hybrid flux observer method, the nonlinear flux observer method, or the extended state observer (ESO) method. The specific settings for the back EMF method can be configured according to the actual scenario; this application does not impose any restrictions on this. For a detailed explanation of the process of predicting the second rotor speed of the motor at the current moment based on the back EMF method, please refer to the following embodiments S501-S503.

[0060] To achieve a smooth transition between two sensorless control schemes at low and medium-to-high speeds, a weighted average of the estimated speeds from both schemes is used for switching. Therefore, when the historical rotor speed is greater than a first preset speed threshold but less than a second preset speed threshold, a single algorithm struggles to maintain stable and reliable estimation performance across the entire speed range. In this transition interval, both the high-frequency injection method and the back-EMF method are used to estimate the first and second rotor speeds respectively. This allows the estimation results from both algorithms to coexist within this interval, providing two speed reference values ​​from different sources for subsequent weighted fusion. In this way, the advantage of the high-frequency injection method maintaining a certain level of observability near the lower limit of the transition interval is utilized, while the characteristic of the back-EMF method gradually entering the effective operating range near the upper limit of the transition interval is also taken advantage of. This avoids the potential speed jumps caused by directly replacing the estimation results at the switching point of a single algorithm, providing a data foundation for a smooth transition.

[0061] S203. Based on the first rotor speed and the second rotor speed, determine the estimated target rotor speed of the motor at the current moment.

[0062] There is redundancy between the speed estimates from two independent sources. By combining the first rotor speed and the second rotor speed for calculation, the deviation caused by the performance degradation at the edge of the transition range can be compensated for. This allows the target rotor speed of the motor to be estimated at the current moment, making the target rotor speed closer to the actual speed estimate than the single estimate from a single algorithm.

[0063] As a feasible implementation method, S203 includes: performing a weighted calculation on the first rotor speed and the second rotor speed based on weighted weights to obtain the target rotor speed of the motor at the current moment.

[0064] The target rotor speed is obtained by weighting the first rotor speed and the second rotor speed based on weighted calculation. The contribution ratio of the high-frequency injection method and the back EMF method in the final estimation result can be dynamically adjusted according to the current operating state, so as to achieve smooth fusion of the estimation results of the two algorithms within the transition speed range, thereby suppressing the jump in speed estimation value caused by algorithm switching.

[0065] As a feasible approach, the first rotor speed and the second rotor speed are weighted and calculated to obtain the target rotor speed of the motor at the current moment, which satisfies Formula 1.

[0066] Formula 1.

[0067] in, Used to indicate the target rotor speed Used to represent weighted weights, Used to indicate the first rotor speed. Used to indicate the speed of the second rotor.

[0068] By using a linear weighting method to perform a convex combination between the estimation results of the two algorithms, the target rotor speed can be continuously transitioned from the estimation result of the high-frequency injection method to the estimation result of the back electromotive force method when the weighting weight μ varies in the range of 0 to 1. This provides a simple transition strategy that is easy to adjust in engineering, thereby reducing the threshold for algorithm fusion.

[0069] S204. Based on the target rotor speed, determine the estimated target rotor position of the motor at the current moment.

[0070] As a feasible implementation method, S204 includes: performing an integral calculation on the target rotor speed to obtain the target rotor position of the motor.

[0071] One possible implementation is to calculate the target rotor speed by integration using a continuous integration method. Another possible implementation is to calculate the target rotor speed by integration using a discrete integration method.

[0072] Rotational speed, as a scalar physical quantity, changes more smoothly than position angle and does not exhibit periodic phase ambiguity. Since the target rotor speed is a continuously changing scalar speed rather than an angle with periodic jump characteristics, the waveform of the target rotor position estimated by the target rotor speed naturally remains continuous and smooth. This can solve the problems of traditional schemes, such as the dynamic performance limitation caused by the reliance on filters in the low-speed region, the jitter introduced by the sliding mode observer in the high-speed region, and the jitter in the position estimation in the switching region.

[0073] The target rotor position is obtained by integrating the target rotor speed. The deterministic kinematic relationship between speed and position can be used to convert the estimated discrete speed information into continuous position angle information, thereby avoiding the introduction of additional position sensors or complex position observers, and thus reducing the system hardware cost and the implementation complexity of the control algorithm.

[0074] The detailed process of integrating the target rotor speed to obtain the target rotor position of the motor can be found in the following embodiments S301-S302.

[0075] As another possible implementation, based on the speed-position correspondence, the preset rotor position corresponding to the target rotor speed is determined as the estimated target rotor position of the motor at the current moment. Here, the speed-position correspondence is the correspondence between the preset rotor speed and the preset rotor position, and the preset rotor speed includes the target rotor speed.

[0076] S205. Control the motor operation based on the target rotor speed and target rotor position.

[0077] As one possible implementation, S205 includes: generating a motor drive signal based on the target rotor speed and the target rotor position, and controlling the motor operation based on the motor drive signal.

[0078] The specific implementation of S205 is as follows: Obtain the requested torque of the vehicle; obtain the target d-axis current and target q-axis current by looking up a table based on the target rotor speed and the requested torque of the vehicle; collect the three-phase current of the motor and perform Clark and Park transformations using the target rotor position to obtain the actual d-axis current and actual q-axis current; calculate the difference between the target d-axis current and the actual d-axis current, and the difference between the target q-axis current and the actual q-axis current; input the two differences into the PI regulator, and output the d-axis voltage component and q-axis voltage component in the rotating coordinate system; perform an inverse Park transformation on the d-axis voltage component and q-axis voltage component using the target rotor position to obtain the α-axis voltage component and β-axis voltage component in the stationary two-phase coordinate system; calculate the action time of two adjacent vectors corresponding to the α-axis voltage component and β-axis voltage component based on the space vector pulse width modulation algorithm; compare the two action times with the instantaneous value of the triangular carrier signal one by one, and output the motor drive signal of the inverter according to the comparison result; send the motor drive signal to the inverter to drive the motor.

[0079] As can be seen from S201-S205, the solution provided in this application, by obtaining the historical rotor speed estimated at the previous moment, can automatically select the applicable sensorless estimation method according to the actual operating speed range of the motor. When the historical rotor speed is greater than the first preset speed threshold and less than the second preset speed threshold, the estimated motor operating speed is in the intermediate speed range between the low-speed and high-speed regions. At this time, the first rotor speed of the motor at the current moment is estimated based on the high-frequency injection method, and the second rotor speed of the motor at the current moment is estimated based on the back EMF method. The target rotor speed of the motor at the current moment is determined based on the first rotor speed and the second rotor speed. The sensitivity of the high-frequency injection method to the salient pole effect at low speed and the reliability of the back EMF signal at medium speed can be used to compensate for the accuracy shortcomings of a single method in the transition range, thereby obtaining smoother and more continuous rotor observation information than a single estimation method. This avoids the motor from making instantaneous switching at a single speed threshold, which would cause the estimated position signal to jump or jitter. Subsequently, after determining the estimated target rotor speed of the motor at the current moment, the rotor speed has good low-pass filtering characteristics. Determining the estimated target rotor position of the motor at the current moment using the target rotor speed makes the rotor position signal smoother, reduces position jumps or phase jitter, improves the stability of coordinate transformation, and reduces torque ripple. Then, based on the target rotor speed and target rotor position, motor operation is controlled, enabling sensorless motor control and improving the stability and accuracy of rotor observation within the speed transition range.

[0080] In some embodiments, conventional methods require weighted calculations of the rotor position estimated at low rotor speeds and the rotor position estimated at medium to high rotor speeds. When the rotor position crosses zero, the two algorithms inevitably deviate to some extent, resulting in fluctuations in the weighted rotor position in this region. Therefore, this application first obtains the target rotor speed and then uses that speed to determine the target rotor position of the motor, resulting in a smoother rotor position. The following describes the implementation method of determining the estimated target rotor position of the motor at the current moment by integrating the target rotor speed using discrete integration.

[0081] As a feasible implementation method, in conjunction with S204, the target rotor speed is integrally calculated to obtain the target rotor position of the motor, including: S301. Based on the target rotor speed and the preset time period, determine the target speed product at the current moment.

[0082] The target speed product is the product of the target rotor speed and the preset time period, which is the angle increment of the motor in the current control cycle. The angle increment is the integral infinitesimal element of the target rotor speed over the preset time period.

[0083] S302. Based on the product of the target rotational speed and the historical rotor position estimated at the previous moment, the target rotor position is obtained.

[0084] As one possible implementation, S302 includes: adding the target rotational speed product to the historical rotor position estimated at the previous moment to obtain the initial rotor position estimated at the current moment; and performing a remainder operation on the initial rotor position based on a preset angle period to obtain the target rotor position.

[0085] For example, the preset angle period can be 360 ​​degrees, or 2π.

[0086] For example, the initial rotor position satisfies Formula 2.

[0087] Formula 2.

[0088] in, Used to indicate the initial rotor position Used to indicate the target rotor speed Used to indicate a preset time period. Used to represent the product of target rotational speeds Used to indicate the historical rotor position estimated at the previous moment.

[0089] Both the high-frequency injection method and the back-EMF method directly calculate the rotor position, which is the rotor position after modeling. When the motor speed is in the transition range, if the two rotor positions calculated by the high-frequency injection method and the back-EMF method are directly weighted and averaged, the two rotor positions after modeling may be on different 2π period replicas. For example, the historical rotor position estimated at the previous moment is 359°, the high-frequency injection method outputs a position angle of 2°, and the back-EMF method outputs a position angle of 358°. If the weighting weight is 0.5, and the two position angles are directly weighted and averaged, the final calculated motor rotor angle is 180°. This result is 178° away from 2° and 178° away from 358° on the physical circumference. It is neither close to the output of either observer nor consistent with the physical orientation of "the position should be near 0°" implied by the outputs of the two observers. The motor rotor position jumps from 359° to 180°. In other words, directly averaging the two rotor positions calculated by the high-frequency injection method and the back EMF method will result in a completely wrong intermediate angle, leading to a drastic jump in the position estimate.

[0090] The following is combined with Figure 3 This paper introduces the inherent discontinuity in traditional weighted switching schemes.

[0091] For example, such as Figure 3As shown, this diagram compares the estimated rotor positions of the low-speed and high-speed schemes near the zero-crossing region. The horizontal axis represents time, and the vertical axis represents rotor position, with the unit of rotor position being radians. Figure 3 In the low-speed scheme, 0 radians are output in the zero-crossing region, while in the high-speed scheme, 2π radians are output. Since 0 and 2π correspond to the same angle geometrically but differ by 2π numerically, if the two are directly weighted and fused, the resulting rotor position will experience an instantaneous nonlinear jump from 0 radians to 2π radians in the zero-crossing region.

[0092] In this application, after obtaining the output from the high-frequency injection method, the rotor speed is 595 rpm, and the rotor speed output from the back EMF method is 605 rpm. The rotor speeds obtained from the two methods are weighted and fused to obtain the target rotor speed of 600 rpm. The historical rotor position estimated at the previous moment is 359°, with a preset time period of 0.001 s. After integration, the initial rotor position is obtained as 362.6°, and the modulus is used to obtain the target rotor position as 2.6°. That is, the actual position increases by 3.6° from 359° to 362.6°, making the change in the motor's rotor speed smoother. This avoids the rotor position jump problem caused by certain errors in the two position estimation schemes (such as jitter when the rotor position crosses 2π within the switching interval), thus ensuring smooth position output without abrupt changes within the switching interval, improving system stability and driving comfort. The rotor speeds of 595 rpm from the high-frequency injection method and 605 rpm from the back EMF method are instantaneous values.

[0093] Multiplying the current target rotor speed by a preset time period yields the angle increment within that control period, which corresponds to the integral element in the continuous-time integral. Adding this angle increment to the historical rotor position determined at the end of the previous control period gives the target rotor position at the end of the current control period. This allows for continuous summation from the start time to the current time, thus completing the numerical integration of the target rotor speed in the discrete-time domain and obtaining the rotor position estimate corresponding to the continuous-time integral.

[0094] As can be seen from S301-S302, the solution provided in this application determines the target rotor position at the current moment by multiplying the target rotor speed by a preset time period and combining it with the historical rotor position estimated at the previous moment. This allows for real-time updating of the rotor position angle using a discretized position recursion method. This avoids real-time solving of continuous integral equations, reducing the computational burden on the controller. Furthermore, since the position recursion only depends on the position value at the previous moment and the estimated speed at the current moment, it will not cause drastic jumps due to single position observation anomalies, thereby enhancing the continuity and anti-interference capability of rotor position tracking.

[0095] In some embodiments, the weighting can be calculated based on historical rotor speeds.

[0096] As a feasible implementation method, in conjunction with S203, the weighted weights are determined in the following way: S401. Determine the first difference based on the second preset speed threshold and the absolute value of the historical rotor speed.

[0097] The first difference is the difference between the absolute values ​​of the second rotor speed and the historical rotor speed.

[0098] S402. Determine the second difference based on the first preset speed threshold and the second preset speed threshold.

[0099] The second difference is the difference between the first preset speed threshold and the second preset speed threshold.

[0100] S403. Determine the weighting weights based on the first difference and the second difference.

[0101] The weighting weight is the ratio between the first difference and the second difference.

[0102] In some embodiments, the weighting weight is 0 when the absolute value of the historical rotor speed is less than or equal to a first preset speed threshold; and the weighting weight is 1 when the absolute value of the historical rotor speed is greater than or equal to a second preset speed threshold. When the absolute value of the historical rotor speed is greater than the first preset speed threshold and less than the second preset speed threshold, the weighting weight is obtained based on S401-S403.

[0103] For example, the weighted weights satisfy Formula 3.

[0104] Formula 3.

[0105] in, Used to represent the absolute value of historical rotor speed, Used to represent the first preset speed threshold. Used to indicate the second preset speed threshold. Used to represent the first difference, Used to represent the second difference.

[0106] As can be seen from S401-S403, the solution provided by the embodiments of this application determines the first difference based on the second preset speed threshold and the historical rotor speed, determines the second difference based on the first preset speed threshold and the second preset speed threshold, and uses the ratio of the first difference to the second difference as a weighting weight. This allows the weighting weight to change continuously from 0 to 1 as the current initial speed increases, thereby achieving a smooth switch from high-frequency injection method to back EMF method within the transition range. This enables the algorithm's transition process to adaptively match the speed change, reducing the workload required to manually set the transition curve.

[0107] The following section introduces the specific implementation method for predicting the second rotor speed of the motor at the current moment based on the back electromotive force method.

[0108] As a feasible implementation method, S202 predicts the second rotor speed of the motor at the current moment based on the back electromotive force method, including: S501, Obtain the motor current and motor voltage.

[0109] For example, the motor current is the sampled current of the motor's three phases abc.

[0110] One possible implementation is to determine the motor current as follows: sample the voltage values ​​corresponding to the U-phase and V-phase currents, and obtain the U-phase current value and V-phase current value after calibration and conversion. Subsequently, the motor controller uses Kirchhoff's current law, i.e., the sum of the three-phase currents is zero, to calculate the W-phase current value; based on the U-phase current value, V-phase current value, and W-phase current value, the motor current is obtained.

[0111] One possible approach is to obtain the motor voltage by acquiring it using a three-phase voltage sensor.

[0112] Alternatively, the motor voltage can be directly obtained from the alpha and beta axis voltages output in conventional field-oriented control (FOC). The advantage of this method is that it eliminates the need for additional hardware to sample the actual motor voltage.

[0113] S502, based on current, voltage and extended state observers, obtains the extended back electromotive force.

[0114] An extended state observer is a dynamic system whose inputs are current and voltage. Its internal state contains an estimate of the extended back electromotive force (EMF), which reflects the difference between the current change and the voltage input. By comparing the deviation between the actual input current and the expected current calculated from the voltage, the extended state observer dynamically adjusts its internal state, gradually bringing the estimated extended back EMF closer to the true value, thus obtaining the extended back EMF.

[0115] As a feasible implementation method, S502 includes: iteratively calculating the state equations of the current and voltage input extended state observer to obtain the direct-axis extended back EMF and the quadrature-axis extended back EMF.

[0116] Among them, extended back EMF includes: direct-axis extended back EMF and quadrature-axis extended back EMF.

[0117] By iteratively calculating the state equations of the extended state observer using current and voltage inputs, the direct-axis extended back EMF and quadrature-axis extended back EMF are obtained. This allows the magnitude and phase information of the back EMF to be separated from the current dynamics, thus avoiding the noise amplification problem caused by directly solving the current equations containing the back EMF in an open-loop manner. This, in turn, improves the estimation accuracy of rotor speed and position during the dynamic process.

[0118] S503. Estimate the second rotor speed based on the extended back electromotive force.

[0119] The extended back electromotive force (EMF) contains motion information of the motor's mover, and its amplitude, frequency, or phase changes have a definite correspondence with the rotor's rotational speed. When the rotor speed changes, the amplitude of the extended back EMF changes accordingly, and its electrical angular frequency is also proportional to the rotor speed. Therefore, after obtaining the extended back EMF through an extended state observer, the rotor speed at the current moment can be deduced from the amplitude or frequency characteristics of the extended back EMF based on this correspondence.

[0120] As one possible implementation, S503 includes: calculating the phase angle of the extended back electromotive force, comparing the phase angle with an internal angle estimate to obtain a phase difference; performing proportional-integral adjustment on the phase difference to obtain a frequency adjustment amount; accumulating the frequency adjustment amount to the fundamental frequency to obtain an electrical angular frequency; converting the electrical angular frequency to a mechanical angular frequency and multiplying it by a preset conversion factor to obtain a second rotor speed.

[0121] As can be seen from S501-S503, the solution provided by the embodiments of this application obtains the current and voltage of the motor, and obtains the extended back EMF based on the current, voltage and extended state observer. Then, the second rotor speed is estimated based on the obtained extended back EMF. Without significantly increasing the computational burden, the back EMF and its changes can be regarded as internal disturbances of the system and estimated in real time. Thus, even when there are certain deviations in motor parameters or changes in operating conditions, a relatively stable speed observation value can still be obtained, thereby improving the robustness of the back EMF method in engineering environments.

[0122] As a feasible implementation method, S503 includes: S601. Based on the direct-axis extended back EMF and the quadrature-axis extended back EMF, predict the rotor position of the back EMF at the current moment.

[0123] As one possible approach, the direct-axis extended back EMF and the quadrature-axis extended back EMF are compared to obtain the back EMF ratio; based on the back EMF ratio, the arctangent angle is calculated to obtain the estimated back EMF rotor position.

[0124] The back EMF ratio is the ratio between the direct-axis extended back EMF and the quadrature-axis extended back EMF.

[0125] S602. Based on the current back EMF rotor position, estimate the second rotor speed.

[0126] Perform a difference calculation between the current back-EMF rotor position and the previous back-EMF rotor position to obtain the back-EMF rotor position difference value; divide the back-EMF rotor position difference value by the control cycle duration to obtain the rate of change of the back-EMF rotor position; determine the rate of change of the back-EMF rotor position as the estimated second rotor speed at the current moment.

[0127] As can be seen from S601-S602, the solution provided by the embodiments of this application first estimates the rotor position of the back EMF at the current moment based on the direct-axis extended back EMF and the quadrature-axis extended back EMF, and then estimates the second rotor speed based on the rotor position of the back EMF at the current moment. It can utilize the differential relationship between position and speed to first obtain a relatively smooth position estimate, and then obtain the speed through position difference. This suppresses high-frequency fluctuations in speed estimation when measurement noise or observation noise exists, thereby improving the smoothness and availability of the second rotor speed.

[0128] The following section introduces a scheme for predicting the second rotor speed of a motor at the current moment based on the back electromotive force method, using specific formulas.

[0129] First, the voltage equation of the motor is established under the estimated rotor synchronous rotation coordinate system (i.e., the γ-δ coordinate system), and the voltage equation of the motor satisfies Formula 4.

[0130] Formula 4.

[0131] in, Used to represent the stator voltage component along the γ-axis. Used to represent the stator voltage component along the delta axis. Used to indicate stator resistance Used to represent differential operators, Used to represent d-axis inductance. Used to represent q-axis inductance. Used to represent the rotor speed estimated by the extended state observer. Used to represent the stator current component in γ. Used to represent the stator current component along the δ axis. e γ Used to represent the component of back electromotive force along the γ-axis. Used to represent the component of back electromotive force on the δ axis.

[0132] Among them, the back electromotive force components of the γ-axis and δ-axis satisfy Formula 5.

[0133] Formula 5.

[0134] in, Used to represent the magnitude of the extended back electromotive force. Used to represent the difference between the actual rotor position and the estimated rotor position of the motor. Used to represent the actual rotor speed.

[0135] When the rotational speed estimated by the extended state observer is exactly equal to the actual rotational speed (i.e. ), θ e It satisfies Formula Six.

[0136] Formula Six.

[0137] in, Used to represent the ratio of back electromotive force.

[0138] To estimate the extended back electromotive force component e in the rotor synchronous rotating coordinate system γ and e δ You can put e γ and e δ Treating the disturbance as an unknown in the inner current loop, extended state observers are designed for the γ-axis and δ-axis respectively, resulting in γ-axis and δ-axis extended state observer models. The γ-axis extended state observer model satisfies Equation 7, and the δ-axis extended state observer model satisfies Equation 8.

[0139] Formula 7.

[0140] in, Used to represent the γ-axis current observation error; Used to represent the estimated γ-axis current output of the ESO; To represent a known disturbance along the γ-axis, it needs to be calculated using motor parameters such as the motor's resistance, direct-axis inductance, and quadrature-axis inductance. Used to represent the γ-axis perturbation estimate; Used to represent the first gain of the γ-axis observer; Used to represent The time derivative; Used to represent the second gain of the γ-axis observer.

[0141] Formula 8.

[0142] in, Used to represent the observation error of the delta-axis current; Used to represent the estimated delta-axis current output of the ESO; To represent a known disturbance along the delta axis, it needs to be calculated using motor parameters such as the motor's resistance, direct-axis inductance, and quadrature-axis inductance. Used to represent the δ-axis perturbation estimate; Used to represent the first gain of the delta-axis observer; Used to represent The time derivative; Used to represent the second gain of the delta-axis observer.

[0143] To ensure the system stability of the extended state observer and to ensure the rapid convergence of the estimation error, β i1 and β i2 The value of satisfies Formula Nine.

[0144] Formula Nine.

[0145] Where, β i1 It can be It can also be used as ;β i2 It can be It can also be used as h is used to represent the step size of the control system.

[0146] The total disturbance along the γ-axis can be estimated in real time using Equations 7 and 8. Total disturbance along the δ axis , It is e γ The estimated quantity, It is e δ The estimate. Therefore, combining with Formula 6, θ eThe calculation formula can be rewritten as Formula 10.

[0147] Formula 10.

[0148] In obtaining θ e After that, it is necessary to use θ e Closed-loop correction of the rotor position of the motor is performed to bring the γ-δ coordinate system close to the dq coordinate system, thereby completing the magnetic field orientation.

[0149] In this way, the back electromotive force is reconstructed in the γ-δ coordinate system, and the rotational speed and position are estimated by combining the phase-locked loop velocity and position observer. This avoids the dependence of the sliding mode observer on the filter, reduces the adjustment parameters, and enhances the system's anti-interference capability.

[0150] The following section introduces the specific implementation method for predicting the first rotor speed of the motor at the current moment based on the high-frequency injection method.

[0151] As a feasible implementation method, S202 predicts the first rotor speed of the motor at the current moment based on the high-frequency injection method, including: S701, based on the inverter injecting high-frequency voltage signals into the stator windings of the motor.

[0152] The inverter is connected between the power supply and the stator winding.

[0153] The high-frequency voltage signal can be a sinusoidal voltage signal or a square wave voltage signal. This application does not limit the specific waveform of the high-frequency voltage signal, as long as it can excite a high-frequency current response containing rotor position information.

[0154] In some embodiments, such as Figure 4 The diagram illustrates the waveform variation of the PWM carrier signal over time t. The horizontal axis represents time t, the vertical axis represents the carrier amplitude, and the waveform is a triangular wave. The starting point of each cycle serves as the synchronization reference for subsequent injected voltage and current sampling. Combined with... Figure 4 The start point of the PWM cycle, Figure 5 The waveform of the injected high-frequency square wave voltage changes over time. Figure 5 The horizontal axis represents time t, and the vertical axis represents the voltage amplitude, with the unit of voltage amplitude being volts. The high-frequency square wave voltage has a constant amplitude, but its polarity changes at the beginning of each PWM cycle, alternating between positive and negative half-cycles. The period of the high-frequency square wave voltage waveform is... Figure 4 Their PWM cycles are the same.

[0155] S702. Acquire the high-frequency current response generated by the motor under high-frequency voltage signal excitation.

[0156] For example, in combination Figure 4 and Figure 5,exist Figure 4 PWM timing and Figure 5 Under the action of high-frequency square wave injection voltage, Figure 6 The waveforms of the current response along the α-β axes in the stationary coordinate system are shown, which are the waveforms of the high-frequency current response. Figure 6 The horizontal axis represents time t, and the vertical axis represents the current amplitude, with the unit of current amplitude being amperes. Figure 6 The solid line represents the measured total current. The measured total current is composed of the superposition of the high-frequency component and the fundamental frequency component. The frequency of the high-frequency component is the same as that of the injected square wave, and the waveform is approximately a triangular wave. Its amplitude changes symmetrically with the alternation of the polarity of the injected voltage. The frequency of the fundamental frequency component is lower than that of the injected frequency, and its waveform is smooth, reflecting the normal operating current of the motor. Figure 6 The dashed line represents the separated fundamental frequency current, whose waveform is smooth and free of high-frequency ripples; the difference between the total current and the fundamental frequency current is the high-frequency current component.

[0157] S703 Extract the rotor position error signal from the high-frequency current response.

[0158] As one possible implementation, the high-frequency voltage signal is a sinusoidal voltage signal. The high-frequency current response is multiplied and demodulated with a preset high-frequency reference signal to obtain a demodulated signal; the demodulated signal is then filtered out for high-frequency components using a low-pass filter to obtain a baseband signal; the rotor position error signal is then extracted from the baseband signal.

[0159] S704. Input the rotor position error signal to the phase-locked loop speed and position observer and output the first rotor speed.

[0160] As can be seen from S701-S704, the solution provided by the embodiments of this application injects a high-frequency voltage signal into the stator winding of the motor through an inverter, collects the high-frequency current response, extracts the rotor position error signal from it, and inputs the error signal into the phase-locked loop speed position observer to output the first rotor speed. It can maintain the ability to observe the rotor position at low speed or even zero speed by utilizing the salient pole effect or saturation effect, thereby realizing the rotor speed estimation in the zero speed and ultra-low speed range without relying on mechanical position sensors, and thus expanding the operating speed range of sensorless control.

[0161] In some embodiments, the high-frequency voltage signal is a square wave voltage signal, and the frequency of the high-frequency voltage signal is greater than the fundamental operating frequency of the motor and less than the switching frequency of the inverter.

[0162] As a feasible implementation method, S703 includes: S801. Sample the high-frequency current during the positive and negative half-cycles of each square wave period of the square wave voltage signal to obtain the positive half-cycle sampling value and the negative half-cycle sampling value.

[0163] S802. Perform a differential operation on the positive half-cycle sampling value and the negative half-cycle sampling value to obtain the amplitude envelope of the high-frequency current.

[0164] S803. Demodulate the amplitude envelope to extract the rotor position error signal.

[0165] As can be seen from S801 - S802, in the solution provided by the embodiment of the present application, by using a square-wave voltage signal with a frequency greater than the fundamental operating frequency and less than the inverter switching frequency as the high-frequency injection signal, sampling the high-frequency current in the positive half-cycle and negative half-cycle of each square-wave period respectively, and then eliminating the influence of the fundamental current and back electromotive force through differential operation to obtain the amplitude envelope of the high-frequency current and demodulate the rotor position error signal, it is possible to effectively suppress the fundamental operating component and back electromotive force interference by using the high-frequency characteristics of the square-wave signal and the differential cancellation method, thereby relatively cleanly extracting the rotor position-related information under the operating conditions with a low signal-to-noise ratio, and further improving the anti-interference ability and estimation stability of the high-frequency injection method.

[0166] Next, a solution for estimating the first rotor speed of the motor at the current moment based on the high-frequency injection method will be introduced in combination with specific formulas.

[0167] [[ID=FIG. ](https: / / img1.doubao.com / compress / 20240711111011.png) The present application adopts the pulsating high-frequency square-wave injection method, sets the injection frequency to half of the inverter switching frequency (for example, when the switching frequency is 20 kilohertz (kHz), the injection frequency is 10 kHz), and samples the current at the starting point of adjacent pulse-width modulation periods. Since the time interval between the two samplings is very short, it can be approximately considered that the fundamental frequency current signal does not change, so the fundamental frequency current can be regarded as a fixed bias. Utilizing the characteristics that the time interval between the two samplings is extremely short and the fundamental frequency current is approximately constant, the high-frequency current response is separated from the sampled current. And by injecting a high-frequency square-wave voltage in the γ-δ coordinate system, extracting the envelope of the high-frequency current response on the α-β axis, and realizing rotor position estimation through vector cross-multiplication and a phase-locked loop speed position observer, without a filter, it has a simple structure, few parameters, and high robustness.

[0168] The specific implementation steps are as follows: Inject a high-frequency square-wave voltage with an amplitude of U h in the estimation coordinate system γ-δ, and the high-frequency injection voltage satisfies Equation XI.

[0169] Equation XI.

[0170] Where, is used to represent the high-frequency injection voltage on the γ axis; is used to represent the high-frequency injection voltage on the δ axis; is used to represent the high-frequency voltage amplitude; n is used to represent the injection step number, which is a positive integer; is used to represent; is used to represent; is used to represent; is used to represent; is used to represent.

[0171] Subsequently, the current components in the two-phase stationary coordinate system (i.e., the α-β axis coordinate system) need to be transformed into the two-phase rotating coordinate system (dq axis coordinate system) that rotates with the rotor in order to achieve field-oriented control. The current components in the d-axis and q-axis of the transformed rotating coordinate system satisfy Equation XII.

[0172] Formula twelve.

[0173] in, Used to represent the current component along the d-axis of the transformed rotating coordinate system. Used to represent the current component along the q-axis in the rotated coordinate system. Used to indicate the actual rotor position of the motor. Used to represent the current component along the α-axis in a stationary two-phase coordinate system. Used to represent the current component under the β axis in a stationary two-phase coordinate system.

[0174] When there is an error angle between the estimated coordinate system and the actual coordinate system (i.e., the difference between the actual rotor position and the estimated rotor position of the motor), the voltage transformation relationship between the estimated coordinate system and the actual coordinate system satisfies Formula Thirteen. The error angle satisfies Formula Fourteen.

[0175] The estimated relationship between the γ-δ voltage and the actual dq voltage satisfies Formula Thirteen.

[0176] Formula Thirteen.

[0177] in, Used to represent the d-axis high-frequency injection voltage; Used to represent the q-axis high-frequency injection voltage.

[0178] Formula Fourteen.

[0179] in, Used to represent the error angle, Used to represent the rotor position of the motor in the actual rotor synchronous rotation coordinate system (i.e., the actual rotor position of the motor). Used to represent the rotor position of the motor in the estimated rotor synchronous rotation coordinate system (i.e., the estimated rotor position).

[0180] For example, Figure 7 The spatial relationship between the actual rotor rotation coordinate system and the estimated rotor synchronous rotation coordinate system is shown. Among them, Figure 7This includes a stationary two-phase coordinate system, an actual rotor synchronous rotating coordinate system, and an estimated rotor synchronous rotating coordinate system (i.e., the γ-δ axis coordinate system). In the stationary two-phase coordinate system, the α-axis is the horizontal axis and the β-axis is the vertical axis; in the actual rotor synchronous rotating coordinate system, the d-axis is the vertical axis and the q-axis is the cross axis; and in the estimated rotor synchronous rotating coordinate system, the γ-axis is the vertical axis and the δ-axis is the cross axis. The angle between the actual d-axis and the estimated γ-axis represents the rotor position estimation error (i.e., the γ-δ axis coordinate system). The angle between the α-axis and the γ-axis is the target rotor position (i.e., The angle between the α-axis and the d-axis is the actual rotor position (i.e., In this context, the actual rotor synchronous rotating coordinate system rotates counterclockwise around the stationary two-phase coordinate system, and the actual electric angular velocity of the rotor (i.e., ...) is... The actual rotor speed is represented by the actual rotor rotation coordinate system. The target rotor speed (i.e., the estimated rotor synchronous rotation coordinate system, relative to the stationary two-phase coordinate system, rotates counterclockwise in a circular direction) is estimated. The estimated rotor speed is obtained by using a virtual estimated rotating coordinate system. In this way, the algorithm continuously corrects the rotor position estimation error, ensuring that the estimated rotor synchronous rotating coordinate system coincides as closely as possible with the actual rotor rotating coordinate system, thus achieving precise magnetic field orientation and torque control.

[0181] Substituting Formula 11 and Formula 13 into Formula 12, we get: Formula 15.

[0182] Substituting Equation 11 into Equation 15, we can obtain the high-frequency current response, which satisfies Equation 16.

[0183] Formula Sixteen.

[0184] Subsequently, the envelope signal of the high-frequency current response can be obtained by combining the sign of the high-frequency square wave signal with Formula 13. The envelope signal of the high-frequency current response satisfies Formula 17.

[0185] Formula 17.

[0186] in, The cosine component used to represent the envelope signal of the extracted high-frequency current response. The sinusoidal component of the envelope signal used to represent the extracted high-frequency current response. Used to represent high-frequency electrical angular frequency.

[0187] Subsequently, after obtaining the high-frequency current response envelope, the estimated position error can be obtained by vector difference multiplication, and then the rotor position of the motor can be obtained through the phase-locked loop speed and position observer.

[0188] For example, such as Figure 8 As shown, the envelope signal obtained after demodulation and The cosine value of the estimated angle is respectively Sine value Perform vector multiplication to generate a position error signal (i.e., The error signal is processed by a proportional-integral (PI) controller and outputs a high-frequency angular frequency (ω). HF After being processed by an integrator (i.e., 1 / S), the estimated target rotor position is obtained (i.e., The error signal is fed back to the input of the difference multiplication operation, forming a closed-loop phase-locked loop structure. Through this phase-locked loop velocity-position observer, the position error signal is gradually adjusted to zero, thereby causing the target rotor position to converge to the actual rotor electrical angle, realizing sensorless rotor position tracking.

[0189] In some embodiments, i αh and i βh The acquisition method is as follows: the relationship between the sampling current, the fundamental frequency current, and the high-frequency current satisfies Formula 18.

[0190] Formula 18.

[0191] in, Used to represent the sampled current. Used to represent fundamental frequency current Used to represent high-frequency current.

[0192] If current sampling is performed at the beginning of each PWM cycle, then the base frequency current and high frequency current can be obtained by satisfying Equation 19 and Equation 20, respectively.

[0193] Formula 19.

[0194] Where z is used to represent the operator that advances the sampling period by one period.

[0195] Formula 20.

[0196] For example, such as Figure 9 As shown, the calculation process for obtaining the target rotor position using the back electromotive force method and the high-frequency injection method is illustrated. Figure 9 In the middle, the three-phase current (i.e., i a i b i c After coordinate transformation, the input is given to the extended state observer (ESO), and simultaneously the voltage command (i.e., u) is sent. γ and u δ The data is also fed into the extended state observer; the extended state observer outputs an estimate of the back electromotive force (i.e., w) in the estimated rotating coordinate system. γand w δ The estimator is obtained by arctangent operation (i.e., arctan(w)). γ / (-w δ The rotor position error (i.e., θ) is obtained. e The error signal is fed into a proportional-integral (PI) controller for adjustment to obtain the first rotor speed (i.e., the back electromotive force rotor speed ω). ESO Meanwhile, since the three-phase current is transformed to obtain the current on the α-axis (i.e., i...), α ) and the current value on the β axis (i.e., i β The high-frequency response current is extracted by passing the current values ​​on the α-axis and β-axis through a bandpass filter (BPF), thus obtaining the high-frequency current component on the α-axis (i.e., i). αh ) and the high-frequency current component on the β axis (i.e., i βh High-frequency signal processing is performed on the high-frequency current components on the α-axis and β-axis to obtain the rotor position error (i.e., θ). e The rotor speed (ω) is obtained by adjusting the rotor error input proportional-integral controller. HF Then, a weighted average of the first and second rotor speeds is calculated to obtain the target rotor speed (i.e., The target rotor speed is obtained after integrator (i.e., 1 / s) and remainder processing to obtain the target rotor position (i.e., ...). Meanwhile, the target rotor speed is also processed by a delay unit (i.e., 1 / z) and used as a speed feedback signal.

[0197] In some embodiments, when the historical rotor speed is less than a first preset speed threshold (e.g., 300 rpm), the motor speed is in the zero-speed region. At this time, the back electromotive force (EMF) is weak, and the traditional back EMF model fails. Therefore, the low-speed rotor position needs to be obtained through a pulsed high-frequency square wave injection method to control the motor operation.

[0198] As a feasible implementation method, after executing S201, the motor control method also includes: S901. When the historical rotor speed is less than or equal to the first preset speed threshold, the low-speed rotor speed and the low-speed rotor position of the motor at the current moment are estimated based on the high-frequency injection method.

[0199] As one possible implementation, S901 includes: injecting a high-frequency voltage signal into the stator winding of the motor and acquiring the resulting high-frequency current response; demodulating the high-frequency current response and extracting a signal containing the rotor position error; inputting the rotor position error signal into a phase-locked loop speed and position observer, so that the phase-locked loop speed and position observer outputs the low-speed rotor speed of the motor at the current moment through closed-loop regulation; and performing an integral calculation on the low-speed rotor speed to obtain the low-speed rotor position of the motor at the current moment.

[0200] S902. Control the motor operation based on the low-speed rotor speed and the current low-speed rotor position.

[0201] For details on the specific implementation of controlling the motor operation based on the low-speed rotor speed and the low-speed rotor position at the current moment, please refer to the introduction of S205. This application will not elaborate further here.

[0202] As can be seen from S901-S902, the solution provided by the embodiments of this application, when the historical rotor speed is less than or equal to the first preset speed threshold, only estimates the low-speed rotor speed and low-speed rotor position based on the high-frequency injection method and controls the motor operation. It can utilize the high-frequency injection method's strong observability of rotor position in the low-speed region for separate control, thereby avoiding the introduction of the back EMF method, which has poor observation effect under low-speed conditions, in this speed region, and thus improving the reliability of rotor state estimation in the low-speed range and the stability of the control system.

[0203] In some embodiments, when the historical rotor speed is greater than a second preset speed threshold (e.g., 500 rpm), the motor speed is in the medium-high speed range and the back EMF is significant. The extended back EMF can be reconstructed using a state extension observer (ESO).

[0204] As a feasible implementation method, after executing S201, the motor control method also includes: S1001. When the historical rotor speed is greater than the second preset speed threshold, the high-speed rotor speed and the high-speed rotor position of the motor at the current moment are estimated based on the back electromotive force method.

[0205] As one possible implementation, S1001 includes: acquiring the current signal and voltage signal of the motor; inputting the current signal and voltage signal into an extended state observer so that the extended state observer reconstructs the direct-axis extended back EMF and the quadrature-axis extended back EMF; calculating the back EMF rotor position based on the direct-axis extended back EMF and the quadrature-axis extended back EMF; performing differential operation on the back EMF rotor position to obtain the high-speed rotor speed; and using the back EMF rotor position as the high-speed rotor position.

[0206] S1002. Control the motor operation based on the high-speed rotor speed and the current high-speed rotor position.

[0207] For details on the specific implementation of controlling the motor operation based on the high-speed rotor speed and the high-speed rotor position of the motor at the current moment, please refer to the introduction of S205, which will not be repeated here.

[0208] As can be seen from S1001-S1002, the solution provided by the embodiments of this application, when the historical rotor speed is greater than the second preset speed threshold, only estimates the high-speed rotor speed and high-speed rotor position based on the back EMF method and controls the motor operation. It can take advantage of the high estimation accuracy of the back EMF method in the high-speed section and the fact that it does not require active injection of high-frequency signals, thereby avoiding the additional harmonic losses and negative impact on voltage utilization caused by high-frequency injection during high-speed operation, and thus improving the control efficiency and torque output capability in the high-speed operation area.

[0209] In some embodiments, the traditional position weighting scheme can be compared with the technical solution of this application through simulation.

[0210] The simulation parameters were set as follows: switching frequency of 20kHz, switching range of 300rpm to 500rpm, total simulation time of 3.5 seconds, and the motor starting to accelerate after 0.4 seconds. The simulation results are as follows. Figure 10 , Figure 11 and Figure 12 As shown. Figure 10 It displays a stepped waveform showing the change of control state over time, with the horizontal axis representing time and the vertical axis representing control state indicators (such as start-up, acceleration, steady state, etc.). Figure 10 The intermediate state values ​​change in a stepped manner, and the transition times correspond to the switching points of different control stages. Figure 10 The first step is state 1. Figure 10 The second step is state 2. Figure 10 The third stage is state 3. Among them, state 1 is the stage dominated by the high-frequency injection method, with a large estimation error at the start time, which gradually decreases as the algorithm converges; state 2 is the weighted switching zone, where the rotation speed achieves a smooth transition and the position waveform does not show jitter; state 3 is the stage dominated by the extended state observer, where the estimation error stabilizes within ±1%.

[0211] Figure 11 This displays the curves showing the actual and estimated motor speeds over time. The horizontal axis represents time, and the vertical axis represents the speed values, measured in revolutions per minute (rpm). Figure 11 The solid line represents the actual speed waveform, and the dashed line represents the estimated speed waveform. During the startup phase (corresponding to...) Figure 10 The first step) and the acceleration phase (corresponding to) Figure 10 In the second step segment, the two curves almost overlap; in the steady-state stage (corresponding to...) Figure 10 (The third step), both curves are smooth, with the dashed line fluctuating slightly around the solid line. Figure 12 This displays a curve showing how the error between the actual and estimated rotational speeds changes over time. The horizontal axis represents time, and the vertical axis represents the error value. The unit of the error value is the same as the rotational speed value, which is revolutions per minute. Figure 12 The mean square error curve exhibits positive and negative spikes during the start-up and acceleration phases, with the peak values ​​subsequently decaying; after entering steady state, the error amplitude approaches zero. This indicates that the estimated speed converges rapidly across the entire speed range, and the steady-state accuracy meets the control requirements. The simulation results demonstrate that the speed-weighted switching method proposed in this application has better position estimation smoothness in the transition range.

[0212] The following section provides a detailed description of this application using specific examples.

[0213] Before the start of the first control cycle after the vehicle is powered on, the controller executes an initialization procedure. At this time, the rotor speed is identified as being in the zero-speed low-speed range, and the starting rotor speed at the initial start-up moment is estimated using a high-frequency injection method. Subsequently, the starting rotor speed is determined to be the estimated initial rotor speed from the previous moment, and it is determined whether the starting rotor speed is greater than a first preset speed threshold and whether it is less than a second preset speed threshold. If the starting rotor speed is less than the first preset speed threshold, the low-speed rotor speed and low-speed rotor position of the motor are estimated using the high-frequency injection method, and the motor operation is controlled based on the low-speed rotor speed and low-speed rotor position. Upon entering the next control cycle, the initial rotor speed is updated based on the low-speed rotor speed obtained in the previous control cycle, resulting in an initially updated initial rotor speed. It is then determined whether the initially updated initial rotor speed is greater than the first preset speed threshold and whether it is less than the second preset speed threshold, thus obtaining the updated low-speed rotor speed and updated low-speed rotor position. This process iterates until the updated initial rotor speed is greater than the first preset speed threshold and less than the second preset speed threshold, indicating that the motor speed is in the transition range.

[0214] Subsequently, the first rotor speed of the motor at the current moment is estimated based on the high-frequency injection method, and the second rotor speed of the motor at the current moment is estimated based on the back electromotive force method; a weighted average calculation is performed based on the first rotor speed and the second rotor speed to determine the estimated target rotor speed of the motor at the current moment; the target rotor speed is integrated to determine the estimated target rotor position of the motor at the current moment; and the motor operation is controlled based on the target rotor speed and the target rotor position.

[0215] As the motor rotor speed changes, if the historical rotor speed is greater than the second preset speed threshold, the high-speed rotor speed and high-speed rotor position of the motor at the current moment are estimated based on the back electromotive force method; based on the high-speed rotor speed and the high-speed rotor position of the motor at the current moment, the motor operation is controlled.

[0216] In some embodiments, Figure 13 and Figure 14 This is a waveform diagram of the rotor position during the transition switching range in a traditional sensorless control scheme. Figure 15 This is a waveform diagram of the rotor position in this application.

[0217] Figure 13 The rotor position waveforms estimated based on the high-frequency injection method and the rotor position waveforms estimated based on the back electromotive force method are shown. Figure 13 The horizontal axis represents time in seconds, and the vertical axis represents rotor position in radians. The graph contains two curves: the solid line represents the rotor position estimated using the back electromotive force method, and the dashed line represents the rotor position estimated using the high-frequency injection method. Both curves are located around 0.5 radians at time points 2.72, 2.76, 2.80, 2.84, and 2.88 seconds, and then jump to around 5.8 radians at time points 2.74, 2.78, 2.82, and 2.86 seconds, exhibiting periodic large fluctuations. In the transition zone (e.g., around 2.74 seconds), the two curves jump synchronously, but there are instantaneous positional discontinuities during the transition. Figure 14 The waveform of the rotor position estimated by the traditional weighted average method over time is shown. The horizontal axis represents time in seconds, and the vertical axis represents the rotor position in radians. Figure 14 Waveform variation pattern and Figure 13 Completely consistent: the values ​​are 0.5 radians at times 2.72 and 2.76, and 5.8 radians at times 2.74 and 2.78, exhibiting the same periodic jumps. This indicates that the traditional weighted switching strategy failed to smoothly transition, resulting in significant jitter in rotor position estimation. This jitter affects the stability and dynamic performance of sensorless control.

[0218] Figure 15 The horizontal axis represents time (unit: seconds, 0.2 seconds per division), and the vertical axis represents rotor position (unit: radians). Figure 15 The diagram shows a smoothly rising curve, starting at approximately 1.42 seconds and ending at approximately 1.56 seconds, with the position value continuously increasing from approximately 1.44 radians to approximately 1.56 radians. Throughout the process, the curve exhibits no jumps or oscillations, and the transition zone is smooth and continuous, demonstrating that the speed-weighted switching strategy employed in this application can achieve a smooth transition between the two estimation algorithms in sensorless control.

[0219] This application adopts a three-stage, full-speed-domain sensorless control architecture: Under low-speed conditions, a pulsed high-frequency square wave injection method is used; under medium- and high-speed conditions, an extended state observer is used for position estimation, avoiding the estimation lag problem caused by filters and offering advantages such as fewer adjustment parameters and high robustness. In the transition speed range of 300-500 rpm, a speed-based weighted average switching control is employed. The estimated speeds output by the two algorithms are weighted, fused, and then integrated to obtain position information, effectively avoiding switching jitter caused by the superposition of position errors and achieving a smooth transition. This scheme covers the full-speed-domain operation of the motor, requires no physical position sensor, improves system reliability and dynamic response performance, and is suitable for redundant solutions or replacement of position sensors in new energy vehicle drive motors.

[0220] Through the Figure 13 , Figure 14 and Figure 15 Analysis was conducted, and the rotor position waveforms under the traditional position weighting scheme and the speed weighting scheme of this application were compared. It can be seen that the position waveform of the scheme in the switching zone is smooth and without jitter, while the traditional scheme has obvious position jitter.

[0221] This application embodiment can divide the motor control device into functional modules according to the above method. For example, the motor control device may include functional modules corresponding to each functional division, or two or more functions may be integrated into one processing module. The integrated module can be implemented in hardware or as a software functional module. The module division in this application embodiment is illustrative and only represents one logical functional division; other division methods may be used in actual implementation.

[0222] Reference Figure 16 The motor control device includes a historical rotor speed acquisition module 1601, a rotor speed estimation module 1602, a target rotor speed determination module 1603, a target rotor position determination module 1604, and a motor control module 1605.

[0223] The historical rotor speed acquisition module 1601 is used to acquire the estimated historical rotor speed at the previous moment.

[0224] The rotor speed prediction module 1602 is used to predict the first rotor speed of the motor at the current moment based on the high-frequency injection method and the second rotor speed of the motor at the current moment based on the back electromotive force method when the historical rotor speed is greater than the first preset speed threshold and less than the second preset speed threshold.

[0225] The target rotor speed determination module 1603 is used to determine the estimated target rotor speed of the motor at the current moment based on the first rotor speed and the second rotor speed.

[0226] The target rotor position determination module 1604 is used to determine the estimated target rotor position of the motor at the current moment based on the target rotor speed.

[0227] The motor control module 1605 is used to control the operation of the motor based on the target rotor speed and the target rotor position.

[0228] In some embodiments, the target rotor position determination module is used to perform integral calculation on the target rotor speed to obtain the target rotor position of the motor.

[0229] In some embodiments, the motor control device further includes a target speed product determination module.

[0230] The target speed product determination module is used to determine the target speed product based on the target rotor speed and the preset time period. The target speed product is the product between the target rotor speed and the preset time period.

[0231] The target rotor position determination module is used to obtain the target rotor position by adding the target rotational speed product to the historical rotor position estimated at the previous moment.

[0232] In some embodiments, the target rotor speed determination module is used to perform a weighted calculation on the first rotor speed and the second rotor speed based on weighted weights to obtain the target rotor speed of the motor at the current moment.

[0233] In some embodiments, the first rotor speed and the second rotor speed are weighted and calculated based on weighted values ​​to obtain the estimated target rotor speed of the motor at the current moment, including: ; in, Used to indicate the target rotor speed Used to represent weighted weights, Used to indicate the first rotor speed. Used to indicate the speed of the second rotor.

[0234] In some embodiments, the motor control device further includes: a first difference determination module, a second difference determination module, and a weighted weight determination module.

[0235] The first difference determination module is used to determine a first difference based on a second preset speed threshold and the absolute value of a historical rotor speed. The first difference is the difference between the absolute values ​​of the second rotor speed and the historical rotor speed.

[0236] The second difference determination module is used to determine a second difference based on a first preset speed threshold and a second preset speed threshold. The second difference is the difference between the first preset speed threshold and the second preset speed threshold.

[0237] The weighted weight determination module is used to determine the weighted weight based on the first difference and the second difference. The weighted weight is the ratio between the first difference and the second difference.

[0238] In some embodiments, the motor control device further includes an acquisition module and an extended back EMF reconstruction module.

[0239] The acquisition module is used to acquire the motor current and the motor voltage.

[0240] The extended back EMF reconstruction module is used to input current and voltage to the extended state observer and reconstruct the extended back EMF through the extended state observer.

[0241] The rotor speed prediction module is used to calculate the second rotor speed based on the extended back electromotive force obtained from the reconstruction.

[0242] In some embodiments, the motor control device further includes an extended state variable determination module and an extended back electromotive force determination module.

[0243] The extended state variable determination module is used to determine the extended back electromotive force as an extended state variable.

[0244] An extended back EMF determination module is used to construct an extended state observer based on the extended state variables, and to predict the direct-axis extended back EMF and the quadrature-axis extended back EMF based on the extended state observer.

[0245] The rotor speed prediction module is used to predict the second rotor speed based on the direct-axis extended back EMF and the quadrature-axis extended back EMF.

[0246] In some embodiments, the motor control device further includes a back EMF rotor position determination module.

[0247] The back EMF rotor position determination module is used to estimate the current back EMF rotor position based on the direct-axis extended back EMF and the quadrature-axis extended back EMF.

[0248] The rotor speed prediction module is used to predict the second rotor speed based on the rotor position of the back electromotive force at the current moment.

[0249] In some embodiments, the motor control device further includes: a signal injection module, a high-frequency current response acquisition module, and a rotor position error signal extraction module.

[0250] The signal injection module is used to inject high-frequency voltage signals into the stator windings of the motor based on the inverter, which is connected between the power supply and the stator windings.

[0251] The high-frequency current response acquisition module is used to acquire the high-frequency current response generated by the motor under high-frequency voltage signal excitation.

[0252] The rotor position error signal extraction module is used to extract the rotor position error signal from the high-frequency current response.

[0253] The rotor speed prediction module is used to input the rotor position error signal to the phase-locked loop speed and position observer and output the first rotor speed.

[0254] In some embodiments, the high-frequency voltage signal is a square wave voltage signal, and the frequency of the high-frequency voltage signal is greater than the fundamental operating frequency of the motor and less than the switching frequency of the inverter. The motor control device also includes a high-frequency current sampling module.

[0255] The high-frequency current sampling module is used to sample the high-frequency current during the positive and negative half-cycles of each square wave cycle of the square wave voltage signal.

[0256] The rotor position error signal extraction module is used to eliminate the influence of fundamental current and back electromotive force through differential operation to obtain the amplitude envelope of high-frequency current, and then demodulate the amplitude envelope to obtain the rotor position error signal.

[0257] In some embodiments, the motor control device further includes a low-speed rotor position prediction module.

[0258] The low-speed rotor position estimation module is used to estimate the low-speed rotor speed and the low-speed rotor position of the motor at the current moment based on the high-frequency injection method when the historical rotor speed is less than or equal to a first preset speed threshold.

[0259] The motor control module is used to control the operation of the motor based on the low-speed rotor speed and the current position of the low-speed rotor.

[0260] In some embodiments, the motor control device further includes a high-speed rotor position prediction module.

[0261] The high-speed rotor position prediction module is used to predict the high-speed rotor speed and the high-speed rotor position of the motor at the current moment based on the back electromotive force method when the historical rotor speed is greater than or equal to a second preset speed threshold.

[0262] The motor control module is used to control the operation of the motor based on the high-speed rotor speed and the current position of the high-speed rotor.

[0263] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.

[0264] In an exemplary embodiment, this application also provides a computing device, which may include a processor and a memory. The processor may be a computing cluster composed of multiple computing nodes, and the memory may adopt a distributed memory architecture. The processor integrated in the computing device is configured to execute the motor control method of any of the above embodiments.

[0265] Figure 17 This is a schematic diagram of the architecture of another motor control device provided in an embodiment of this application. Figure 17 As shown, the motor control device includes: one or more memories 1720, one or more processors 1710, a communication bus 1740, and a communication interface 1730. The processors 1710 and memories 1720 are connected via the communication bus 1740; the one or more memories 1720 are used to store computer program code, which includes computer instructions; when the one or more processors 1710 execute the computer instructions, the computing device performs the motor control method provided in this embodiment.

[0266] Optionally, the memory 1720 may be a non-transitory computer-readable storage medium, such as a read-only memory (ROM), random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc., and the embodiments of this application do not impose any restrictions on this.

[0267] The processor 1710 may be a central processing unit (CPU), a network processor (NP), a digital signal processor (DSP), a microprocessor, a microcontroller, a programmable logic device (PLD), or any combination thereof, and the embodiments of this application do not impose any limitations on this.

[0268] The communication bus 1740 can be an industry standard architecture (ISA) bus, a peripheral component interconnect (PCI) bus, or an extended industry standard architecture (EISA) bus. This communication bus 1740 can be divided into an address bus, a data bus, and a control bus. For ease of representation, Figure 17It is represented by a single thick line, but this does not mean that there is only one bus or one type of communication bus.

[0269] The communication interface 1730 uses any transceiver-like device for communicating with other devices or communication networks, such as control systems, radio access networks (RAN), wireless local area networks (WLAN), etc.

[0270] This application also provides a computer-readable storage medium. All or part of the processes in the above method embodiments can be executed by computer instructions instructing related hardware; exemplarily, the related hardware can be a processor of a computing device. The program instructions can be stored in the above-described computer-readable storage medium, and when executed, the processes of the above method embodiments can be implemented. The computer-readable storage medium can be memory. The above-described computer-readable storage medium can also be an external storage device, such as a hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc. Further, the above-described computer-readable storage medium can include both memory and external storage devices. The above-described computer-readable storage medium is used to store the above-described computer program instructions and other programs and data required by the above-described motor control method.

[0271] This application also provides a vehicle that can perform the methods described in the above embodiments by means of a motor, an inverter, and a motor control device.

[0272] Although this application has been described herein in conjunction with various embodiments, those skilled in the art, by reviewing the accompanying drawings, disclosure, and appended claims, will understand and implement other variations of the disclosed embodiments in carrying out the claimed application. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "an" does not exclude multiple instances. A single processor or other unit can implement several functions listed in the claims. While different dependent claims may recite certain measures, this does not mean that these measures cannot be combined to produce good results.

[0273] Although this application has been described in conjunction with specific features and embodiments, it is obvious that various modifications and combinations can be made thereto without departing from the spirit and scope of this application. Accordingly, this specification and drawings are merely exemplary illustrations of this application as defined by the appended claims, and are considered to cover any and all modifications, variations, combinations, or equivalents within the scope of this application. Clearly, those skilled in the art can make various alterations and modifications to this application without departing from the spirit and scope of this application. Thus, if such modifications and modifications of this application fall within the scope of the claims of this application and their equivalents, this application is also intended to include such modifications and modifications.

[0274] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A motor control method, characterized in that, The motor control method includes: Obtain the historical rotor speed estimated at the previous moment; When the historical rotor speed is greater than a first preset speed threshold and less than a second preset speed threshold, the first rotor speed of the motor at the current moment is estimated based on the high-frequency injection method, and the second rotor speed of the motor at the current moment is estimated based on the back electromotive force method. Based on the first rotor speed and the second rotor speed, the target rotor speed estimated by the motor at the current moment is determined; Based on the target rotor speed, the estimated target rotor position of the motor at the current moment is determined; The motor is controlled to operate based on the target rotor speed and the target rotor position.

2. The motor control method according to claim 1, characterized in that, Determining the estimated target rotor position of the motor at the current moment based on the target rotor speed includes: The target rotor speed is integrated to obtain the target rotor position of the motor.

3. The motor control method according to claim 2, characterized in that, The step of integrating the target rotor speed to obtain the target rotor position of the motor includes: Based on the target rotor speed and the preset time period, the target speed product at the current moment is determined, and the target speed product is the product between the target rotor speed and the preset time period; The target rotor position is determined based on the product of the target rotational speed and the historical rotor position estimated at the previous moment.

4. The motor control method according to claim 1, characterized in that, Determining the target rotor speed of the motor at the current moment based on the first rotor speed and the second rotor speed includes: The first rotor speed and the second rotor speed are weighted and calculated to obtain the target rotor speed of the motor at the current time.

5. The motor control method according to claim 4, characterized in that, The step of weighting the first preset rotor speed and the second preset rotor speed based on the weighted weights to obtain the estimated target rotor speed of the motor at the current time includes: ; in, Used to represent the target rotor speed. Used to represent the weighted weights, Used to indicate the speed of the first rotor. Used to indicate the rotational speed of the second rotor.

6. The motor control method according to claim 4, characterized in that, The weighting weights are determined in the following manner: Based on the second preset speed threshold and the absolute value of the historical rotor speed, a first difference is determined, wherein the first difference is the difference between the absolute value of the second rotor speed and the absolute value of the historical rotor speed; Based on the first preset speed threshold and the second preset speed threshold, a second difference is determined, wherein the second difference is the difference between the first preset speed threshold and the second preset speed threshold; The weighting weight is determined based on the first difference and the second difference, and the weighting weight is the ratio between the first difference and the second difference.

7. The motor control method according to claim 6, characterized in that, The method of predicting the second rotor speed of the motor at the current moment based on the back electromotive force method includes: Obtain the current and voltage of the motor; Based on the current, the voltage, and the extended state observer, the extended back electromotive force is obtained; The second rotor speed is estimated based on the extended back electromotive force.

8. The motor control method according to claim 7, characterized in that, The process of obtaining the extended back electromotive force based on the current, the voltage, and the extended state observer includes: The current and voltage are input into the state equation of the extended state observer for iterative calculation to obtain the direct-axis extended back EMF and the quadrature-axis extended back EMF.

9. The motor control method according to claim 8, characterized in that, The step of estimating the second rotor speed based on the extended back electromotive force includes: Based on the direct-axis extended back EMF and the quadrature-axis extended back EMF, the rotor position of the back EMF at the current moment is estimated; Based on the rotor position of the back electromotive force at the current moment, the rotational speed of the second rotor is estimated.

10. The motor control method according to claim 1, characterized in that, The method of estimating the first rotor speed of the motor at the current moment based on the high-frequency injection method includes: Based on the inverter injecting a high-frequency voltage signal into the stator winding of the motor, the inverter is connected between the power supply and the stator winding; The high-frequency current response generated by the motor under the excitation of the high-frequency voltage signal was collected; Extract the rotor position error signal from the high-frequency current response; The rotor position error signal is input to the phase-locked loop speed and position observer, and the first rotor speed is output.

11. The motor control method according to claim 10, characterized in that, The high-frequency voltage signal is a square wave voltage signal, and the frequency of the high-frequency voltage signal is greater than the fundamental operating frequency of the motor and less than the switching frequency of the inverter. Extracting the rotor position error signal from the high-frequency current response includes: High-frequency current is sampled during the positive and negative half-cycles of each square wave period of the square wave voltage signal to obtain positive half-cycle sampling values ​​and negative half-cycle sampling values. The amplitude envelope of the high-frequency current is obtained by performing a difference operation between the positive half-cycle sampled value and the negative half-cycle sampled value. The amplitude envelope is demodulated to extract the rotor position error signal.

12. The motor control method according to claim 1, characterized in that, The motor control method further includes: If the historical rotor speed is less than or equal to the first preset speed threshold, the low-speed rotor speed and the low-speed rotor position of the motor at the current moment are estimated based on the high-frequency injection method. The motor is controlled to operate based on the low-speed rotor speed and the current low-speed rotor position.

13. The motor control method according to claim 1, characterized in that, The motor control method further includes: If the historical rotor speed is greater than or equal to the second preset speed threshold, the high-speed rotor speed and the high-speed rotor position of the motor at the current moment are estimated based on the back electromotive force method. The motor is controlled to operate based on the high-speed rotor speed and the current position of the high-speed rotor.

14. A motor control device, characterized in that, The motor control device further includes: a historical rotor speed acquisition module, a rotor speed estimation module, a target rotor speed determination module, a target rotor position determination module, and a motor control module; The historical rotor speed acquisition module is used to acquire the estimated historical rotor speed at the previous moment; The rotor speed prediction module is used to predict the first rotor speed of the motor at the current moment based on the high-frequency injection method and the second rotor speed of the motor at the current moment based on the back electromotive force method when the historical rotor speed is greater than the first preset speed threshold and less than the second preset speed threshold. The target rotor speed determination module is used to determine the estimated target rotor speed of the motor at the current moment based on the first rotor speed and the second rotor speed. The target rotor position determination module is used to determine the estimated target rotor position of the motor at the current moment based on the target rotor speed. The motor control module is used to control the operation of the motor based on the target rotor speed and the target rotor position.

15. A vehicle, characterized in that, The vehicle includes a motor, an inverter, and a motor control device as described in claim 14.