Rotor position detection method, estimation method, and readable storage medium

By using an extreme value observation model and three-phase current symbols to determine the rotor position, the problem of large detection errors in sensorless motor control at low speeds is solved. This enables accurate position detection and rapid start-up at low speeds, expanding the application range and reducing costs.

CN122456940APending Publication Date: 2026-07-24UNITED AUTOMOTIVE ELECTRONICS SYST
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
UNITED AUTOMOTIVE ELECTRONICS SYST
Filing Date
2025-01-24
Publication Date
2026-07-24

AI Technical Summary

Technical Problem

Existing sensorless motor control methods cannot accurately detect rotor position at low speeds, rely on motor parameters leading to large errors, high computational load, long start-up time, and limited application scenarios.

Method used

The rotor position is determined by combining the extreme value observation model with the positive and negative signs of the three-phase current. The calculation parameters are obtained by the sensor, the extreme value observation model is constructed to determine whether the rotor has passed the preset position, and the specific position is determined by the three-phase current sign.

Benefits of technology

It enables accurate rotor position detection at low speeds, reduces dependence on motor parameters, reduces computational load, improves start-up success rate, expands application scenarios, and reduces costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122456940A_ABST
    Figure CN122456940A_ABST
Patent Text Reader

Abstract

The application provides a rotor position detection method, an estimation method and a readable storage medium. The rotor position detection method comprises: judging which one of preset positions the rotor is located in based on an extreme value observation model combined with the positive and negative signs of three-phase currents. The working conditions of the rotor passing through a specific position and other positions are distinguished, and the possibility of a larger error or the possibility of being unable to observe caused by each measurement signal participating in calculation when the value is low is excluded. The time when the rotor passes through the specific position can be obtained based on the above rotor position detection method, and the estimated position of the rotor at any time can be obtained based on the estimation. The above method is simple and efficient, has low dependence on the running conditions of the motor, the motor parameters of the motor and the model of the motor, has strong compatibility, and solves the problems in the prior art.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of motor control technology, and in particular to a rotor position detection method, an estimation method, and a readable storage medium. Background Technology

[0002] Field Oriented Control (FOC) drive is a field-oriented control method that can achieve precise control of current (torque), speed, and position (stroke). At the same time, FOC drive also has many advantages such as fast dynamic response, wide speed range, small torque fluctuation, low noise, high efficiency, and flexible control algorithm. It is widely used, but not limited to thermal management systems, steering systems, braking systems, drive motors, gearbox systems, oil pump motors, water pumps, cooling fans, electric seats, and other application scenarios.

[0003] In FOC (Front-of-Choice) control, current transformation and speed / position calculations are required based on rotor angle information. There are generally two methods for acquiring motor rotor angle information: one uses angle sensors, such as magnetic encoders or other position sensors, and the other is sensorless methods. Sensorless motor control offers significant cost advantages. Sensorless motor control typically uses flux linkage observers, sliding mode observers, or back EMF zero-crossing points to detect the motor rotor position. However, these sensorless detection algorithms have certain requirements regarding the motor's operating speed range. When the motor speed is very low, the inability to obtain a correct back EMF causes the position detection algorithm to fail, preventing the motor from operating in the low-speed range and failing to meet project application requirements. Furthermore, methods based on flux linkage observers and sliding mode observers are dependent on motor parameters, which limits their practical application.

[0004] Based on the above analysis, it can be seen that in sensorless motor control, the traditional rotor position detection mechanism (such as back EMF zero-crossing detection, flux linkage observer, and sliding diaphragm observer detection) has the following shortcomings:

[0005] 1. Low-speed function failure: When the motor is running at low speed, the back electromotive force of the motor is small. The back electromotive force cannot be accurately extracted by the collected phase voltage and current, which leads to the inability to accurately estimate the rotor angle position, resulting in the failure of the motor control function and the inability to meet the low-speed application scenario.

[0006] 2. Dependence on Motor Parameters: The calculation of the motor's back electromotive force depends on the resistance and inductance of the motor windings. The resistance of the motor windings varies under different ambient temperatures. The inductance of the motor also differs at different control frequencies. These differences amplify the error in the rotor angle position calculation, leading to a risk of failure for sensorless detection algorithms based on the motor model (such as flux linkage observers and sliding film observers).

[0007] 3. Long motor start-up time: Traditional sensorless position detection algorithms rely on the motor's operating speed. Therefore, when the motor is in speed-operated mode, it needs to go through a sensorless open-loop start-up stage, using voltage or current methods to force the motor rotor speed to a certain speed. This process greatly prolongs the motor start-up time, and motor stall is prone to occur during sensorless open-loop start-up, increasing the risk of start-up failure.

[0008] 4. High computational load: The rotor's magnetic flux is obtained by integrating the back electromotive force. To avoid computational drift introduced by long-term integration, closed-loop mechanisms such as phase-locked loops (PLLs) are needed to prevent rotor angular position deviations. Implementing such mechanisms within the carrier cycle of motor control increases the computational load significantly, a problem particularly pronounced on lower-performance chips (such as SoCs).

[0009] 5. Limited application scenarios: Traditional contactless position detection algorithms rely on the motor's operating speed, which prevents the motor from operating at low speeds. This makes it impossible for the control system to accurately control the motor's stroke. In other words, this contactless control system cannot be applied to closed-loop control of motor position (stroke), which greatly limits the application scenarios of the motor.

[0010] In summary, there is a lack of a simple, efficient, and compatible sensorless rotor position detection method in the existing technology. Summary of the Invention

[0011] The purpose of this invention is to provide a rotor position detection method, an estimation method, and a readable storage medium to solve the problem of the lack of a simple, efficient, and highly compatible sensorless rotor position detection method in the prior art.

[0012] To address the aforementioned technical problems, according to a first aspect of the present invention, a rotor position detection method is provided for determining the time it takes for a rotor to pass through a preset position, the rotor position detection method comprising:

[0013] The calculation parameters are acquired in real time by sensors; wherein the sensors do not include sensors that can directly provide feedback on the rotor position; an extreme value observation model is calculated based on the calculation parameters to determine whether the rotor has just passed through one of the preset positions. Furthermore, if the determination result is yes, the current position is determined as one of the preset positions based on the positive or negative sign of the three-phase current.

[0014] Optionally, the extreme value observation model is obtained by eliminating the rotor speed information from the rotor position information and rotor speed information coupled in the flux linkage observation model, leaving only the rotor position information; when the rotor happens to pass through one of the preset positions, the theoretical value of the extreme value observation model is +∞ or -∞, and the actual value of the extreme value observation model is the extreme value.

[0015] Optionally, the extreme value observation model includes one of the following calculation formulas:

[0016]

[0017] Among them, u k i represents the voltage value on the k-phase winding in a three-phase stationary coordinate system. k This represents the current value on phase k winding in the three-phase stationary coordinate system. The value of k is A, B, or C. Phase A is the phase coinciding with an electrical angle of 0°, phase B is the phase coinciding with an electrical angle of 120°, and phase C is the phase coinciding with an electrical angle of 240°. The direction of the electrical angle is counterclockwise. k and i k All of these are the calculated parameters, where R represents the resistance value of any phase winding and L represents the inductance value of any phase winding.

[0018] The preset position includes at least one of the following positions: 30°, 90°, 150°, 210°, 270° and 330°.

[0019] Optionally, the extreme value observation model includes G(ABBC), G(ABCA), and G(ACAB); the preset positions include 30°, 90°, 150°, 210°, 270°, and 330°.

[0020] Optionally, if the judgment result is yes, the step of determining which of the preset positions the current position is based on the positive or negative sign of the three-phase current includes at least one of the following steps:

[0021] If the value of G(ABCA) reaches an extreme value, further determine: if i A >0, i B >0 and i C If the value is less than 0, the corresponding preset position is 30°; otherwise, it is 210°.

[0022] If the value of G(ABBC) reaches an extreme value, further judgment is made: if i A <0, i B >0 and i C If the value is less than 0, the corresponding preset position is 90°; otherwise, it is 270°.

[0023] If the value of G(ACAB) reaches an extreme value, further determine: if i A <0, i B >0 and i C If the value is >0, the corresponding preset position is 150°; otherwise, it is 330°.

[0024] Optionally, the rotor windings are either star-connected or delta-connected.

[0025] Optionally, the rotor position detection method is used at least for the motor at extremely low speeds.

[0026] To address the aforementioned technical problems, according to a second aspect of the present invention, a rotor position estimation method is provided. The rotor position estimation method includes: acquiring rotor position-corresponding time data pairs based on the aforementioned rotor position detection method, and sorting them according to chronological order; estimating the average rotational speed of the rotor based on the rotor position-corresponding time data pairs; and estimating the rotor's position at any given time based on the average rotational speed.

[0027] Optionally, the step of estimating the average rotational speed of the rotor based on the rotor position-corresponding time data pair, and estimating the position of the rotor at any given time based on the average rotational speed, includes: estimating the average rotational speed based on the two closest rotor position-corresponding time data pairs at the current time; and estimating the position of the rotor at the current time by taking the most recent detection of the preset position at the current time as the starting position, and adding the product of the average rotational speed and the time difference; wherein the time difference is the difference between the current time and the time of the most recent detection of the preset position.

[0028] To address the aforementioned technical problems, according to a third aspect of the present invention, a readable storage medium is provided, on which a program is stored, wherein when the program is executed, the rotor position detection method described above, or the rotor position estimation method described above, is performed.

[0029] Compared with existing technologies, the present invention provides a rotor position detection method, estimation method, and readable storage medium. The rotor position detection method includes: acquiring calculation parameters in real time based on sensors; wherein the sensors do not include sensors capable of directly feeding back the rotor position; calculating an extreme value observation model based on the calculation parameters to determine whether the rotor has just passed through one of the preset positions; and, if the determination result is yes, determining which of the preset positions the current position is based on the positive or negative sign of the three-phase current. By using the specific calculation result of the extreme value observation model at a specific position, the operating conditions of the rotor passing through a specific position are distinguished from other positions, eliminating the possibility of large errors or the possibility of being unobservable due to the participation of measurement signals at low values ​​in the calculation. Subsequently, by further determining which of the preset positions the current position is based on the different changes in the positive and negative signs of the three-phase current at different preset positions, accurate positioning results can be obtained. Based on the above rotor position detection method, the time when the rotor passes through a specific position can be obtained, and based on this, the estimated position of the rotor at any time can be obtained. The above method is simple and efficient, with low dependence on motor operating conditions, motor parameters, and motor model, and has strong compatibility, thus solving the problems existing in the prior art. Attached Figure Description

[0030] Those skilled in the art will understand that the accompanying drawings are provided to better understand the invention and do not constitute any limitation on the scope of the invention. Wherein:

[0031] Figure 1 This is a schematic flowchart of a rotor position detection method and a rotor position estimation method according to an embodiment of the present invention;

[0032] Figure 2 It is the graph of the function y = tanx;

[0033] Figure 3 This is a schematic diagram of a preset position according to an embodiment of the present invention;

[0034] Figure 4 This is a waveform diagram of the three-phase current changes;

[0035] Figure 5 This is a schematic diagram of a rotor position estimation method according to an embodiment of the present invention.

[0036] in:

[0037] 1-Actual angular velocity; 2-Estimated angular velocity; 3-Actual electrical angle; 4-Estimated electrical angle. Detailed Implementation

[0038] To make the objectives, advantages, and features of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be noted that the drawings are all in a very simplified form and are not drawn to scale, and are only used to facilitate and clarify the explanation of the embodiments of this invention. Furthermore, the structures shown in the drawings are often part of the actual structures. In particular, different figures may emphasize different aspects and may sometimes use different scales.

[0039] As used in this invention, the singular forms “a,” “an,” and “the” include plural objects; the term “or” is generally used to mean “and / or”; the term “a number” is generally used to mean “at least one”; and the term “at least two” is generally used to mean “two or more”. Furthermore, the terms “first,” “second,” and “third” are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Thus, a feature defined as “first,” “second,” or “third” may explicitly or implicitly include one or at least two of that feature. “One end” and “the other end,” as well as “proximal end” and “distal end,” generally refer to two corresponding parts, including not only endpoints. The terms “installed,” “connected,” and “joined” should be interpreted broadly, for example, as a fixed connection, a detachable connection, or an integral part; a mechanical connection or an electrical connection; a direct connection or an indirect connection through an intermediate medium; or a connection within two elements or an interaction between two elements. Furthermore, as used in this invention, the phrase "one element is disposed on another element" generally only indicates that there is a connection, coupling, cooperation, or transmission relationship between the two elements, and the connection, coupling, cooperation, or transmission between the two elements can be direct or indirect through an intermediate element. It should not be construed as indicating or implying a spatial positional relationship between the two elements, i.e., one element can be located arbitrarily inside, outside, above, below, or to one side of the other element, unless otherwise explicitly stated. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.

[0040] The core idea of ​​this invention is to provide a rotor position detection method, an estimation method, and a readable storage medium to solve the problem of the lack of a simple, efficient, and highly compatible sensorless rotor position detection method in the prior art.

[0041] The following description refers to the accompanying drawings.

[0042] This embodiment provides a rotor position detection method for determining the time it takes for a rotor to pass through a preset position. The rotor position detection method includes:

[0043] S10, real-time acquisition of calculation parameters based on sensors; wherein, the sensors do not include sensors that can directly feedback the rotor position. "Sensor" should be interpreted broadly; for example, a voltage divider resistor plus an analog-to-digital converter should also be considered a sensor. Similarly, some controllers can directly read certain signals, and such controllers should also be considered "sensors".

[0044] S20, calculate the extreme value observation model based on the calculation parameters, and determine whether the rotor has just passed through one of the preset positions. The judgment result here can only distinguish whether the current position is a normal position or a preset position, but cannot determine which of the preset positions it is in.

[0045] And, in step S30, if the judgment result is yes, determine which of the preset positions the current position is based on the positive or negative sign of the three-phase current. In this step, the specific position can be determined.

[0046] To demonstrate the beneficial effects of this embodiment, the difficulties faced by the present invention are analyzed as follows:

[0047] Formula 1 is the voltage balance equation in the three-phase stationary coordinate system of the motor;

[0048] Formula 1:

[0049]

[0050] Among them, u A u B u C The voltage values ​​on the three-phase windings A, B, and C in a three-phase stationary coordinate system can be obtained through the controller. i represents the differential value of the three-phase currents A, B, and C; A i B i C R represents the current values ​​on the three-phase windings A, B, and C in a three-phase stationary coordinate system, which can be acquired by the controller; R is the resistance value of the three-phase windings, which can generally be approximated as R = R A =R B =R C This can be obtained from the parameters of the motor itself; Let be the flux linkage values ​​on the three-phase windings A, B, and C in a three-phase stationary coordinate system.

[0051] further, The three-phase flux linkage consists of two parts (ignoring mutual inductance, leakage inductance, iron losses, etc. between windings). One part is the flux linkage generated by the self-inductance of the winding itself. The calculation formula is shown in Formula 2:

[0052] Formula 2:

[0053]

[0054] Where: L A L B L C Let L be the inductance value of the three-phase winding. Generally, it can be approximated as L = L A =L B =L C i A i B i C These are the current values ​​on the three-phase windings A, B, and C in a three-phase stationary coordinate system. The first part is the magnetic flux generated by the self-inductance of the three-phase windings A, B, and C in a three-phase stationary coordinate system. The second part is the magnetic flux of the rotor permanent magnet. Components in phases A, B, and C This flux linkage component contains the position information of the motor rotor, and its calculation formula is shown in Formula 3:

[0055] Formula 3:

[0056]

[0057] in: This refers to the flux linkage value of the rotor permanent magnet; For rotor permanent magnet flux The components on phases A, B, and C; θ is the electrical angle value of the rotor's position, i.e., the angle value that the observer needs to observe.

[0058] In this embodiment, the preset position is also represented by θ.

[0059] Furthermore, the total magnetic flux on the three-phase AC side can be calculated using formulas 2 and 3. The calculation result can be expressed by formula 4;

[0060] Formula 4:

[0061]

[0062] In formula 4 Substituting the expression into Formula 1 yields a three-phase voltage balance equation that includes rotor position information, as shown in Formula 5.

[0063] Formula 5:

[0064]

[0065] It can be seen that the three-phase voltage balance equation in Formula 5 contains rotor position θ and rotor speed ω. This formula is the prototype of the flux linkage observer, but θ and ω are coupled together. When ω→0, that is, when the motor is operating in the low-speed range, the last term in Formula 5 tends to 0, making it impossible to accurately observe the value of θ.

[0066] In this embodiment, the extreme value observation model is obtained by eliminating the rotor speed information from the rotor position information and rotor speed information coupled in the flux linkage observation model, leaving only the rotor position information; when the rotor happens to pass through one of the preset positions, the theoretical value of the extreme value observation model is +∞ or -∞, and the actual value of the extreme value observation model is the extreme value.

[0067] It should be understood that in theoretical calculations, regardless of the formula used, the precise value of the research object can be obtained. However, in actual operation, different calculation formulas may yield results that match or deviate from the actual situation due to sampling errors. In this embodiment, a specific extreme value observation model is constructed, focusing on the rotor positions corresponding to the theoretical calculated values ​​of ±∞. These positions are set as preset positions, and the ±∞ cases in the theoretical calculation are corresponded to the extreme values ​​observed in the calculation results. This minimizes the impact of sampling errors on the final result.

[0068] In a preferred embodiment, the extreme value observation model is derived according to the following logic.

[0069] Subtracting the three equations in Formula 5, we obtain the following calculation model, denoted as u. AB For u A and u B The voltage difference between them, i.e., u AB =u A -u B By applying the same treatment to the other terms, we can derive the following formula:

[0070] Formula 6:

[0071]

[0072] Furthermore, by processing Formula 6 and moving the term containing the motor rotor position information θ to the left, we get Formula 7 as follows:

[0073]

[0074] As can be seen from Formula 7, when ω≠0, dividing each equation in Formula 7 eliminates ω, resulting in equations containing only θ, as shown in Formula 8. Let G(ABBC) be the result of dividing equation ① by equation ②, then we have:

[0075] Formula 8:

[0076]

[0077] from Figure 2 The graph of the tangent function in the image shows that when and hour, Since there are extreme points, we can observe them by calculating the extreme values ​​of G(ABBC). and In this case, the rotor's electrical angle position is 90° or 270°. It can be seen that the observer does not rely on rotational speed information and can achieve position observation at lower rotational speeds.

[0078] Similarly, let G(ABCA) be the result of dividing equation ① by equation ③, then the result of calculating G(ABCA) is shown in formula 9:

[0079] Formula 9:

[0080]

[0081] from Figure 2 The graph of the tangent function in the image shows that when When G(ABCA) has an extreme value, at this time or That is, the rotor position is 30° or 210°.

[0082] Similarly, let G(ACAB) be the result of dividing equation ④ by equation ①, then the calculation result of G(ACAB) is as shown in formula 10:

[0083] Formula 10:

[0084]

[0085] from Figure 2 The graph of the tangent function in the image shows that when When G(ACAB) has an extreme value, at this time or That is, the rotor position is 150° or 330°;

[0086] Therefore, by constructing the above calculation models for G(ABBC), G(ABCA), and G(ACAB), and by calculating the extreme points of G(ABBC), G(ABCA), and G(ACAB) in real time using software, six special positions of the motor rotor can be identified, namely 30°, 90°, 150°, 210°, 270°, or 330° positions, such as... Figure 3 As shown.

[0087] Figure 3In the diagram, the green line represents the preset positions used by the G(ABBC) calculation formula for positioning, namely 90° and 270°; the blue line represents the preset positions used by the G(ABCA) calculation formula, namely 30° and 210°; and the orange line represents the preset positions used by the G(ACAB) calculation formula, namely 150° and 330°. In the diagram, 001 to 110 correspond to the states of the six MOSFETs in the hardware inverter circuit for motor FOC control: three upper MOSFETs and three lower MOSFETs. 0 represents the lower MOSFET being on, and 1 represents the upper MOSFET being on. The direction of the generated magnetic field corresponds to the rotor's angular position.

[0088] Understandably, in some control conditions, it may only be necessary to know the approximate position of the rotor, or the number of revolutions of the motor. In such cases, only a portion of the above formulas may be selected for calculation.

[0089] In other words, the extreme value observation model includes one of the following calculation formulas:

[0090]

[0091] Among them, u k i represents the voltage value on the k-phase winding in a three-phase stationary coordinate system. k This represents the current value on phase k winding in the three-phase stationary coordinate system. The value of k is A, B, or C. Phase A is the phase coinciding with an electrical angle of 0°, phase B is the phase coinciding with an electrical angle of 120°, and phase C is the phase coinciding with an electrical angle of 240°. The direction of the electrical angle is counterclockwise. k and i k All of these are the calculated parameters, where R represents the resistance value of any phase winding and L represents the inductance value of any phase winding.

[0092] The preset position includes at least one of the following positions: 30°, 90°, 150°, 210°, 270° and 330°.

[0093] Further analysis reveals that, according to the above formula, the rotor positions in the identified 3 groups of 6 positions always appear in pairs, such as 90° / 270°, 30° / 210°, and 150° / 330°, differing by 180° phase difference. Simply judging by extreme values ​​is insufficient to determine which position the rotor is in. Therefore, this embodiment proposes a method to distinguish the rotor position polarity based on the positive and negative signs of the three-phase current at specific electrical angles. Based on the derivation, the three-phase current calculation formula is shown in Formula 11.

[0094] Formula 11:

[0095]

[0096] Where I is the peak value of the three-phase current; For FOC-driven SVPWM modulation angle; i A i B i C These are the current values ​​on the three-phase windings A, B, and C in a three-phase stationary coordinate system.

[0097] Its current change waveform is as follows Figure 4 As shown. Figure 4 In this context, phase U is phase A, phase V is phase B, and phase W is phase C.

[0098] Therefore, if the judgment result is yes, the step of determining which of the preset positions the current position is based on the positive or negative sign of the three-phase current includes at least one of the following steps:

[0099] If the value of G(ABCA) reaches an extreme value, further determine: if i A >0, i B >0 and i C If the value is less than 0, the corresponding preset position is 30°; otherwise, it is 210°.

[0100] If the value of G(ABBC) reaches an extreme value, further judgment is made: if i A <0, i B >0 and i C If the value is less than 0, the corresponding preset position is 90°; otherwise, it is 270°.

[0101] If the value of G(ACAB) reaches an extreme value, further determine: if i A <0, i B >0 and i C If the value is >0, the corresponding preset position is 150°; otherwise, it is 330°.

[0102] The above method can accurately identify whether the motor rotor is located in a specific position. For other positions, this embodiment also provides a rotor position estimation method; please refer to [reference needed]. Figure 1 The rotor position estimation method includes: S40, obtaining rotor position-corresponding time data pairs based on the rotor position detection method described above, and sorting them according to the chronological order of time; S50, estimating the average rotational speed of the rotor based on the rotor position-corresponding time data pairs, and estimating the position of the rotor at any given time based on the average rotational speed.

[0103] The rotor position-corresponding time data pair has the following data structure: (θ, t), for example: (30°, 100ms), (90°, 200ms), (150°, 310ms), etc. Based on the above data pair, those skilled in the art can use various methods to estimate the rotor position.

[0104] Preferably, the step of estimating the average rotational speed of the rotor based on the rotor position-corresponding time data pair, and estimating the position of the rotor at any time based on the average rotational speed includes: estimating the average rotational speed based on the two closest rotor position-corresponding time data pairs at the current time; and estimating the position of the rotor at the current time by taking the most recent detection of the preset position at the current time as the starting position, and adding the product of the average rotational speed and the time difference; wherein the time difference is the difference between the current time and the time of the most recent detection of the preset position.

[0105] The calculation formula is as follows:

[0106]

[0107] Wherein, the subscript n represents the data corresponding to the closest detection of the preset position, the subscript n-1 represents the data corresponding to the second closest detection of the preset position, and θ n+1 This indicates the preset position to be detected next. Although the event has not yet occurred and the detection time is unpredictable, the preset position to be detected is predictable. ω n-1 This represents both the average rotor speed in the previous time period and the average speed used to estimate the rotor position in the current time period. θ represents the current rotor position, and Δt represents the time elapsed since the closest detection of the preset position, i.e., the time difference.

[0108] The calculation process can also be referenced. Figure 5 To understand. Figure 5 In the diagram, the four curves represent: 1 - actual angular velocity; 2 - estimated angular velocity; 3 - actual electrical angle; and 4 - estimated electrical angle. It can be understood that under different operating conditions, the estimated angular velocity is not necessarily lower than the actual angular velocity, and the estimated electrical angle is not necessarily lower than the actual electrical angle.

[0109] pass Figure 5 As can be seen, the estimation results are very close to the actual situation, which can provide a basis for other control algorithms.

[0110] This embodiment also provides a readable storage medium storing a program. When the program is executed, it performs the rotor position detection method or the rotor position estimation method described above. Since the readable storage medium is the hardware basis for the execution of the relevant program, it can also solve the corresponding technical problems.

[0111] The beneficial effects of this embodiment are summarized as follows:

[0112] 1. Achieve sensorless closed-loop control at low speed: The invention proposes a method to detect the motor rotor position based on an extreme value observer. This method has low requirements for the motor's operating speed range and can effectively detect the rotor position even at extremely low speeds approaching zero. It can also achieve rotor position detection across the entire position range, greatly increasing the sensorless operating speed range of the motor and making it suitable for more applications.

[0113] 2. Improve the success rate of sensorless start: By using the extreme value observer-based detection of motor rotor position proposed in this invention, the rotor position of the motor can be detected at low motor speed. During sensorless start, the motor can enter closed-loop control in advance, thereby improving the success rate of sensorless start and reducing motor start-up time.

[0114] 3. The algorithm does not depend on motor parameters; the rotor position detection algorithm proposed in this invention does not depend on motor parameters and can be quickly applied to different motor products.

[0115] 4. Significantly reduced costs: Compared to using angle sensors to achieve full-speed motor operation, implementing this sensorless algorithm can achieve full-speed motor position detection, thereby reducing the application cost of the product.

[0116] 5. Pure software algorithm with low computing power requirements: This control algorithm does not require any new hardware components. The implementation medium only requires a common FOC drive circuit. The establishment and solution of the observer does not involve complex iterative calculations. It can be achieved with simple addition, subtraction, multiplication and division operations, which greatly reduces the computing power requirements of the observer.

[0117] 6. Applicable to a variety of applications: The adaptive vector control algorithm and implementation medium proposed in this invention can be applied not only to motor speed and current closed-loop applications, but also to position (stroke) closed-loop applications, and can be extended based on these control modes.

[0118] The present invention also has the following extensions:

[0119] 1. This technical solution uses a brushless DC motor as the controlled object and employs a redundant electronic controller design. This invention is still applicable to other control system applications for any controlled object. This invention adopts a traditional discrete device (MCU+SBC+pre-driver chip) controller hardware architecture. For the use of integrated hardware solutions such as system-on-a-chip (SoC = MCU+SBC+pre-driver chip), it should still be regarded as a workaround for the technical solution proposed in this invention.

[0120] 2. The rotor position detection algorithm in this invention is based on the motor phase voltage and phase current. The technical solution is not dependent on the method of obtaining the motor phase voltage and phase current. This invention is still applicable to any form of hardware sampling scheme (such as single resistor, dual resistor, triple resistor, current sensor, etc.) or other schemes that obtain phase voltage and phase current.

[0121] 3. The method for establishing the motor rotor position, voltage, and flux linkage equations based on the extreme value observer proposed in this invention is independent of the connection method of the motor windings and can be applied to star-connected motors and delta-connected motors, that is, the rotor windings are star-connected or delta-connected.

[0122] 4. The method of determining the polarity of a motor rotor at a special position based on the current value proposed in this invention should be considered as a workaround for using other physical quantities, such as voltage, to make the determination.

[0123] 5. The method for detecting motor rotor position based on an extreme value observer proposed in this invention is applicable not only to observation at extremely low speeds but also to observation at high speeds. For applications across different speed ranges, the proposed technical solution should still be used. That is, the rotor position detection method is at least applicable to the extremely low speed conditions of the motor. Extremely low speed conditions can be understood as speeds of 100 rpm and below.

[0124] 6. The method for detecting the rotor position of a motor based on an extreme value observer proposed in this invention is described in terms of FOC driving mode. Other driving modes, such as square wave driving, can also be used and should still be regarded as alternative designs of the technical solution of this invention.

[0125] In summary, this embodiment provides a rotor position detection method, an estimation method, and a readable storage medium. The rotor position detection method includes: acquiring calculation parameters in real time based on sensors; wherein the sensors do not include sensors that can directly feedback the rotor position; calculating an extreme value observation model based on the calculation parameters to determine whether the rotor has just passed through one of the preset positions; and, if the determination result is yes, determining which of the preset positions the current position is based on the positive and negative signs of the three-phase currents. By using the specific calculation results of the extreme value observation model at a specific position, the operating conditions of the rotor passing through a specific position and other positions are distinguished, eliminating the possibility that the calculation may be prone to large errors or the possibility that it cannot be observed due to the participation of each measurement signal at low values. Subsequently, the current position is further determined based on the different changes in the positive and negative signs of the three-phase currents at different preset positions, so as to obtain an accurate positioning result. Based on the above rotor position detection method, the time when the rotor passes through a specific position can be obtained, and based on this, the estimated position of the rotor at any time can be obtained. The above method is simple and efficient, with low dependence on motor operating conditions, motor parameters, and motor model, and has strong compatibility, thus solving the problems existing in the prior art.

[0126] The above description is only a description of preferred embodiments of the present invention and is not intended to limit the scope of the present invention in any way. Any changes or modifications made by those skilled in the art based on the above disclosure shall fall within the protection scope of the present invention.

Claims

1. A rotor position detection method, characterized in that, The rotor position detection method includes methods for determining the time it takes for the rotor to pass through a preset position: The calculation parameters are acquired in real time based on sensors; wherein, the sensors do not include sensors that can directly provide feedback on the rotor position; Based on the calculation parameters, an extreme value observation model is calculated to determine whether the rotor passes through one of the preset positions. as well as, If the judgment result is yes, the current position is determined to be one of the preset positions based on the positive and negative signs of the three-phase current.

2. The rotor position detection method according to claim 1, characterized in that, The extreme value observation model is obtained by eliminating the rotor speed information from the rotor position information and rotor speed information coupled in the flux linkage observation model, leaving only the rotor position information; when the rotor happens to pass through one of the preset positions, the theoretical value of the extreme value observation model is +∞ or -∞, and the actual value of the extreme value observation model is the extreme value.

3. The rotor position detection method according to claim 1, characterized in that, The extreme value observation model includes one of the following calculation formulas: Among them, u k i represents the voltage value on the k-phase winding in a three-phase stationary coordinate system. k This represents the current value on phase k winding in the three-phase stationary coordinate system. The value of k is A, B, or C. Phase A is the phase coinciding with an electrical angle of 0°, phase B is the phase coinciding with an electrical angle of 120°, and phase C is the phase coinciding with an electrical angle of 240°. The direction of the electrical angle is counterclockwise. k and i k All of these are the calculated parameters, where R represents the resistance value of any phase winding and L represents the inductance value of any phase winding. The preset position includes at least one of the following positions: 30°, 90°, 150°, 210°, 270° and 330°.

4. The rotor position detection method according to claim 3, characterized in that, The extreme value observation model includes G(ABBC), G(ABCA), and G(ACAB); the preset positions include 30°, 90°, 150°, 210°, 270°, and 330°.

5. The rotor position detection method according to claim 3, characterized in that, If the judgment result is yes, the step of determining which of the preset positions the current position is based on the positive or negative sign of the three-phase current includes at least one of the following steps: If the value of G(ABCA) reaches an extreme value, further determine: if i A >0, i B >0 and i C If the value is less than 0, the corresponding preset position is 30°; otherwise, it is 210°. If the value of G(ABBC) reaches an extreme value, further judgment is made: if i A <0, i B >0 and i C If the value is less than 0, the corresponding preset position is 90°; otherwise, it is 270°. If the value of G(ACAB) reaches an extreme value, further determine: if i A <0, i B >0 and i C If the value is >0, the corresponding preset position is 150°; otherwise, it is 330°.

6. The rotor position detection method according to claim 1, characterized in that, The rotor windings are either star-connected or delta-connected.

7. The rotor position detection method according to claim 1, characterized in that, The rotor position detection method is used at least for motors operating at extremely low speeds.

8. A rotor position estimation method, characterized in that, The rotor position estimation method includes: The rotor position detection method according to any one of claims 1 to 7 is used to obtain rotor position-corresponding time data pairs and sort them in chronological order. The average rotational speed of the rotor is estimated based on the rotor position-corresponding time data, and the position of the rotor at any given time is estimated based on the average rotational speed.

9. The rotor position estimation method according to claim 8, characterized in that, The steps of estimating the average rotational speed of the rotor based on the rotor position-corresponding time data, and estimating the position of the rotor at any given time based on the average rotational speed, include: The average rotational speed is estimated based on the two closest rotor position-time pairs at the current moment; and... The position of the rotor at the current moment is estimated by taking the preset position as the starting position and adding the product of the average rotational speed and the time difference; wherein the time difference is the difference between the current time and the time of the nearest detection of the preset position.

10. A readable storage medium, characterized in that, The readable storage medium stores a program that, when executed, performs the rotor position detection method as described in any one of claims 1 to 7, or performs the rotor position estimation method as described in any one of claims 8 to 9.