Motor rotor position detection method and device, storage medium and program product
By applying multiple pulse voltage vectors in a permanent magnet synchronous motor and analyzing the response, the rotor position and polarity are accurately obtained, which solves the problem of low accuracy of positionless sensors when starting up, and improves the motor's start success rate and torque loading ability.
Patent Information
- Application Number
- CN202411631233.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-15
- Publication Date
- 2024-12-17
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Existing position-free sensor observation methods are difficult to accurately obtain the initial rotor position when the permanent magnet synchronous motor is started, especially when the motor is powered on.
When the rotor of the motor is stationary, three pulse voltage vectors along the A, B, and C phase axes are applied to the stator winding, and the sector where the rotor position is determined according to the response current, and the rotor position is calculated by selecting the appropriate pulse voltage vector, combined with Apply the d-axis pulse voltage to determine the polarity of the rotor and eliminate the influence of the response current on magnetic saturation.
It realizes higher accuracy detection of the initial position of the motor rotor, improves the motor start-up success rate and torque load capacity, and is simple to implement the engineering.
Smart Images

Figure CN119154744A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of control, and in particular to a method, device, storage medium and program product for detecting the rotor position of a motor. Background Art
[0002] Permanent magnet synchronous motors are increasingly widely used in industries, household appliances, new energy vehicles, etc. due to their many advantages such as high power density, high efficiency, and high torque density. The control of permanent magnet synchronous motors is usually achieved by high-precision vector control methods. Accurate rotor position information is required in the control to achieve magnetic field orientation. Position detection devices such as photoelectric encoders and rotary transformers are usually installed at the rotor shaft end. However, these sensors increase the cost and volume of the system, and reduce the reliability and anti-interference ability of the system. Therefore, the position sensorless observation method that estimates the rotor position and speed by detecting the motor voltage and current signals combined with the motor model has become a research hotspot in the field of motor control technology.
[0003] When a permanent magnet synchronous motor is started, the acquisition of the initial position of the rotor has a great impact on the normal starting and load capacity of the motor. Accurate initial position information can greatly improve the starting success rate and torque load capacity. At present, various position sensorless observation methods estimate the position of the rotor based on the voltage and current response of the motor. Most of them have better effects when the motor is powered on and has a certain speed. Other methods are needed to accurately obtain the initial position of the motor rotor. At present, the more commonly used methods for obtaining the initial position of the rotor are high-frequency signal injection method and pulse signal injection method. Among them, the pulse signal injection method, including pulse voltage injection method and pulse current injection method, is widely used in practice due to its simple engineering implementation. Summary of the invention
[0004] The main purpose of the present invention is to overcome the defects of the above-mentioned related technologies and to provide a method, device, storage medium and program product for detecting the rotor position of a motor, so as to solve the problem that the position sensorless observation method in the related technology estimates the position of the rotor based on the voltage and current response of the motor, and most of the time, it has a better effect only when the motor is powered on and has a certain speed.
[0005] On the one hand, the present invention provides a method for detecting the rotor position of a motor, comprising: applying three pulse voltage vectors U respectively along the A, B, and C phase axes to the stator winding of the motor when the rotor of the motor is stationary. A , U B and U C According to the pulse voltage vector U applied A , U B and U C The response current I A ,I B and IC , determine the sector where the rotor position of the motor is located; the sector is divided according to the electrical angle; according to the determined sector where the rotor position of the motor is located, from the pulse voltage vector U A , U B and U C Two pulse voltage vectors are selected; according to the two selected pulse voltage vectors, the rotor position of the motor is calculated to obtain the calculated rotor position of the motor; pulse voltage vectors are applied to the positive direction and the negative direction of the motor rotor d-axis respectively to determine the polarity of the motor rotor; according to the determined motor rotor polarity and the calculated rotor position of the motor, the rotor position of the motor is determined.
[0006] Optionally, a pulse voltage vector U is applied to the stator winding of the motor three times along the A, B, and C phase axes respectively. A , U B and U C , equal in amplitude and duration.
[0007] Optionally, according to applying the pulse voltage vector U A , U B and U C The response current I A ,I B and I C , determining the sector where the rotor position of the motor is located, including: according to the generated response current I A ,I B and I C The magnitude relationship is used to determine the sector where the rotor position of the motor is located, wherein the response current I A ,I B and I C The different size relationships correspond to different sectors where the rotor position of the motor is located.
[0008] Optionally, it also includes: when the rotor position is in different sectors, the pulse voltage vector U applied along the A, B, and C phase axes A , U B and U C The sectors are classified into three regions I, II and III according to the distance from the d-axis; when the rotor position is in each of the three regions I, II and III, the pulse voltage vector U applied along the A, B and C phase axes is A , U B and U C According to the determined sector where the rotor position of the motor is located, the pulse voltage vector U A , U B and U CThe method comprises: determining the pulse voltage vector U from the pulse voltage vector U according to the determined sector where the rotor position of the motor belongs to in the three regions I, II and III. A , U B and U C Corresponding to the two pulse voltage vectors selected.
[0009] Optionally, a pulse voltage vector is applied to the positive direction and the negative direction of the d-axis of the motor rotor respectively to determine the polarity of the motor rotor, including: when the pulse voltage vector is applied to the positive direction of the d-axis of the motor rotor, a response current I1 is generated, and when the pulse voltage vector is applied to the negative direction of the d-axis of the motor rotor, a response current I2 is generated; if I1>I2, the polarity of the motor rotor is determined to be an N pole, and if I2>I1, the polarity of the motor rotor is determined to be an S pole.
[0010] Optionally, the rotor position of the motor is determined based on the determined motor rotor polarity and the calculated rotor position of the motor, including: if the motor rotor polarity is determined to be an N pole, then the rotor position of the motor is determined to be the calculated rotor position; if the motor rotor polarity is determined to be an N pole, then the rotor position of the motor is determined to be the calculated rotor position plus 180°.
[0011] Another aspect of the present invention provides a motor rotor position detection device, comprising: a first applying unit, for applying three pulse voltage vectors U respectively along the A, B, and C phase axes to the stator winding of the motor when the rotor of the motor is stationary; A , U B and U C ;
[0012] a first determining unit, configured to apply the pulse voltage vector U according to the first applying unit; A , U B and U C The response current I A ,I B and I C , determine the sector where the rotor position of the motor is located; the sector is divided according to the electrical angle; a selection unit is used to select the sector where the rotor position of the motor is located according to the first determination unit, from the pulse voltage vector U A , U B and U Ctwo pulse voltage vectors are selected from the selection unit; a calculation unit, a user calculates the rotor position of the motor according to the two pulse voltage vectors selected by the selection unit, and obtains the calculated rotor position of the motor; a second applying unit, used to apply pulse voltage vectors to the positive direction and negative direction of the motor rotor d-axis respectively to determine the polarity of the motor rotor; a second determining unit, determines the rotor position of the motor according to the motor rotor polarity determined by the second applying and the calculated rotor position of the motor.
[0013] Optionally, a pulse voltage vector U is applied to the stator winding of the motor three times along the A, B, and C phase axes respectively. A , U B and U C , equal in amplitude and duration.
[0014] Optionally, the first determining unit applies the pulse voltage vector U A , U B and U C The response current I A ,I B and I C , determining the sector where the rotor position of the motor is located, including: according to the generated response current I A ,I B and I C The magnitude relationship is used to determine the sector where the rotor position of the motor is located, wherein the response current I A ,I B and I C The different size relationships correspond to different sectors where the rotor position of the motor is located.
[0015] Optionally, it also includes: a classification unit, which is used to apply the pulse voltage vector U along the A, B, and C phase axes according to the rotor position in different sectors. A , U B and U C The sectors are classified into three regions I, II and III according to the distance from the d-axis; a third determining unit is used to predetermine that when the rotor position is in each of the three regions I, II and III, the pulse voltage vector U applied along the A, B and C phase axes A , U B and U C The selection unit selects two pulse voltage vectors corresponding to the selected pulse voltage vectors; the selection unit selects the pulse voltage vector U according to the sector where the rotor position of the motor is determined. A , U B and U CThe method comprises: determining the pulse voltage vector U from the pulse voltage vector U according to the determined sector where the rotor position of the motor belongs to in the three regions I, II and III. A , U B and U C Corresponding to the two pulse voltage vectors selected.
[0016] Optionally, the second applying unit applies a pulse voltage vector to the positive direction and the negative direction of the d-axis of the motor rotor, respectively, to determine the polarity of the motor rotor, including: when the pulse voltage vector is applied to the positive direction of the d-axis of the motor rotor, a response current I1 is generated, and when the pulse voltage vector is applied to the negative direction of the d-axis of the motor rotor, a response current I2 is generated; if I1>I2, the polarity of the motor rotor is determined to be an N pole, and if I2>I1, the polarity of the motor rotor is determined to be an S pole.
[0017] Optionally, the second determination unit determines the rotor position of the motor based on the determined motor rotor polarity and the calculated rotor position of the motor, including: if the motor rotor polarity is determined to be an N pole, then the rotor position of the motor is determined to be the calculated rotor position; if the motor rotor polarity is determined to be an N pole, then the rotor position of the motor is determined to be the calculated rotor position plus 180°.
[0018] Another aspect of the present invention provides a storage medium having a computer program stored thereon, wherein the program implements the steps of any of the aforementioned methods when executed by a processor.
[0019] Another aspect of the present invention provides a motor controller, comprising a processor, a memory, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of any of the aforementioned methods when executing the program.
[0020] In another aspect, the present invention provides a motor controller, comprising any of the above-mentioned rotor position detection devices.
[0021] In yet another aspect, the present invention provides a computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the steps of any of the aforementioned methods are implemented.
[0022] According to the technical solution of the present invention, the sector where the rotor position is located is first confirmed by injecting three voltage pulse vectors, and then the rotor position is recalculated according to the sector, and then the rotor is confirmed to be the N pole or S pole by injecting two pulse injection responses of the d-axis, thereby eliminating the influence of the response current on the magnetic saturation of the motor, and obtaining the precise rotor position, achieving higher-precision detection of the initial position of the motor rotor. The engineering implementation is simple, and the motor success rate and torque load capacity are greatly improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] The drawings described herein are used to provide a further understanding of the present invention and constitute a part of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the drawings: Figure 1 1 is a schematic diagram of an embodiment of a method for detecting the rotor position of a motor provided by the present invention; Figure 2 A permanent magnet synchronous motor model is shown; Figure 3 A schematic diagram showing a pulse voltage vector along the A, B, and C phase axes applied to the stator winding of the motor; Figure 4 A schematic diagram of the voltage pulse vector and the rotor spatial position area is shown; Figure 5 It is a structural block diagram of an embodiment of a rotor position detection device for a motor provided by the present invention. DETAILED DESCRIPTION
[0024] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the specific embodiments of the present invention and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.
[0025] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0026] The present invention provides a method for detecting the rotor position of a motor. The method can be used to detect the initial position of the rotor of a permanent magnet synchronous motor. The method is suitable for applications where the speed control of the permanent magnet synchronous motor needs to be achieved by a method without a position observer.
[0027] Figure 1It is a method schematic diagram of an embodiment of a method for detecting the rotor position of a motor provided by the present invention.
[0028] like Figure 1 As shown, according to one embodiment of the present invention, the rotor initial position detection method at least includes step S110, step S120, step S130, step S140, step S150 and step S160.
[0029] Step S110, when the rotor of the motor is stationary, applying three pulse voltage vectors U along the A, B, and C phase axes respectively to the stator winding of the motor. A , U B and U C .
[0030] Specifically, the pulse voltage vectors along the A, B, and C phase axes applied to the stator winding of the motor are U A , U B , U C , equal in amplitude and duration. Figure 3 The schematic diagram of the pulse voltage vectors along the A, B, and C phase axes applied to the stator winding of the motor is shown, U1, U2, and U3 (the present invention applies a total of 5 pulse voltage vectors, and in order to distinguish the 5 applied pulse voltage vectors, U1, U2, and U3 are used in the figure to represent the pulse voltage vectors along the A, B, and C phase axes, respectively. A , U B , U C ) represent the pulse voltage vectors U along the A, B, and C phase axes applied to the stator winding of the motor respectively. A , U B , U C .
[0031] Step S120, applying the pulse voltage vector U A , U B and U C The response current I A ,I B and I C , determine the sector where the rotor position of the motor is located.
[0032] The sectors are divided according to electrical angles. Specifically, 360° electrical angle is divided into N sectors. Figure 4 The voltage pulse vector and the rotor spatial position area are shown. Figure 4 As shown, in a specific implementation, the 360° electrical angle is divided into a region every 30°, which is divided into 12 sectors in total.
[0033] Specifically, the response current I A ,I Band I C The magnitude relationships of the response currents generated when the pulse voltage vectors along the A, B, and C phase axes are applied to the stator winding of the motor respectively correspond to the sectors where the rotor position is located. The stator winding of the motor is respectively applied with pulse voltage vectors U along the A, B, and C phase axes. A , U B , U C After that, the response current I A ,I B ,I C , according to the generated response current I A ,I B ,I C The sector where the rotor position is located can be determined based on the size relationship of the two.
[0034] In a specific implementation manner, the sector where the rotor position is located is determined based on the following:
[0035] Step S130, according to the determined sector where the rotor position of the motor is located, from the pulse voltage vector U A , U B and U C Select two pulse voltage vectors.
[0036] In order to accurately estimate the random initial position of the rotor, it is necessary to select a voltage vector as far away from the d axis as possible and measure and calculate its current response. A , U B and U C The N sectors are divided into three regions I, II and III according to the distance from the d-axis. It is predetermined that when the rotor position is in each of the three regions I, II and III, the pulse voltage vector U applied along the A, B and C phase axes is A , U B and U C The two pulse voltage vectors corresponding to the selected ones. Wherein, when the rotor position is in any of the three regions, the pulse voltage vector U applied along the A, B, C phase axis A , U B and U C The two pulse voltage vectors that are relatively far from the d-axis are selected as the voltage pulse vectors corresponding to the region. According to the determined region where the rotor position of the motor is located in the three regions I, II, and III, it can be determined that the pulse voltage vector U A , U B and UC The two pulse voltage vectors are selected in . For example, Figure 4 The schematic diagram of the voltage pulse vector and the rotor spatial position area is shown. The classification of the three areas I, II, and III can be referred to Figure 4 shown.
[0037] For example, the rotor position in region I corresponds to the use of U A , U B Vector, the rotor position in region II corresponds to the use of U B , U C Vector, the rotor position in region III corresponds to the use of U C , U A Vector, so that no matter where the rotor is, the calculation error caused by the d-axis saturation effect is minimized, the estimation accuracy is improved, and the voltage vector selection rules can be seen in Table 1 below. Table 1 shows the voltage vector selection rule table.
[0038] Table 1
[0039] When the rotor of the motor is initially in zone I, the pulse voltage vector U along the A and B phase axes is A , U B The distance from the d-axis relative to the pulse voltage vector U along the C-phase axis C The distance from the d-axis is relatively far, so if it is determined that the initial position of the rotor of the motor is in zone I, the A and B two-phase pulse voltage vectors U A , U B Calculate the rotor position of the motor; similarly, when the initial position of the rotor of the motor is in zone II, the pulse voltage vector U along the B and C phase axes B , U C The distance from the d-axis relative to the pulse voltage vector U along the A-phase axis A The distance from the d-axis is relatively far, so if it is determined that the initial position of the rotor of the motor is in zone II, the B and C two-phase pulse voltage vectors U B , U C Calculate the rotor position of the motor. When the initial rotor position of the motor is in zone III, the pulse voltage vector U along the C and A phase axes is C , U A The distance from the d-axis relative to the pulse voltage vector U along the B-phase axis B The distance from the d-axis is relatively far, so if it is determined that the initial position of the rotor of the motor is in zone III, the C and A two-phase pulse voltage vector U C , U A The rotor position of the motor is calculated.
[0040] Step S140, calculating the rotor position of the motor according to the two selected pulse voltage vectors to obtain the calculated rotor position of the motor.
[0041] Specifically, according to the selected two pulse voltage vectors and the response current generated when the selected two pulse voltage vectors are applied, the rotor position of the motor is calculated to obtain the calculated rotor position of the motor. Wherein, the response current is preferably the peak value of the response current generated when the selected two pulse voltage vectors are applied.
[0042] Figure 2 The permanent magnet synchronous motor model is shown in FIG. In a two-phase stationary coordinate system, the mathematical model of the permanent magnet synchronous motor can be expressed as: (1) (2) in, are the stator voltage and current vectors in the stationary coordinate system, is the stator resistance, D is the differential operator, , are the common mode and differential mode inductors respectively, is the electrical angle, is the rotor permanent magnet flux. For surface mounted permanent magnet synchronous motors, the inductance values of the AC and DC axes are similar, L1>>L2. When the motor is stationary, the back electromotive force is zero, and equation (1) can be simplified to the following form: (3) If two linearly independent voltage vectors are applied to the stator of a permanent magnet synchronous motor, two current responses can be obtained, thereby solving the inductance torque: (4) (5) The inductance matrix in the above formula contains the differential mode inductance component that changes according to the law of 2 times the rotor position. The rotor position can be obtained by the following formula: (6) Therefore, the two selected pulse voltage vectors and the corresponding response current are transformed according to the stationary coordinate system to obtain the stator voltage vector in the stationary coordinate system: , and current vector , , where a pulse voltage vector is converted to , , the corresponding response current is converted into , , another pulse current vector is converted to , , the corresponding response current is converted into , ; Substitute into formula (5) to get L 11 , L 12 , L 21 and L 22 , and then substitute it into formula (6) to calculate the rotor position angle of the motor .
[0043] When the rotor is stationary, a voltage vector with a constant amplitude is applied to the stator winding. Its essence is the zero-state response of the RL circuit. The mathematical model is shown in equation (7): The ratio of the average current change rate to the instantaneous current change rate is defined as the slope error coefficient Kc (t), that is, (7) (8) Where Kc(t) is the slope error coefficient, R is the motor stator phase resistance, i(t) is the motor stator current, and the product of the two is the voltage generated on the stator resistance; L is the motor stator inductance. If the detected current peak is used as the change in current response, the average current change rate is introduced and substituted into equation (5), the inductance matrix equation can be expressed as: (9) The rotor position can then be expressed as: (10) The two selected pulse voltage vectors and the corresponding response current are transformed according to the stationary coordinate system to obtain the stator voltage vector in the stationary coordinate system: , , , and current vector , , , Then, the rotor position angle of the motor can be calculated by substituting it into the above formula (10): .
[0044] The present invention first confirms the sector where the rotor position is located by injecting three voltage pulse vectors, and then calculates the rotor position according to the sector where it is located, so that the rotor position can be determined more accurately.
[0045] Step S150, applying a pulse voltage vector to the positive direction and the negative direction of the motor rotor d-axis respectively to determine the polarity of the motor rotor.
[0046] After calculating the rotor position of the motor and obtaining the rotor position angle θ, the rotor NS polarity cannot be distinguished, that is, θ may correspond to the N pole or the S pole, and the distinction of the rotor NS polarity requires the use of the magnetic circuit saturation effect. In order to make full use of the material, the motor is often designed to keep the magnetic circuit in a slightly saturated state. Therefore, applying a voltage to the positive direction of the motor rotor d-axis (i.e., the N pole) will cause the motor d-axis magnetic circuit to be oversaturated, and applying a voltage to the negative direction of the motor rotor d-axis (i.e., the S pole) will cause the motor d-axis magnetic circuit to be desaturated. The direct-axis inductance of the motor will decrease with the oversaturation of the d-axis magnetic circuit and increase with the desaturation of the d-axis magnetic circuit. When the d-axis is oversaturated, id will increase, and when it is desaturated, id will decrease. Therefore, two sets of pulse voltage vectors for magnetization and demagnetization along the d-axis direction are applied, and the NS pole of the rotor can be determined according to the magnitude of the response current. Figure 3 FIG. 2 shows a schematic diagram of applying a pulse voltage vector to the positive direction and the negative direction of the motor rotor d axis respectively. Figure 3 As shown, voltage U4 is applied to the positive direction of the motor rotor d-axis (ie, the N pole), and voltage U5 is applied to the negative direction of the motor rotor d-axis (ie, the S pole).
[0047] Specifically, a pulse voltage vector is applied to the positive direction and the negative direction of the motor rotor d-axis respectively, and the polarity of the motor rotor is determined according to the magnitude of the generated response current. When a pulse voltage vector is applied to the positive direction of the motor rotor d-axis, a response current I1 is generated, and when a pulse voltage vector is applied to the negative direction of the motor rotor d-axis, a response current I2 is generated. If I1>I2, the polarity of the motor rotor is determined to be the N pole, and if I2>I1, the polarity of the motor rotor is determined to be the S pole. The amplitude and duration of the pulse voltage vector applied to the positive direction and the negative direction of the motor rotor d-axis are equal.
[0048] Step S160, determining the rotor position of the motor according to the determined motor rotor polarity and the calculated rotor position of the motor.
[0049] Specifically, if the motor rotor polarity is determined to be N pole, the motor rotor position is determined to be the calculated rotor position, and if the motor rotor polarity is determined to be N pole, the motor rotor position is determined to be the calculated rotor position plus 180°. In other words, if the rotor polarity is N pole, the previously calculated rotor position is the actual rotor position, and if the rotor polarity is S pole, the previously calculated rotor position plus 180° is the actual rotor position.
[0050] The present invention determines the actual rotor position by judging the rotor polarity, can eliminate the influence of the response current on the magnetic saturation of the motor, and achieve higher-precision detection of the initial position of the motor rotor.
[0051] The present invention also provides a motor rotor position detection device. The device can be used to detect the initial position of the rotor of the permanent magnet synchronous motor. The device is suitable for applications where the speed control of the permanent magnet synchronous motor needs to be achieved by a method without a position observer.
[0052] Figure 5 FIG. 1 is a structural block diagram of an embodiment of a motor rotor position detection device provided by the present invention. Figure 5 As shown, the rotor position detection device 100 includes: a first applying unit 110 , a first determining unit 120 , a selecting unit 130 , a calculating unit 140 , a second applying unit 150 , and a second determining unit 160 .
[0053] The first applying unit 110 is used to apply three pulse voltage vectors U along the A, B, and C phase axes respectively to the stator winding of the motor when the rotor of the motor is stationary. A , U B and U C .
[0054] Specifically, the pulse voltage vectors along the A, B, and C phase axes applied to the stator winding of the motor are U A , U B , U C , equal in amplitude and duration. Figure 3 The schematic diagram of the pulse voltage vectors along the A, B, and C phase axes applied to the stator winding of the motor is shown, U1, U2, and U3 (the present invention applies a total of 5 pulse voltage vectors, and in order to distinguish the 5 applied pulse voltage vectors, U1, U2, and U3 are used in the figure to represent the pulse voltage vectors along the A, B, and C phase axes, respectively. A , U B , U C ) represent the pulse voltage vectors U along the A, B, and C phase axes applied to the stator winding of the motor respectively. A , U B , U C .
[0055] The first determining unit 120 is used to apply the pulse voltage vector U according to the first applying unit A , U B and U C The response current I A ,I B and I C , determine the sector where the rotor position of the motor is located.
[0056] The sectors are divided according to electrical angles. Specifically, 360° electrical angle is divided into N sectors. Figure 4 The voltage pulse vector and the rotor spatial position area are shown. Figure 4 As shown, in a specific implementation, the 360° electrical angle is divided into a region every 30°, which is divided into 12 sectors in total.
[0057] Specifically, the response current I A ,I B and I C The magnitude relationships of the response currents generated when the pulse voltage vectors along the A, B, and C phase axes are applied to the stator winding of the motor respectively correspond to the sectors where the rotor position is located. The stator winding of the motor is respectively applied with pulse voltage vectors U along the A, B, and C phase axes. A , U B , U C After that, the response current I A ,I B ,I C , according to the generated response current I A ,I B ,I C The sector where the rotor position is located can be determined based on the size relationship of the two.
[0058] In a specific implementation manner, the sector where the rotor position is located is determined based on the following:
[0059] A selection unit 130 is configured to select a pulse voltage vector U according to the sector where the rotor position of the motor is located determined by the first determination unit. A , U B and U C Select two pulse voltage vectors.
[0060] In order to accurately estimate the random initial position of the rotor, it is necessary to select a voltage vector as far away from the d axis as possible and measure and calculate its current response. Optionally, the device 100 further includes: a classification unit (not shown), which is used to classify the pulse voltage vector U applied along the A, B, and C phase axes according to the rotor position in different sectors. A , U B and U C The sectors are classified into three regions I, II and III according to the distance from the d-axis; a third determining unit (not shown) is used to predetermine when the rotor position is in each of the three regions I, II and III, from the pulse voltage vector U applied along the A, B and C phase axes A , U B and U CThe selection unit 130 determines the pulse voltage vector U from the pulse voltage vector U according to the region where the rotor position of the motor belongs to in the three regions I, II and III. A , U B and U C Corresponding to the two pulse voltage vectors selected.
[0061] Specifically, when the rotor position is in different sectors, the pulse voltage vector U along the A, B, and C phase axes is predetermined. A , U B and U C The N sectors are divided into three regions I, II and III according to the distance from the d-axis. It is predetermined that when the rotor position is in each of the three regions I, II and III, the pulse voltage vector U applied along the A, B and C phase axes is A , U B and U C The two pulse voltage vectors corresponding to the selected ones. Wherein, when the rotor position is in any of the three regions, the pulse voltage vector U applied along the A, B, C phase axis A , U B and U C The two pulse voltage vectors that are relatively far from the d-axis are selected as the voltage pulse vectors corresponding to the region. According to the determined region where the rotor position of the motor is located in the three regions I, II, and III, it can be determined that the pulse voltage vector U A , U B and U C The two pulse voltage vectors are selected in . For example, Figure 4 The schematic diagram of the voltage pulse vector and the rotor spatial position area is shown. The classification of the three areas I, II, and III can be referred to Figure 4 shown.
[0062] For example, the rotor position in region I corresponds to the use of U A , U B Vector, the rotor position in region II corresponds to the use of U B , U C Vector, the rotor position in region III corresponds to the use of U C , U A Vector, so that no matter where the rotor is, the calculation error caused by the d-axis saturation effect is minimized, the estimation accuracy is improved, and the voltage vector selection rules can be seen in Table 1 below. Table 1 shows the voltage vector selection rule table.
[0063] Table 1
[0064] When the rotor of the motor is initially in zone I, the pulse voltage vector U along the A and B phase axes is A , U B The distance from the d-axis relative to the pulse voltage vector U along the C-phase axis C The distance from the d-axis is relatively far, so if it is determined that the initial position of the rotor of the motor is in zone I, the A and B two-phase pulse voltage vectors U A , U B Calculate the rotor position of the motor; similarly, when the initial position of the rotor of the motor is in zone II, the pulse voltage vector U along the B and C phase axes B , U C The distance from the d-axis relative to the pulse voltage vector U along the A-phase axis A The distance from the d-axis is relatively far, so if it is determined that the initial position of the rotor of the motor is in zone II, the B and C two-phase pulse voltage vectors U B , U C Calculate the rotor position of the motor. When the initial rotor position of the motor is in zone III, the pulse voltage vector U along the C and A phase axes is C , U A The distance from the d-axis relative to the pulse voltage vector U along the B-phase axis B The distance from the d-axis is relatively far, so if it is determined that the initial position of the rotor of the motor is in zone III, the C and A two-phase pulse voltage vector U C , U A The rotor position of the motor is calculated.
[0065] The calculation unit 140 is used by the user to calculate the rotor position of the motor according to the two pulse voltage vectors selected by the selection unit to obtain the calculated rotor position of the motor.
[0066] Specifically, according to the selected two pulse voltage vectors and the response current generated when the selected two pulse voltage vectors are applied, the rotor position of the motor is calculated to obtain the calculated rotor position of the motor. Wherein, the response current is preferably the peak value of the response current generated when the selected two pulse voltage vectors are applied.
[0067] Figure 2 The permanent magnet synchronous motor model is shown in FIG. In a two-phase stationary coordinate system, the mathematical model of the permanent magnet synchronous motor can be expressed as: (1) (2) in, are the stator voltage and current vectors in the stationary coordinate system, is the stator resistance, D is the differential operator, , are the common mode and differential mode inductors respectively, is the electrical angle, is the rotor permanent magnet flux. For surface mounted permanent magnet synchronous motors, the inductance values of the AC and DC axes are similar, L1>>L2. When the motor is stationary, the back electromotive force is zero, and equation (1) can be simplified to the following form: (3) If two linearly independent voltage vectors are applied to the stator of a permanent magnet synchronous motor, two current responses can be obtained, thereby solving the inductance torque: (4) (5) The inductance matrix in the above formula contains the differential mode inductance component that changes according to the law of 2 times the rotor position. The rotor position can be obtained by the following formula: (6) Therefore, the two selected pulse voltage vectors and the corresponding response current are transformed according to the stationary coordinate system to obtain the stator voltage vector in the stationary coordinate system: , and current vector , , where a pulse voltage vector is converted to , , the corresponding response current is converted into , , another pulse current vector is converted to , , the corresponding response current is converted into , ; Substitute into formula (5) to get L 11 , L 12 , L 21 and L 22 , and then substitute it into formula (6) to calculate the rotor position angle of the motor .
[0068] When the rotor is stationary, a voltage vector with a constant amplitude is applied to the stator winding. Its essence is the zero-state response of the RL circuit. The mathematical model is shown in equation (7): The ratio of the average current change rate to the instantaneous current change rate is defined as the slope error coefficient Kc (t), that is, (7) (8) Where Kc(t) is the slope error coefficient, R is the motor stator phase resistance, i(t) is the motor stator current, and the product of the two is the voltage generated on the stator resistance; L is the motor stator inductance. If the detected current peak is used as the change in current response, the average current change rate is introduced and substituted into equation (5), the inductance matrix equation can be expressed as: (9) The rotor position can then be expressed as: (10) The two selected pulse voltage vectors and the corresponding response current are transformed according to the stationary coordinate system to obtain the stator voltage vector in the stationary coordinate system: , , , and current vector , , , Then, the rotor position angle of the motor can be calculated by substituting it into the above formula (10): .
[0069] The present invention first confirms the sector where the rotor position is located by injecting three voltage pulse vectors, and then calculates the rotor position according to the sector where it is located, so that the rotor position can be determined more accurately.
[0070] The second applying unit 150 is used to apply a pulse voltage vector to the positive direction and the negative direction of the motor rotor d-axis respectively to determine the polarity of the motor rotor.
[0071] After calculating the rotor position of the motor and obtaining the rotor position angle θ, the rotor NS polarity cannot be distinguished, that is, θ may correspond to the N pole or the S pole, and the distinction of the rotor NS polarity requires the use of the magnetic circuit saturation effect. In order to make full use of the material, the motor is often designed to keep the magnetic circuit in a slightly saturated state. Therefore, applying a voltage to the positive direction of the motor rotor d-axis (i.e., the N pole) will cause the motor d-axis magnetic circuit to be oversaturated, and applying a voltage to the negative direction of the motor rotor d-axis (i.e., the S pole) will cause the motor d-axis magnetic circuit to be desaturated. The direct-axis inductance of the motor will decrease with the oversaturation of the d-axis magnetic circuit and increase with the desaturation of the d-axis magnetic circuit. When the d-axis is oversaturated, id will increase, and when it is desaturated, id will decrease. Therefore, two sets of pulse voltage vectors for magnetization and demagnetization along the d-axis direction are applied, and the NS pole of the rotor can be determined according to the magnitude of the response current. Figure 3 FIG. 2 shows a schematic diagram of applying a pulse voltage vector to the positive direction and the negative direction of the motor rotor d axis respectively. Figure 3As shown, voltage U4 is applied to the positive direction of the motor rotor d-axis (ie, the N pole), and voltage U5 is applied to the negative direction of the motor rotor d-axis (ie, the S pole).
[0072] Specifically, a pulse voltage vector is applied to the positive direction and the negative direction of the motor rotor d-axis respectively, and the polarity of the motor rotor is determined according to the magnitude of the generated response current. When a pulse voltage vector is applied to the positive direction of the motor rotor d-axis, a response current I1 is generated, and when a pulse voltage vector is applied to the negative direction of the motor rotor d-axis, a response current I2 is generated. If I1>I2, the polarity of the motor rotor is determined to be the N pole, and if I2>I1, the polarity of the motor rotor is determined to be the S pole. The amplitude and duration of the pulse voltage vector applied to the positive direction and the negative direction of the motor rotor d-axis are equal.
[0073] The second determining unit 160 determines the rotor position of the motor according to the motor rotor polarity determined by the second application and the calculated rotor position of the motor.
[0074] Specifically, if the motor rotor polarity is determined to be N pole, the motor rotor position is determined to be the calculated rotor position, and if the motor rotor polarity is determined to be N pole, the motor rotor position is determined to be the calculated rotor position plus 180°. In other words, if the rotor polarity is N pole, the previously calculated rotor position is the actual rotor position, and if the rotor polarity is S pole, the previously calculated rotor position plus 180° is the actual rotor position.
[0075] The present invention determines the actual rotor position by judging the rotor polarity, can eliminate the influence of the response current on the magnetic saturation of the motor, and achieve higher-precision detection of the initial position of the motor rotor.
[0076] The present invention also provides a motor rotor position detection device. The device can be used to detect the initial position of the rotor of the permanent magnet synchronous motor. The device is suitable for applications where the speed control of the permanent magnet synchronous motor needs to be achieved by a method without a position observer.
[0077] The present invention also provides a storage medium corresponding to the rotor position detection method, on which a computer program is stored. When the computer program is executed by a processor, the steps of any of the above methods are implemented.
[0078] The present invention also provides a motor controller corresponding to the rotor position detection method, comprising a processor, a memory, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of any of the aforementioned methods when executing the computer program.
[0079] The present invention also provides a motor controller corresponding to the rotor position detection device, comprising any of the above-mentioned rotor position detection devices.
[0080] The present invention also provides a computer program product corresponding to the rotor position detection method, comprising a computer program, and when the computer program is executed by a processor, the steps of any of the aforementioned methods are implemented.
[0081] Based on this, the solution provided by the present invention first confirms the sector where the rotor position is located by injecting three voltage pulse vectors, and then recalculates the rotor position according to the sector, eliminating the influence of the response current on the magnetic saturation of the motor, and achieving more accurate detection of the initial position of the motor rotor. The engineering implementation is simple and greatly improves the motor success rate and torque load capacity.
[0082] The solution provided by the present invention can achieve higher-precision acquisition of the rotor initial position without significantly increasing the number of pulse voltage injections and the amount of calculation, which can greatly improve the motor starting success rate and torque load capacity, and the engineering implementation is relatively simple.
[0083] The functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored as one or more instructions or codes on a computer-readable medium or transmitted via a computer-readable medium. Other examples and implementations are within the scope and spirit of the present invention and the appended claims. For example, due to the nature of software, the functions described above may be implemented using software executed by a processor, hardware, firmware, hard wiring, or a combination of any of these. In addition, each functional unit may be integrated into a processing unit, each unit may exist physically separately, or two or more units may be integrated into one unit.
[0084] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only schematic. For example, the division of the units can be a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.
[0085] The units described as separate components may or may not be physically separated, and the components of the control device may or may not be physical units, that is, they may be located in one place or distributed in multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0086] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the relevant technology or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or optical disk and other media that can store program codes.
[0087] The above description is only an embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent substitution, improvement, etc. made within the spirit and principle of the present invention shall be included in the scope of the claims of the present invention.
Claims
1. A method for detecting the rotor position of a motor, It is characterized in that include: When the rotor of the motor is stationary, three pulse voltage vectors U are applied to the stator winding of the motor respectively along the A, B, and C phase axes. A , U B and U C ; According to the pulse voltage vector U A , U B and U C The response current I A ,I B and I C , determining the sector where the rotor position of the motor is located; the sector is divided according to the electrical angle; According to the determined sector where the rotor position of the motor is located, the pulse voltage vector U A , U B and U C Select two pulse voltage vectors; Calculating the rotor position of the motor according to the two selected pulse voltage vectors to obtain the calculated rotor position of the motor; Applying pulse voltage vectors to the positive direction and negative direction of the motor rotor d-axis respectively to determine the polarity of the motor rotor; Determining a rotor position of the motor based on the determined motor rotor polarity and the calculated rotor position of the motor; According to the determined sector where the rotor position of the motor is located, the pulse voltage vector U A , U B and U C Two pulse voltage vectors are selected, including: When the rotor position is in different sectors, the pulse voltage vector U along the A, B, and C phase axes is predetermined. A , U B and U C The N sectors are divided into three areas according to the distance from the d-axis; When the rotor position is in any of the three regions, the pulse voltage vector U applied along the A, B, and C phase axes is A , U B and U C The two pulse voltage vectors which are relatively far from the d-axis are selected as the voltage pulse vectors corresponding to the region; According to the determined area where the rotor position of the motor is located in the three areas, it is determined that the pulse voltage vector U A , U B and U C Corresponding to the two pulse voltage vectors selected.
2. The method according to claim 1, It is characterized in that Apply three pulse voltage vectors U along the A, B, and C phase axes respectively to the stator winding of the motor. A , U B and U C , equal in amplitude and duration.
3. The method according to claim 1, It is characterized in that According to the pulse voltage vector U A , U B and U C The response current I A ,I B and I C , determining the sector where the rotor position of the motor is located, comprising: According to the response current I A ,I B and I C The magnitude relationship is used to determine the sector where the rotor position of the motor is located, wherein the response current I A ,I B and I C The different size relationships correspond to different sectors where the rotor position of the motor is located.
4. The method according to any one of claims 1 to 3, It is characterized in that Applying pulse voltage vectors to the positive direction and negative direction of the motor rotor d-axis respectively to determine the polarity of the motor rotor, including: When a pulse voltage vector is applied to the positive direction of the d-axis of the motor rotor, a response current I1 is generated, and when a pulse voltage vector is applied to the negative direction of the d-axis of the motor rotor, a response current I2 is generated; if I1>I2, the polarity of the motor rotor is determined to be the N pole, and if I2>I1, the polarity of the motor rotor is determined to be the S pole.
5. The method according to any one of claims 1 to 3, It is characterized in that Determining the rotor position of the motor according to the determined motor rotor polarity and the calculated rotor position of the motor includes: If it is determined that the motor rotor polarity is N pole, the rotor position of the motor is determined to be the calculated rotor position; if it is determined that the motor rotor polarity is N pole, the rotor position of the motor is determined to be the calculated rotor position plus 180°.
6. A rotor position detection device for a motor, It is characterized in that include: The first applying unit is used to apply three pulse voltage vectors U along the A, B, and C phase axes to the stator winding of the motor when the rotor of the motor is stationary. A , U B and U C ; a first determining unit, configured to apply the pulse voltage vector U according to the first applying unit; A , U B and U C The response current I A ,I B and I C , determining the sector where the rotor position of the motor is located; the sector is divided according to the electrical angle; A selection unit is used to select a pulse voltage vector U according to the sector where the rotor position of the motor is located determined by the first determination unit. A , U B and U C Select two pulse voltage vectors; A calculation unit, wherein a user calculates the rotor position of the motor according to the two pulse voltage vectors selected by the selection unit to obtain a calculated rotor position of the motor; A second applying unit is used to apply a pulse voltage vector to the positive direction and the negative direction of the motor rotor d-axis respectively to determine the polarity of the motor rotor; a second determining unit, determining a rotor position of the motor according to the motor rotor polarity determined by the second application and the calculated rotor position of the motor; The selecting unit selects the pulse voltage vector U according to the sector where the rotor position of the motor is located determined by the first determining unit. A , U B and U C Two pulse voltage vectors are selected, including: When the rotor position is in different sectors, the pulse voltage vector U along the A, B, and C phase axes is predetermined. A , U B and U C The N sectors are divided into three areas according to the distance from the d-axis; When the rotor position is in any of the three regions, the pulse voltage vector U applied along the A, B, and C phase axes is A , U B and U C The two pulse voltage vectors which are relatively far from the d-axis are selected as the voltage pulse vectors corresponding to the region; According to the determined area where the rotor position of the motor is located in the three areas, it is determined that the pulse voltage vector U A , U B and U C Corresponding to the two pulse voltage vectors selected.
7. A storage medium, It is characterized in that A computer program is stored thereon, and when the program is executed by a processor, the steps of any method described in claims 1-5 are implemented.
8. A motor controller, It is characterized in that It comprises a processor, a memory and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the steps of the method described in any one of claims 1 to 5 are implemented, and the rotor position detection device described in any one of claim 6 is included.
9. A computer program product, It is characterized in that The invention comprises a computer program, which implements the steps of any one of the methods of claims 1 to 5 when executed by a processor.
Citation Information
Patent Citations
Method for estimating initial position of three-time air-gap magnetic field high-content five-phase permanent magnet motor rotor
CN112713837A
Permanent magnet synchronous motor static initial position estimation method and stator inductance identification method
CN114567222A
