Method and device for detecting initial position of motor rotor

By combining multi-angle voltage vector injection with variable step-size extremum search and polarity identification to minimize q-axis current amplitude, the problems of long detection time and insufficient accuracy of motor rotor initial position detection are solved, and fast and accurate position detection and open circuit detection are achieved.

CN123054940APending Publication Date: 2026-11-06NANJING HENGLI INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611482886.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-09-22
Publication Date
2026-11-06

AI Technical Summary

Technical Problem

Existing methods for detecting the initial position of motor rotors suffer from problems such as long detection time, insufficient accuracy, and easy generation of noise, especially in the high-frequency pulse injection method and the high-frequency rotation injection method.

Method used

Multi-angle voltage vector injection is used for coarse positioning of the motor rotor. Combined with variable step size extremum search and polarity identification to minimize the q-axis current amplitude, the final angle of the motor rotor is confirmed by performing variable step size extremum search and polarity identification on the basis of coarse positioning.

Benefits of technology

It enables rapid and accurate detection of the initial position of the motor rotor, avoids noise and vibration during the detection process, improves the accuracy of position detection, and can perform open circuit detection during the process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123054940A_ABST
    Figure CN123054940A_ABST
Patent Text Reader

Abstract

This invention relates to the field of motor control technology, and provides a method and apparatus for detecting the initial position of a motor rotor. The method includes the following steps: S1, performing coarse positioning of the motor rotor through multi-angle voltage vector injection to obtain the coarse angle of the motor rotor; S2, based on the coarse angle, performing extreme value search with variable step size using the minimization of the q-axis current amplitude as the convergence criterion to obtain the fine angle of the motor rotor; S3, identifying the polarity of the fine angle to confirm the final angle of the motor rotor, thereby obtaining the initial position of the motor rotor. This invention can quickly and accurately detect the initial position of the motor rotor and effectively avoid noise during the detection process.
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 specifically to a method and apparatus for detecting the initial position of a motor rotor. Background Technology

[0002] Determining the initial position of the motor rotor is indispensable in certain scenarios. For example, when an incremental encoder starts up, it is necessary to avoid zero-finding jitter or instability during startup. Initial position information is required for low-speed startup and polarity identification operation of motors without position sensors. Static zero-position correction is required for motors in the field or on a test bench.

[0003] To detect the initial position of a motor rotor, commonly used methods include high-frequency pulse injection, high-frequency rotational injection, and pulse initial position recognition. High-frequency pulse injection and high-frequency rotational injection methods often require filters, have slow angle convergence, and are time-consuming, and introduce significant noise during signal injection. The pulse initial position recognition method estimates the motor rotor position by applying a DC voltage pulse in a specific direction, but the angle has a large error during injection, making it difficult to meet the accuracy requirements for motor rotor angle positioning. Summary of the Invention

[0004] To solve the above-mentioned technical problems, the present invention provides a method and apparatus for detecting the initial position of a motor rotor, which can quickly and accurately detect the initial position of the motor rotor and effectively avoid noise during the detection process.

[0005] The technical solution adopted in this invention is as follows:

[0006] A method for detecting the initial position of a motor rotor includes the following steps: S1, performing coarse positioning of the motor rotor by injecting voltage vectors at multiple angles to obtain the coarse angle of the motor rotor; S2, based on the coarse angle, performing extreme value search with variable step size using the minimization of the q-axis current amplitude as the convergence criterion to obtain the fine angle of the motor rotor; S3, identifying the polarity of the fine angle to confirm the final angle of the motor rotor, thereby obtaining the initial position of the motor rotor.

[0007] According to the method for detecting the initial position of a motor rotor in an embodiment of the present invention, the motor rotor is first coarsely positioned by multi-angle voltage vector injection. Then, based on the coarse positioning, a variable-step-size extreme value search is performed using the minimization of the q-axis current amplitude as the convergence criterion. Finally, the polarity of the fine angle obtained from the search is identified to confirm the final angle of the motor rotor. Thus, compared with high-frequency injection, only a small number of voltage vector injections are required, the time is shorter, and there is no obvious vibration or noise. By performing variable-step-size extreme value search and polarity identification based on coarse positioning, the accuracy of position detection can be guaranteed, thereby enabling rapid and accurate detection of the initial position of the motor rotor and effectively avoiding noise during the detection process.

[0008] In addition, the motor rotor initial position detection method proposed in the above embodiments of the present invention may also have the following additional technical features:

[0009] Step S1 specifically includes: in the field-oriented control, injecting a voltage vector at a first angle and collecting the three-phase current at the first angle; injecting a voltage vector at a second angle and collecting the three-phase current at the second angle, wherein the second angle differs from the first angle by 180°; determining the 90° angle range of the motor rotor based on the magnitude relationship of the in-phase current at the first angle and the magnitude relationship of the adjacent phase current at the first angle; injecting a voltage vector at the i-th angle and collecting the three-phase current at the i-th angle, and determining the 90° / 2 angle range of the motor rotor based on the magnitude relationship of the adjacent phase current at the i-th angle. i-2 Angle range, wherein the i-th angle is 90° / 2 of the position of the motor rotor. i-3 The center angle of the angular range, i takes integers from 3 to N, where N is the total number of voltage injections during coarse positioning; with the motor rotor at 90° / 2 N-2 Any angle value within the angular range is used as the coarse angle. This allows for convenient, rapid, and accurate coarse positioning of the motor rotor's electrical angle.

[0010] Step S2 specifically includes: in the j-th round, injecting the base angle and X° / 2 j-1 The sum of the voltage vectors is used to obtain the q-axis current amplitude, and the base angle and X° / 2 are injected. j-1The voltage vector difference is used to obtain the q-axis current amplitude. These two q-axis current amplitudes are compared, and the injection angle with the smaller amplitude is used as the base angle for the (j+1)th round. Here, X° is the initial angle step size, j is an integer from 1 to M, and M is the total number of rounds in the actual extreme value search. The base angle for the first round is equal to the coarse angle; the base angle for the (M+1)th round is used as the fine angle. Comparing the bilaterally offset q-axis current amplitudes is a differential comparison method. Compared to the pulse method of related technologies, common-mode interference cancels out, making it less susceptible to voltage or temperature fluctuations and exhibiting better anti-interference and stability.

[0011] Step S3 specifically includes: applying a positive voltage in the direction of the fine angle to obtain the peak current vector amplitude; applying a reverse voltage in the direction of the fine angle plus 180° to obtain the peak current vector amplitude; determining whether the rotor polarity is correct based on the relationship between the magnitudes of the two peak current vector amplitudes; if the rotor polarity is correct, determining the fine angle as the final angle of the motor rotor; if the rotor polarity is incorrect, determining the fine angle plus 180° as the final angle of the motor rotor. This allows for convenient and effective identification of rotor polarity, avoiding reverse detection positions.

[0012] Furthermore, the method for detecting the initial position of the motor rotor also includes: acquiring the three-phase current at each injected voltage vector; after injecting voltage vectors at different angles multiple times, acquiring the maximum value of each phase current at each injected voltage vector angle; and determining whether an open circuit fault has occurred and the phase in which the open circuit fault is located based on the maximum value of each phase current. Thus, open circuit detection can be performed during the initial position detection of the motor rotor, independent of the angle of a single injected voltage, but by taking the maximum value of each phase in the entire injection sequence, covering the full angle range from 0° to 360°. This eliminates the misjudgment problem caused by the rotor position being at a zero crossing point, and requires no additional detection time, thereby conveniently and accurately detecting an open circuit fault in a specific phase.

[0013] Furthermore, at least one of steps S1 to S3 is executed multiple times to verify the confidence level of the result obtained from the at least one step. This ensures the success rate of the motor rotor initial position detection and further improves the accuracy of the motor rotor initial position detection.

[0014] A motor rotor initial position detection device includes: a coarse positioning module, which performs coarse positioning of the motor rotor by injecting voltage vectors at multiple angles to obtain a coarse angle of the motor rotor; an extreme value search module, which performs extreme value search with variable step size based on the coarse angle, using the minimization of the q-axis current amplitude as a convergence criterion, to obtain a fine angle of the motor rotor; and a polarity identification module, which performs polarity identification on the fine angle to confirm the final angle of the motor rotor, thereby obtaining the initial position of the motor rotor.

[0015] According to the embodiment of the present invention, the motor rotor initial position detection device first performs coarse positioning of the motor rotor by multi-angle voltage vector injection. Then, based on the coarse positioning, it performs a variable-step extreme value search using the minimization of the q-axis current amplitude as the convergence criterion. Finally, it identifies the polarity of the fine angle obtained by the search to confirm the final angle of the motor rotor. Thus, compared with high-frequency injection, only a small number of voltage vector injections are required, the time is shorter, and there is no obvious vibration or noise. By performing variable-step extreme value search and polarity identification based on coarse positioning, the accuracy of position detection can be guaranteed, thereby enabling rapid and accurate detection of the initial position of the motor rotor and effectively avoiding noise during the detection process.

[0016] In addition, the motor rotor initial position detection device proposed in the above embodiments of the present invention may also have the following additional technical features:

[0017] The coarse positioning module is specifically used for: in magnetic field orientation control, injecting a voltage vector at a first angle and collecting the three-phase current at the first angle; injecting a voltage vector at a second angle and collecting the three-phase current at the second angle, wherein the second angle differs from the first angle by 180°; determining the 90° angle range of the motor rotor based on the magnitude relationship of the in-phase current at the first angle and the magnitude relationship of the adjacent phase current at the first angle; injecting a voltage vector at the i-th angle and collecting the three-phase current at the i-th angle, and determining the 90° / 2-angle range of the motor rotor based on the magnitude relationship of the adjacent phase current at the i-th angle. i-2 Angle range, wherein the i-th angle is 90° / 2 of the position of the motor rotor. i-3 The center angle of the angular range, i takes integers from 3 to N, where N is the total number of voltage injections during coarse positioning; with the motor rotor at 90° / 2 N-2 Any angle value within the angular range is used as the coarse angle. This allows for convenient, rapid, and accurate coarse positioning of the motor rotor's electrical angle.

[0018] The extreme value search module is specifically used for: in the j-th round, injecting the base angle and X° / 2j-1 The sum of the voltage vectors is used to obtain the q-axis current amplitude, and the base angle and X° / 2 are injected. j-1 The voltage vector difference is used to obtain the q-axis current amplitude. These two q-axis current amplitudes are compared, and the injection angle with the smaller amplitude is used as the base angle for the (j+1)th round. Here, X° is the initial angle step size, j is an integer from 1 to M, and M is the total number of rounds in the actual extreme value search. The base angle for the first round is equal to the coarse angle; the base angle for the (M+1)th round is used as the fine angle. Comparing the bilaterally offset q-axis current amplitudes is a differential comparison method. Compared to the pulse method of related technologies, common-mode interference cancels out, making it less susceptible to voltage or temperature fluctuations and exhibiting better anti-interference and stability.

[0019] The polarity identification module is specifically used to: apply a positive voltage in the direction of the fine angle to obtain the peak current vector amplitude; apply a reverse voltage in the direction of the fine angle plus 180° to obtain the peak current vector amplitude; determine whether the rotor polarity is correct based on the relationship between the magnitudes of the two peak current vector amplitudes; if the rotor polarity is correct, then the fine angle is determined as the final angle of the motor rotor; if the rotor polarity is incorrect, then the fine angle plus 180° is determined as the final angle of the motor rotor. This allows for convenient and effective identification of rotor polarity, avoiding reverse detection positions.

[0020] The motor rotor initial position detection device further includes a circuit breaker detection module. This module acquires the three-phase current at each injected voltage vector. After injecting voltage vectors at different angles multiple times, it acquires the maximum value of each phase current during these injections. Based on the maximum value of each phase current, it determines whether a circuit breaker fault has occurred and which phase is affected. Therefore, circuit breaker detection can be performed during the initial position detection process of the motor rotor. It does not rely on the angle of a single injected voltage but instead uses the maximum value of each phase throughout the entire injection sequence, covering the entire angle range from 0° to 360°. This eliminates the misjudgment problem caused by the rotor position being at a zero-crossing point and requires no additional detection time, thus conveniently and accurately detecting a specific phase circuit breaker fault.

[0021] The motor rotor initial position detection device further includes a verification module, which performs confidence verification on the results of multiple executions of the functions of at least one of the coarse positioning module, the extreme value search module, and the polarity identification module. This ensures the success rate of motor rotor initial position detection and further improves its accuracy. Attached Figure Description

[0022] Figure 1 This is a flowchart of the motor rotor initial position detection method according to an embodiment of the present invention;

[0023] Figure 2 This is a block diagram of the motor rotor initial position detection device according to an embodiment of the present invention. Detailed Implementation

[0024] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0025] like Figure 1 As shown, the method for detecting the initial position of a motor rotor according to an embodiment of the present invention includes the following steps:

[0026] S1, coarse positioning of the motor rotor is achieved by multi-angle voltage vector injection, and the coarse angle of the motor rotor is obtained.

[0027] Specifically, in Field Oriented Control (FOC), a voltage vector at a first angle is injected, and the three-phase current at the first angle is collected. A voltage vector at a second angle is then injected, and the three-phase current at the second angle is collected. The second angle differs from the first angle by 180°. The 90° angle range of the motor rotor is then determined based on the magnitude relationship between the currents in the same phase at the first and second angles, and the magnitude relationship between the currents of adjacent phases at the first angle. Then, a voltage vector at the i-th angle is injected, and the three-phase current at the i-th angle is collected. The 90° / 2-angle range of the motor rotor is determined based on the magnitude relationship between the currents of adjacent phases at the i-th angle. i-2 The angular range, where the i-th angle is 90° / 2 of the position of the motor rotor. i-3 The center angle of the angular range, i takes integer values ​​from 3 to N, where N is the total number of voltage injections during coarse positioning. Finally, the center angle is determined by the position of the motor rotor at 90° / 2. N-2 Any angle value within the angular range is taken as the coarse angle.

[0028] In one embodiment of the present invention, the first angle is preset, preferably an angle in which the rotor is aligned with the positive direction of the axis of the A-phase, B-phase, or C-phase winding of the motor, i.e., 0°, 120°, or 240°. The total number of voltage injections in coarse positioning can be preset in combination with the requirements for positioning accuracy and positioning time, for example, it can be 4 times.

[0029] When injecting voltage vectors of various angles, the virtual electrical angle for field-oriented control is set to the corresponding angle, the d-axis voltage Ud is given as the preset voltage Uadd, and the q-axis voltage Uq is set to 0. After inverse Park transformation and SVPWM (Space Vector Pulse Width Modulation) modulation, a voltage vector of the corresponding angle is applied to the motor stator, and ADC (Analog-to-Digital Converter) synchronous sampling is triggered at the midpoint of the PWM cycle to obtain three-phase currents.

[0030] Take the case where the first angle is 0° and the total number N of voltage injections in the coarse positioning is 4 as an example. During the first injection, the virtual electrical angle is set to 0°, and the collected three-phase currents are Ia0, Ib0, and Ic0; during the second injection, the virtual electrical angle is set to 180°, and the collected three-phase currents are Ia180, Ib180, and Ic180. Since 0° is aligned with phase A, the phase-A current Ia0 is the largest, while the phase-B current Ib0 and phase-C current Ic0 are relatively small. If Ia0>Ia180, the positive inductance of phase A < the negative inductance of phase A (magnetic circuit saturation), and the electrical angle position of the motor rotor is between 0° and 180°; if Ia0<Ia180, the positive inductance of phase A > the negative inductance of phase A (magnetic circuit not saturated), and the electrical angle position of the motor is between 180° and 360°. Under the condition that Ia0>Ia180, that is, the electrical angle position of the motor rotor is between 0° and 180°, if Ib0>Ic0, the phase-B inductance < the phase-C inductance, and the electrical angle position of the motor rotor falls within the 90° angular range between 0° and 90°; if Ib0<Ic0, the phase-B inductance > the phase-C inductance, and the electrical angle position of the motor rotor falls within the 90° angular range between 90° and 180°. Under the condition that Ia0<Ia180, that is, the electrical angle position of the motor rotor is between 180° and 360°, if Ib0>Ic0, the phase-B inductance < the phase-C inductance, and the electrical angle position of the motor rotor falls within the 90° angular range between 180° and 270°; if Ib0<Ic0, the phase-B inductance > the phase-C inductance, and the electrical angle position of the motor rotor falls within the 90° angular range between 270° and 360°. It should be noted that if two angles are equal in the above and subsequent angle comparisons, the judgment result can be made equivalent to the case of greater than or the case of less than according to a preset rule, or this injection can be re-executed.

[0031] If the electrical angle position of the motor rotor is within the 90° angular range between 0° and 90°, the virtual electrical angle is set to 45° during the third injection; if the electrical angle position of the motor rotor is within the 90° angular range between 90° and 180°, the virtual electrical angle is set to 135° during the third injection; if the electrical angle position of the motor rotor is within the 90° angular range between 180° and 270°, the virtual electrical angle is set to 225° during the third injection; if the electrical angle position of the motor rotor is within the 90° angular range between 270° and 360°, the virtual electrical angle is set to 315° during the third injection.

[0032] If the virtual electrical angle is set to 45° during the third injection, the collected three-phase currents are Ia45, Ib45 and Ic45. If Ia45>Ib45, the electrical angle position of the motor rotor shall be within the 45° angular range between 0° and 45°, and the virtual electrical angle is set to 22.5° during the fourth injection; if Ia45<Ib45, the electrical angle position of the motor rotor shall be within the 45° angular range between 45° and 90°, and the virtual electrical angle is set to 67.5° during the fourth injection.

[0033] If the virtual electrical angle is set to 135° during the third injection, the collected three-phase currents are Ia135, Ib135 and Ic135. If Ia135>Ic135, the electrical angle position of the motor rotor shall be within the 45° angular range between 90° and 135°, and the virtual electrical angle is set to 112.5° during the fourth injection; if Ia135<Ic135, the electrical angle position of the motor rotor shall be within the 45° angular range between 135° and 180°, and the virtual electrical angle is set to 157.5° during the fourth injection.

[0034] If the virtual electrical angle is set to 225° during the third injection, the collected three-phase currents are Ia225, Ib225 and Ic225. If Ib225>Ic225, the electrical angle position of the motor rotor shall be within the 45° angular range between 180° and 225°, and the virtual electrical angle is set to 202.5° during the fourth injection; if Ib225<Ic225, the electrical angle position of the motor rotor shall be within the 45° angular range between 225° and 270°, and the virtual electrical angle is set to 247.5° during the fourth injection.

[0035] If the virtual electrical angle is set to 315° during the third injection, and the collected three-phase currents are Ia315, Ib315 and Ic315, if Ia315>Ic315, the electrical angle position of the motor rotor shall be within the 45° angular range between 270° and 315°, and the virtual electrical angle is set to 292.5° during the fourth injection; if Ia315<Ic315, the electrical angle position of the motor rotor shall be within the 45° angular range between 315° and 360°, and the virtual electrical angle is set to 337.5° during the fourth injection.

[0036] The judgment of the angular range where the motor rotor is located after the fourth injection refers to the third injection, which will not be repeated here. Finally, it is determined that the electrical angle position of the motor rotor is within a certain 22.5° angular range, and any angle value within this 22.5° angular range, for example, the center angle, is taken as the coarse angle of the motor rotor, that is, the accuracy of the coarse angle of the motor rotor is ±22.5°.

[0037] S2, on the basis of the coarse angle, with the minimization of the q-axis current amplitude as the convergence criterion, a variable-step extremum search is performed to obtain the fine angle of the motor rotor.

[0038] Specifically, in the j-th round, the voltage vector of the sum of the base angle and X° / 2 is injected to obtain the q-axis current amplitude, and the base angle and X° / 2 j-1 The voltage vector of the difference is injected to obtain the q-axis current amplitude, the two q-axis current amplitudes are compared, and the injection angle with the smaller q-axis current amplitude is taken as the base angle of the (j+1)-th round. Wherein, X° is the initial angle step, j takes an integer from 1 to M, M is the total number of actual extremum search rounds, and the base angle of the first round is equal to the coarse angle. Finally, the base angle of the (M+1)-th round is taken as the fine angle. j-1 In any round, if the two q-axis current amplitudes are equal, the base angle remains unchanged, that is, the base angle of the next round is equal to the base angle of this round.

[0039] In one embodiment of the present invention, the initial angle step and the total number of rounds can be preset in combination with the accuracy of coarse positioning, the requirements for the positioning accuracy and positioning time of the extremum search, etc.

[0040]

[0041] ​Taking an initial angle step size of 15° and a total number of rounds M as an example. In the first round, using the coarse angle θ0 as the base angle and the angle step size of 15°, voltage vectors of θ0+15° and θ0-15° are injected respectively, and the q-axis current amplitudes |Iq(θ0+15°)| and |Iq(θ0-15°)| are collected and calculated respectively. If |Iq(θ0+15°)| < |Iq(θ0-15°)|, the true angle is biased in the positive direction, and the base angle of the second round is set to θ1 = θ0+15°; if |Iq(θ0+15°)| > |Iq(θ0-15°)|, the true angle is biased in the negative direction, and θ1 = θ0-15°; if |Iq(θ0+15°)| = |Iq(θ0-15°)|, then θ1 = θ0.

[0042] In the second round, with an angle step size of 7.5°, voltage vectors of θ1+7.5° and θ1-7.5° are injected respectively, and the q-axis current amplitudes |Iq(θ1+7.5°)| and |Iq(θ1-7.5°)| are collected and calculated respectively. If |Iq(θ1+7.5°)| < |Iq(θ1-7.5°)|, then the base angle of the third round is set to θ2 = θ1+7.5°; if |Iq(θ1+7.5°)| > |Iq(θ1-7.5°)|, then θ2 = θ1; if |Iq(θ1+7.5°)| = |Iq(θ1-7.5°)|, then θ2 = θ1.

[0043] In the third round, with an angle step size of 3.75°, voltage vectors of θ2+3.75° and θ2-3.75° are injected respectively, and the q-axis current amplitudes |Iq(θ2+3.75°)| and |Iq(θ2-3.75°)| are collected and calculated respectively. If |Iq(θ2+3.75°)| < |Iq(θ2-3.75°)|, then let the base angle of the fourth round be θ3 = θ2+3.75°; if |Iq(θ2+3.75°)| > |Iq(θ2-3.75°)|, then let θ3 = θ2-3.75°; if |Iq(θ2+3.75°)| = |Iq(θ2-3.75°)|, then θ3 = θ2.

[0044] In the fourth round, with an angle step size of 1.875°, voltage vectors of θ3+1.875° and θ3-1.875° are injected respectively, and the q-axis current amplitudes |Iq(θ3+1.875°)| and |Iq(θ3-1.875°)| are collected and calculated respectively. If |Iq(θ3+1.875°)| < |Iq(θ3-1.875°)|, then let the base angle of the fifth round θ4 = θ3+1.875°; if |Iq(θ3+1.875°)| > |Iq(θ3-1.875°)|, then let θ4 = θ3-1.875°; if |Iq(θ3+1.875°)| = |Iq(θ3-1.875°)|, then θ4 = θ3.

[0045] In the fifth round, with an angle step size of 0.9375°, voltage vectors of θ4+0.9375° and θ4-0.9375° are injected respectively, and the q-axis current amplitudes |Iq(θ4+0.9375°)| and |Iq(θ4-0.9375°)| are collected and calculated respectively. If |Iq(θ4+0.9375°)| < |Iq(θ4-0.9375°)|, then the base angle of the sixth round is set to θ5 = θ4+0.9375°; if |Iq(θ4+0.9375°)| > |Iq(θ4-0.9375°)|, then θ5 = θ4; if |Iq(θ4+0.9375°)| = |Iq(θ4-0.9375°)|, then θ5 = θ4.

[0046] Since a sixth round of extreme value search is not performed, the so-called "base angle of the sixth round" is no longer used as the base angle for extreme value search. Instead, the base angle θ5 of the sixth round is used as the fine angle θ. acc .

[0047] The embodiments of the present invention compare the amplitudes of the q-axis currents with bilateral offsets, which is a differential comparison method. Compared with the pulse method of related technologies, common-mode interference cancels each other out, making it less susceptible to interference from voltage or temperature fluctuations, and providing better anti-interference and stability.

[0048] S3, perform polarity identification on the fine angle to confirm the final angle of the motor rotor, so as to obtain the initial position of the motor rotor.

[0049] The polarity information can be determined by comparing the current to determine the inductance. However, since the magnetic field of the motor rotor may not be saturated during the injection process, the polarity may be reversed. That is, the estimated angle is the S pole direction instead of the N pole direction. Therefore, after obtaining the precise angle, the polarity can be identified and confirmed.

[0050] Specifically, it can be directed to a fine angle θ acc Apply a positive voltage (Ud=Uadd, Uq=0) in the direction of the peak current vector I and obtain the peak current vector magnitude I.positive Apply a reverse voltage (Ud=-Uadd, Uq=0) in the direction of the fine angle plus 180°, and obtain the peak current vector magnitude I. negative Then, based on the magnitude relationship between the two peak current vectors, determine whether the rotor polarity is correct. If I positive > I negative , then θ acc That is, the N-pole direction is correct, the rotor polarity is correct, and the fine angle θ is... acc The final angle θ of the motor rotor is determined. final , that is, θ final =θ acc If I positive < I negative , then θ acc The rotor polarity is incorrect, indicating the S-pole direction. The fine angle θ needs to be adjusted. acc Adding 180° determines the final angle θ of the motor rotor. final , that is, θ final =θ acc + 180°. If I positive = I negative Then, a special magnetic weakening process is performed to reduce the fine angle θ. acc The final angle θ of the motor rotor is determined. final The final angle θ of the motor rotor final This is the current initial position of the motor rotor.

[0051] The voltage applied during the identification process is a short-time voltage pulse, and the peak current vector amplitude refers to the maximum value of the amplitude of the three-phase current composite vector during the voltage application phase.

[0052] Through four coarse positioning voltage injections, five rounds of variable-step bilateral voltage injections (10 times in total), and two polarity identification voltage injections in a specific embodiment of the present invention, the final motor rotor angle can be accurate to within 1°. The duration of each voltage injection can be fixed at 1-2 PWM cycles, and the total detection time can be within 5ms.

[0053] According to the method for detecting the initial position of a motor rotor in an embodiment of the present invention, the motor rotor is first coarsely positioned by multi-angle voltage vector injection. Then, based on the coarse positioning, a variable-step-size extreme value search is performed using the minimization of the q-axis current amplitude as the convergence criterion. Finally, the polarity of the fine angle obtained from the search is identified to confirm the final angle of the motor rotor. Thus, compared with high-frequency injection, only a small number of voltage vector injections are required, the time is shorter, and there is no obvious vibration or noise. By performing variable-step-size extreme value search and polarity identification based on coarse positioning, the accuracy of position detection can be guaranteed, thereby enabling rapid and accurate detection of the initial position of the motor rotor and effectively avoiding noise during the detection process.

[0054] Furthermore, the motor rotor initial position detection method of this embodiment does not require any closed-loop iterative convergence waiting during implementation. It belongs to an open-loop deterministic injection sequence with strong time predictability, making it suitable for real-time embedded systems.

[0055] Furthermore, the motor rotor initial position detection method of this embodiment can also be used to realize circuit break detection during implementation.

[0056] Specifically, the three-phase currents can be obtained each time a voltage vector is injected. After injecting voltage vectors at different angles multiple times, the maximum value of each phase current can be obtained. Then, based on the maximum value of each phase current, it can be determined whether a circuit breaker fault has occurred and which phase the circuit breaker fault is located.

[0057] For example, after coarse positioning, the three-phase currents at each voltage vector injection during the coarse positioning process can be obtained, and the maximum values ​​of phase A current (Iamax), phase B current (Ibmax), and phase C current (Icmax) can be obtained in 4 tests. Alternatively, after extreme value search, the three-phase currents at each voltage vector injection during the coarse positioning and extreme value search processes can be obtained, and the maximum values ​​of phase A current (Iamax), phase B current (Ibmax), and phase C current (Icmax) can be obtained in 14 tests. Similarly, after polarity identification, the three-phase currents at each voltage vector injection during the coarse positioning, extreme value search, and polarity identification processes can be obtained, and the maximum values ​​of phase A current (Iamax), phase B current (Ibmax), and phase C current (Icmax) can be obtained in 16 tests. Then, the maximum values ​​of each phase current are compared with preset thresholds. If Iamax < preset threshold, a phase A open circuit fault is reported; if Ibmax < preset threshold, a phase B open circuit fault is reported; and if Icmax < preset threshold, a phase C open circuit fault is reported.

[0058] Therefore, the embodiments of the present invention can perform open circuit detection during the initial position detection of the motor rotor, without relying on the angle of a single injected voltage, but taking the maximum value of each phase in the entire injection sequence, covering the full angle range from 0° to 360°, eliminating the misjudgment problem caused by the rotor position being at a zero crossing point, and without requiring additional detection time, thus conveniently and accurately detecting the open circuit fault of a specific phase.

[0059] Furthermore, at least one of steps S1 to S3 can be executed multiple times to verify the confidence level of the results obtained from the at least one step. When step S1 is executed multiple times, if the obtained coarse angle falls within different angle ranges, the proportion of each angle range can be statistically analyzed, and the angle range with the largest proportion is used to determine the coarse angle obtained from the coarse positioning. When step S2 is executed multiple times, or steps S1 and S2 are executed multiple times, it can be determined whether there are any fine angles that deviate significantly from other fine angles, for example, by judging the difference from the mean. If so, the fine angle with the large deviation is removed, and the other fine angles with smaller deviations are merged, for example, by taking the average, to obtain the fine angle. When step S3 is executed multiple times, or steps S1 to S3 are executed multiple times, the polarity identification result with the largest proportion is taken as the actual polarity identification result. Thus, the success rate of the initial position detection of the motor rotor can be guaranteed, and the accuracy of the initial position detection of the motor rotor can be further improved.

[0060] Corresponding to the motor rotor initial position detection method in the above embodiments, the present invention also proposes a motor rotor initial position detection device.

[0061] like Figure 2 As shown, the motor rotor initial position detection device of this embodiment includes a coarse positioning module 10, an extreme value search module 20, and a polarity identification module 30. The coarse positioning module 10 is used to perform coarse positioning of the motor rotor by injecting voltage vectors at multiple angles to obtain the coarse angle of the motor rotor; the extreme value search module 20 is used to perform extreme value search with variable step size based on the coarse angle, using the minimization of the q-axis current amplitude as the convergence criterion, to obtain the fine angle of the motor rotor; the polarity identification module 30 is used to perform polarity identification on the fine angle to confirm the final angle of the motor rotor, so as to obtain the initial position of the motor rotor.

[0062] In the field-oriented control, the coarse positioning module 10 injects a voltage vector at a first angle and collects the three-phase current at that angle. It then injects a voltage vector at a second angle and collects the three-phase current at that angle, where the second angle differs from the first angle by 180°. Based on the magnitude relationship between the currents in the same phase at the first and second angles, and the magnitude relationship between the currents of adjacent phases at the first angle, it determines the 90° angular range of the motor rotor. Next, it injects a voltage vector at the i-th angle, collects the three-phase current at that angle, and determines the 90° / 2-angle range of the motor rotor based on the magnitude relationship between the currents of adjacent phases at the i-th angle. i -2 The angular range, where the i-th angle is 90° / 2 of the position of the motor rotor. i-3 The center angle of the angular range, i takes integer values ​​from 3 to N, where N is the total number of voltage injections during coarse positioning. Finally, the center angle is determined by the position of the motor rotor at 90° / 2. N-2 Any angle value within the angular range is taken as the coarse angle.

[0063] In one embodiment of the present invention, the first angle is preset, preferably an angle in which the rotor is aligned with the positive direction of the axis of the A-phase, B-phase, or C-phase winding of the motor, i.e., 0°, 120°, or 240°. The total number of voltage injections in coarse positioning can be preset in combination with the requirements for positioning accuracy and positioning time, for example, it can be 4 times.

[0064] When injecting voltage vectors at various angles, the virtual electrical angle of the field-oriented control is set to the corresponding angle, and the d-axis voltage Ud is given as the preset voltage Uadd, and the q-axis voltage Uq is 0. After inverse Park transformation and SVPWM modulation, the voltage vectors at the corresponding angles are applied to the motor stator. At the midpoint of the PWM cycle, the ADC is triggered to synchronously sample and obtain the three-phase current.

[0065] Taking that the first angle is 0° and the total number N of voltage injections in the coarse positioning is 4 as an example. In the first injection, the virtual electrical angle is set to 0°, and the collected three-phase currents are Ia0, Ib0 and Ic0; in the second injection, the virtual electrical angle is set to 180°, and the collected three-phase currents are Ia180, Ib180 and Ic180. Since 0° is aligned with phase A, the phase A current Ia0 is the maximum, while the phase B current Ib0 and phase C current Ic0 are relatively small. If Ia0>Ia180, the positive inductance of phase A < the negative inductance of phase A (magnetic circuit saturation), and the electrical angle position of the motor rotor is between 0° and 180°; if Ia0<Ia180, the positive inductance of phase A > the negative inductance of phase A (magnetic circuit is not saturated), and the electrical angle position of the motor is between 180° and 360°. Under the condition that Ia0>Ia180, that is, the electrical angle position of the motor rotor is between 0° and 180°, if Ib0>Ic0, the phase B inductance < the phase C inductance, and the electrical angle position of the motor rotor should be within the 90° angular range between 0° and 90°; if Ib0<Ic0, the phase B inductance > the phase C inductance, and the electrical angle position of the motor rotor should be within the 90° angular range between 90° and 180°. Under the condition that Ia0<Ia180, that is, the electrical angle position of the motor rotor is between 180° and 360°, if Ib0>Ic0, the phase B inductance < the phase C inductance, and the electrical angle position of the motor rotor should be within the 90° angular range between 180° and 270°; if Ib0<Ic0, the phase B inductance > the phase C inductance, and the electrical angle position of the motor rotor should be within the 90° angular range between 270° and 360°. It should be noted that if two angles are equal in the above and subsequent angle comparisons, the judgment result can be regarded as the case of greater than or the case of less than according to a preset rule, or this injection can be re-executed.

[0066] If the electrical angle position of the motor rotor is within the 90° angular range between 0° and 90°, the virtual electrical angle is set to 45° in the third injection; if the electrical angle position of the motor rotor is within the 90° angular range between 90° and 180°, the virtual electrical angle is set to 135° in the third injection; if the electrical angle position of the motor rotor is within the 90° angular range between 180° and 270°, the virtual electrical angle is set to 225° in the third injection; if the electrical angle position of the motor rotor is within the 90° angular range between 270° and 360°, the virtual electrical angle is set to 315° in the third injection.

[0067] If the virtual electrical angle is set to 45° during the third injection, the collected three-phase currents are Ia45, Ib45, and Ic45. If Ia45>Ib45, the electrical angle position of the motor rotor shall be within the 45° angular range of 0°-45°, and the virtual electrical angle is set to 22.5° during the fourth injection; if Ia45<Ib45, the electrical angle position of the motor rotor shall be within the 45° angular range of 45°-90°, and the virtual electrical angle is set to 67.5° during the fourth injection.

[0068] If the virtual electrical angle is set to 135° during the third injection, the collected three-phase currents are Ia135, Ib135, and Ic135. If Ia135>Ic135, the electrical angle position of the motor rotor shall be within the 45° angular range of 90°-135°, and the virtual electrical angle is set to 112.5° during the fourth injection; if Ia135<Ic135, the electrical angle position of the motor rotor shall be within the 45° angular range of 135°-180°, and the virtual electrical angle is set to 157.5° during the fourth injection.

[0069] If the virtual electrical angle is set to 225° during the third injection, the collected three-phase currents are Ia225, Ib225, and Ic225. If Ib225>Ic225, the electrical angle position of the motor rotor shall be within the 45° angular range of 180°-225°, and the virtual electrical angle is set to 202.5° during the fourth injection; if Ib225<Ic225, the electrical angle position of the motor rotor shall be within the 45° angular range of 225°-270°, and the virtual electrical angle is set to 247.5° during the fourth injection.

[0070] If the virtual electrical angle is set to 315° during the third injection, the collected three-phase currents are Ia315, Ib315, and Ic315. If Ia315>Ic315, the electrical angle position of the motor rotor shall be within the 45° angular range of 270°-315°, and the virtual electrical angle is set to 292.5° during the fourth injection; if Ia315<Ic315, the electrical angle position of the motor rotor shall be within the 45° angular range of 315°-360°, and the virtual electrical angle is set to 337.5° during the fourth injection.

[0071] The judgment of the angular range where the motor rotor is located after the fourth injection refers to the third injection, which will not be repeated here. Finally, it is determined that the electrical angle position of the motor rotor is within a certain 22.5° angular range, and any angle value within this 22.5° angular range, such as the center angle, is taken as the rough angle of the motor rotor, that is, the accuracy of the rough angle of the motor rotor is ±22.5°.

[0072] The extremum search module 20 is specifically configured to: in the j-th round, inject the base angle and X° / 2 j-1The sum of the voltage vectors is used to obtain the q-axis current amplitude, and the base angle is injected with X° / 2. j-1 The voltage vector difference is used to obtain the q-axis current amplitude. These two q-axis current amplitudes are compared, and the injection angle with the smaller q-axis current amplitude is used as the base angle for the (j+1)th round. Here, X° is the initial angle step size, j is an integer from 1 to M, and M is the total number of rounds in the actual extreme value search. The base angle for the first round is equal to the coarse angle. Finally, the base angle for the (M+1)th round is used as the fine angle.

[0073] In any round, if the amplitudes of the two q-axis currents are equal, the base angle remains unchanged, meaning the base angle of the next round is equal to the base angle of the previous round.

[0074] In one embodiment of the present invention, the initial angle step size and the total number of rounds can be preset in combination with the requirements for coarse positioning accuracy, positioning accuracy for extreme value search, and positioning time.

[0075] Taking an initial angle step size of 15° and a total number of rounds M as an example. In the first round, using the coarse angle θ0 as the base angle and the angle step size of 15°, voltage vectors of θ0+15° and θ0-15° are injected respectively, and the q-axis current amplitudes |Iq(θ0+15°)| and |Iq(θ0-15°)| are collected and calculated respectively. If |Iq(θ0+15°)| < |Iq(θ0-15°)|, the true angle is biased in the positive direction, and the base angle of the second round is set to θ1 = θ0+15°; if |Iq(θ0+15°)| > |Iq(θ0-15°)|, the true angle is biased in the negative direction, and θ1 = θ0-15°; if |Iq(θ0+15°)| = |Iq(θ0-15°)|, then θ1 = θ0.

[0076] In the second round, with an angle step size of 7.5°, voltage vectors of θ1+7.5° and θ1-7.5° are injected respectively, and the q-axis current amplitudes |Iq(θ1+7.5°)| and |Iq(θ1-7.5°)| are collected and calculated respectively. If |Iq(θ1+7.5°)| < |Iq(θ1-7.5°)|, then the base angle of the third round is set to θ2 = θ1+7.5°; if |Iq(θ1+7.5°)| > |Iq(θ1-7.5°)|, then θ2 = θ1; if |Iq(θ1+7.5°)| = |Iq(θ1-7.5°)|, then θ2 = θ1.

[0077] In the third round, with an angle step size of 3.75°, voltage vectors of θ2+3.75° and θ2-3.75° are injected respectively, and the q-axis current amplitudes |Iq(θ2+3.75°)| and |Iq(θ2-3.75°)| are collected and calculated respectively. If |Iq(θ2+3.75°)| < |Iq(θ2-3.75°)|, then let the base angle of the fourth round be θ3 = θ2+3.75°; if |Iq(θ2+3.75°)| > |Iq(θ2-3.75°)|, then let θ3 = θ2-3.75°; if |Iq(θ2+3.75°)| = |Iq(θ2-3.75°)|, then θ3 = θ2.

[0078] In the fourth round, with an angle step size of 1.875°, voltage vectors of θ3+1.875° and θ3-1.875° are injected respectively, and the q-axis current amplitudes |Iq(θ3+1.875°)| and |Iq(θ3-1.875°)| are collected and calculated respectively. If |Iq(θ3+1.875°)| < |Iq(θ3-1.875°)|, then let the base angle of the fifth round θ4 = θ3+1.875°; if |Iq(θ3+1.875°)| > |Iq(θ3-1.875°)|, then let θ4 = θ3-1.875°; if |Iq(θ3+1.875°)| = |Iq(θ3-1.875°)|, then θ4 = θ3.

[0079] In the fifth round, with an angle step size of 0.9375°, voltage vectors of θ4+0.9375° and θ4-0.9375° are injected respectively, and the q-axis current amplitudes |Iq(θ4+0.9375°)| and |Iq(θ4-0.9375°)| are collected and calculated respectively. If |Iq(θ4+0.9375°)| < |Iq(θ4-0.9375°)|, then the base angle of the sixth round is set to θ5 = θ4+0.9375°; if |Iq(θ4+0.9375°)| > |Iq(θ4-0.9375°)|, then θ5 = θ4; if |Iq(θ4+0.9375°)| = |Iq(θ4-0.9375°)|, then θ5 = θ4.

[0080] Since a sixth round of extreme value search is not performed, the so-called "base angle of the sixth round" is no longer used as the base angle for extreme value search. Instead, the base angle θ5 of the sixth round is used as the fine angle θ. acc .

[0081] The embodiments of the present invention compare the amplitudes of the q-axis currents with bilateral offsets, which is a differential comparison method. Compared with the pulse method of related technologies, common-mode interference cancels each other out, making it less susceptible to interference from voltage or temperature fluctuations, and providing better anti-interference and stability.

[0082] The polarity information can be determined by comparing the current to determine the inductance. However, since the magnetic field of the motor rotor may not be saturated during the injection process, the polarity may be reversed. That is, the estimated angle is the S pole direction instead of the N pole direction. Therefore, after obtaining the precise angle, the polarity can be identified and confirmed.

[0083] The polarity identification module 30 specifically targets fine angles θ. acc Apply a positive voltage (Ud=Uadd, Uq=0) in the direction of the peak current vector I and obtain the peak current vector magnitude I. positive Apply a reverse voltage (Ud=-Uadd, Uq=0) in the direction of the fine angle plus 180°, and obtain the peak current vector magnitude I. negative Then, based on the magnitude relationship between the two peak current vectors, determine whether the rotor polarity is correct. If I positive > I negative , then θ acc That is, the N-pole direction is correct, the rotor polarity is correct, and the fine angle θ is... acc The final angle θ of the motor rotor is determined. final , that is, θ final =θ acc If I positive < I negative , then θ acc The rotor polarity is incorrect, indicating the S-pole direction. The fine angle θ needs to be adjusted. acc Adding 180° determines the final angle θ of the motor rotor. final , that is, θ final =θ acc +180°. If I positive = I negative Then, a special magnetic weakening process is performed to reduce the fine angle θ. acc The final angle θ of the motor rotor is determined. final The final angle θ of the motor rotor final This is the current initial position of the motor rotor.

[0084] The voltage applied during the identification process is a short-time voltage pulse, and the peak current vector amplitude refers to the maximum value of the amplitude of the three-phase current composite vector during the voltage application phase.

[0085] Through four coarse positioning voltage injections, five rounds of variable-step bilateral voltage injections (10 times in total), and two polarity identification voltage injections in a specific embodiment of the present invention, the final motor rotor angle can be accurate to within 1°. The duration of each voltage injection can be fixed at 1-2 PWM cycles, and the total detection time can be within 5ms.

[0086] According to the embodiment of the present invention, the motor rotor initial position detection device first performs coarse positioning of the motor rotor by multi-angle voltage vector injection. Then, based on the coarse positioning, it performs a variable-step extreme value search using the minimization of the q-axis current amplitude as the convergence criterion. Finally, it identifies the polarity of the fine angle obtained by the search to confirm the final angle of the motor rotor. Thus, compared with high-frequency injection, only a small number of voltage vector injections are required, the time is shorter, and there is no obvious vibration or noise. By performing variable-step extreme value search and polarity identification based on coarse positioning, the accuracy of position detection can be guaranteed, thereby enabling rapid and accurate detection of the initial position of the motor rotor and effectively avoiding noise during the detection process.

[0087] Furthermore, the motor rotor initial position detection device of this embodiment does not require any closed-loop iterative convergence waiting during implementation. It belongs to an open-loop deterministic injection sequence with strong time predictability, making it suitable for real-time embedded systems.

[0088] Furthermore, the motor rotor initial position detection device of this embodiment can also be used to detect open circuits during implementation.

[0089] Specifically, the motor rotor initial position detection device of this embodiment may further include a circuit breaker detection module. The circuit breaker detection module is used to obtain the three-phase current when the voltage vector is injected each time. After injecting voltage vectors at different angles multiple times, the maximum value of each phase current when injecting voltage vectors at different angles multiple times is obtained. Based on the maximum value of each phase current, it is determined whether a circuit breaker fault has occurred and the phase in which the circuit breaker fault is located.

[0090] For example, after coarse positioning, the three-phase currents at each voltage vector injection during the coarse positioning process can be obtained, and the maximum values ​​of phase A current (Iamax), phase B current (Ibmax), and phase C current (Icmax) can be obtained in 4 tests. Alternatively, after extreme value search, the three-phase currents at each voltage vector injection during the coarse positioning and extreme value search processes can be obtained, and the maximum values ​​of phase A current (Iamax), phase B current (Ibmax), and phase C current (Icmax) can be obtained in 14 tests. Similarly, after polarity identification, the three-phase currents at each voltage vector injection during the coarse positioning, extreme value search, and polarity identification processes can be obtained, and the maximum values ​​of phase A current (Iamax), phase B current (Ibmax), and phase C current (Icmax) can be obtained in 16 tests. Then, the maximum values ​​of each phase current are compared with preset thresholds. If Iamax < preset threshold, a phase A open circuit fault is reported; if Ibmax < preset threshold, a phase B open circuit fault is reported; and if Icmax < preset threshold, a phase C open circuit fault is reported.

[0091] Therefore, the embodiments of the present invention can perform open circuit detection during the initial position detection of the motor rotor, without relying on the angle of a single injected voltage, but taking the maximum value of each phase in the entire injection sequence, covering the full angle range from 0° to 360°, eliminating the misjudgment problem caused by the rotor position being at a zero crossing point, and without requiring additional detection time, thus conveniently and accurately detecting the open circuit fault of a specific phase.

[0092] Furthermore, the motor rotor initial position detection device of this embodiment may also include a verification module. The verification module is used to verify the confidence level of the results of at least one of the coarse positioning module 10, the extreme value search module 20, and the polarity identification module 30 performing their functions multiple times. When the coarse positioning module 10 performs its function multiple times, if the angle ranges of the obtained coarse angles are different, the proportion of each angle range can be counted, and the angle range with the largest proportion can be used to determine the coarse angle obtained by coarse positioning. When the extreme value search module 20 performs its function multiple times, or when the coarse positioning module 10 and the extreme value search module 20 perform their functions multiple times, it can be determined whether there are any fine angles that deviate significantly from other fine angles. For example, the difference from the mean can be used to determine whether there are any. If so, the fine angle with the large deviation is removed, and the other fine angles with smaller deviations are merged, for example, by taking the mean, to obtain the fine angle. When the polarity identification module 30 performs its function multiple times, or when the coarse positioning module 10, the extreme value search module 20, and the polarity identification module 30 perform their functions multiple times, the polarity identification result with the largest proportion is taken as the actual polarity identification result. This ensures the success rate of initial rotor position detection and further improves the accuracy of initial rotor position detection.

[0093] In the description of this invention, the terms "first" and "second" 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" or "second" may explicitly or implicitly include one or more of that feature. "A plurality of" means two or more, unless otherwise explicitly specified.

[0094] In this invention, unless otherwise explicitly specified and limited, the terms "installation," "connection," "linking," and "fixing," etc., should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal communication of two components or the interaction between two components. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.

[0095] In this invention, unless otherwise explicitly specified and limited, "above" or "below" the second feature can mean that the first feature is in direct contact with the second feature, or that the first feature is in indirect contact with the second feature through an intermediate medium. Furthermore, "above," "over," and "on top" of the second feature can mean that the first feature is directly above or diagonally above the second feature, or simply that the first feature is at a higher horizontal level than the second feature. "Below," "below," and "under" the second feature can mean that the first feature is directly below or diagonally below the second feature, or simply that the first feature is at a lower horizontal level than the second feature.

[0096] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the present invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Furthermore, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.

[0097] Any process or method description in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing a particular logical function or process, and the scope of the preferred embodiments of the invention includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as will be understood by those skilled in the art to which embodiments of the invention pertain.

[0098] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a ordered list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.

[0099] It should be understood that various parts of the present invention can be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0100] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.

[0101] Furthermore, the functional units in the various embodiments of the present invention can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.

[0102] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.

Claims

1. A method for detecting the initial position of a motor rotor, characterized in that, Includes the following steps: S1, coarse positioning of the motor rotor is achieved by multi-angle voltage vector injection, and the coarse angle of the motor rotor is obtained; S2, based on the coarse angle, using the minimization of the q-axis current amplitude as the convergence criterion, perform a variable step-size extreme value search to obtain the fine angle of the motor rotor; S3, perform polarity identification on the fine angle to confirm the final angle of the motor rotor, so as to obtain the initial position of the motor rotor.

2. The method for detecting the initial position of a motor rotor according to claim 1, characterized in that, Step S1 specifically includes: In magnetic field orientation control, a voltage vector at a first angle is injected, and the three-phase current at the first angle is collected; A voltage vector at a second angle is injected, and the three-phase current at the second angle is collected, wherein the second angle differs from the first angle by 180°; The 90° angle range of the motor rotor is determined based on the relationship between the magnitudes of the currents in the same phase under the first angle and the second angle, and the relationship between the magnitudes of the currents in adjacent phases under the first angle. Inject a voltage vector at the i-th angle, collect the three-phase current at the i-th angle, and determine the 90° / 2 position of the motor rotor based on the magnitude relationship of the adjacent phase currents at the i-th angle. i-2 Angle range, wherein the i-th angle is 90° / 2 of the position of the motor rotor. i-3 The center angle of the angular range, i takes integers from 3 to N, where N is the total number of voltage injections in coarse positioning; With the motor rotor at 90° / 2 N-2 Any angle value within the angular range is taken as the coarse angle.

3. The method for detecting the initial position of a motor rotor according to claim 2, characterized in that, Step S2 specifically includes: In the j-th round, inject the base angle and X° / 2 j-1 The sum of the voltage vectors is used to obtain the q-axis current amplitude, and the base angle and X° / 2 are injected. j-1 The voltage vector difference is used to obtain the q-axis current amplitude. The two q-axis current amplitudes are compared, and the injection angle with the smaller q-axis current amplitude is used as the base angle for the (j+1)th round. Here, X° is the initial angle step size, j is an integer from 1 to M, M is the total number of rounds of the actual extreme value search, and the base angle of the first round is equal to the coarse angle. The base angle of the (M+1)th round is used as the fine angle.

4. The method for detecting the initial position of a motor rotor according to claim 3, characterized in that, Step S3 specifically includes: A positive voltage is applied in the direction of the fine angle to obtain the peak current vector magnitude; A reverse voltage is applied in the direction of adding 180° to the fine angle to obtain the peak current vector amplitude; Determine whether the rotor polarity is correct based on the magnitude relationship between the two peak current vectors. If the rotor polarity is correct, the fine angle is determined as the final angle of the motor rotor; If the rotor polarity is incorrect, the fine angle is added to 180° to determine the final angle of the motor rotor.

5. The method for detecting the initial position of a motor rotor according to any one of claims 1-4, characterized in that, Also includes: Obtain the three-phase current at each injection voltage vector; After injecting voltage vectors at different angles multiple times, the maximum value of the current in each phase is obtained when voltage vectors at different angles are injected multiple times. Determine whether a circuit breaker fault has occurred and the phase in which the circuit breaker fault is located based on the maximum value of the current in each phase.

6. The method for detecting the initial position of a motor rotor according to claim 1, characterized in that, At least one of steps S1 to S3 is executed multiple times to perform a confidence check on the result obtained from the at least one step.

7. A device for detecting the initial position of a motor rotor, characterized in that, include: A coarse positioning module is used to perform coarse positioning of the motor rotor by injecting voltage vectors at multiple angles, thereby obtaining the coarse angle of the motor rotor. An extreme value search module is used to perform a variable step-size extreme value search based on the coarse angle, using the minimization of the q-axis current amplitude as the convergence criterion, to obtain the fine angle of the motor rotor. A polarity identification module is used to identify the polarity of the fine angle, confirm the final angle of the motor rotor, and obtain the initial position of the motor rotor.

8. The motor rotor initial position detection device according to claim 7, characterized in that, The coarse positioning module is specifically used for: In magnetic field orientation control, a voltage vector at a first angle is injected, and the three-phase current at the first angle is collected; A voltage vector at a second angle is injected, and the three-phase current at the second angle is collected, wherein the second angle differs from the first angle by 180°; The 90° angle range of the motor rotor is determined based on the relationship between the magnitudes of the currents in the same phase under the first angle and the second angle, and the relationship between the magnitudes of the currents in adjacent phases under the first angle. Inject a voltage vector at the i-th angle, collect the three-phase current at the i-th angle, and determine the 90° / 2 position of the motor rotor based on the magnitude relationship of the adjacent phase currents at the i-th angle. i-2 Angle range, wherein the i-th angle is 90° / 2 of the position of the motor rotor. i-3 The center angle of the angular range, i takes integers from 3 to N, where N is the total number of voltage injections in coarse positioning; With the motor rotor at 90° / 2 N-2 Any angle value within the angular range is taken as the coarse angle.

9. The motor rotor initial position detection device according to claim 8, characterized in that, The extreme value search module is specifically used for: In the j-th round, inject the base angle and X° / 2 j-1 The sum of the voltage vectors is used to obtain the q-axis current amplitude, and the base angle and X° / 2 are injected. j-1 The voltage vector difference is used to obtain the q-axis current amplitude. The two q-axis current amplitudes are compared, and the injection angle with the smaller q-axis current amplitude is used as the base angle for the (j+1)th round. Here, X° is the initial angle step size, j is an integer from 1 to M, M is the total number of rounds of the actual extreme value search, and the base angle of the first round is equal to the coarse angle. The base angle of the (M+1)th round is used as the fine angle.

10. The motor rotor initial position detection device according to claim 9, characterized in that, The polarity identification module is specifically used for: A positive voltage is applied in the direction of the fine angle to obtain the peak current vector magnitude; A reverse voltage is applied in the direction of adding 180° to the fine angle to obtain the peak current vector amplitude; Determine whether the rotor polarity is correct based on the magnitude relationship between the two peak current vectors. If the rotor polarity is correct, the fine angle is determined as the final angle of the motor rotor; If the rotor polarity is incorrect, the fine angle is added to 180° to determine the final angle of the motor rotor.

11. The motor rotor initial position detection device according to any one of claims 7-10, characterized in that, Also includes: The circuit breaker detection module is used to acquire the three-phase current at each voltage vector injection. After multiple injections of voltage vectors at different angles, the module acquires the maximum value of the current in each phase at the same angle. Based on the maximum value of the current in each phase, the module determines whether a circuit breaker fault has occurred and which phase the fault is located.

12. The motor rotor initial position detection device according to claim 7, characterized in that, Also includes: A verification module is used to perform confidence verification on the results of multiple executions of the functions of at least one of the coarse positioning module, the extreme value search module, and the polarity identification module.