Method and device for detecting initial position of rotor of permanent magnet synchronous motor in no-load environment
11677342 · 2023-06-13
Assignee
Inventors
- Geun Ho Lee (Seongnam-si, KR)
- Dong Gil Kang (Seoul, KR)
- Soon Ho Kwon (Ansan-si, KR)
- Ji Hwan Park (Seoul, KR)
- Joon Ik Uhm (Guri-si, KR)
- Hee Sun Lim (Seoul, KR)
- Jung Jun Kim (Seoul, KR)
Cpc classification
H02P2207/05
ELECTRICITY
H02P2203/09
ELECTRICITY
International classification
Abstract
A method for detecting an initial position of a rotor of a permanent magnet synchronous motor in a no-load environment can comprise the steps of: estimating a temporary initial position α′ by means of aligning a d axis; measuring a first voltage command which is output by performing velocity control within predetermined velocity ranges with respect to the forward direction of a motor on the basis of the temporary initial position α′; measuring a second voltage command which is output by performing velocity control within the predetermined velocity range with respect to the reverse direction of the motor on the basis of the temporary initial position α′; calculating respective variations of the first voltage command and second voltage command, and calculating a compensation angle α″; and calculating an initial position α of the rotor on the basis of the sum of the temporary initial position α′ and compensation angle α″.
Claims
1. A method of detecting an initial position of a rotor of a permanent magnet synchronous motor (PMSM) in a no-load environment, the method comprising: fixing a temporary rotor position of a motor to 0 degrees; applying current to an axis of the motor; driving the motor at a predetermined frequency; determining whether a current rotor position of the motor is between zero and a predetermined value; when the current rotor position of the motor is determined to not be between zero and the predetermined value, determining a frequency for driving the motor to be lower than the predetermined frequency, driving the motor at the frequency for driving the motor, and re-determining whether a current rotor position of the motor is between zero and the predetermined value; and when a current rotor position of the motor is between zero and the predetermined value; fixing again a current rotor position to 0 degrees; estimating a temporary initial position, which is an error between a position sensor and the rotor, based on an output value of the position sensor provided to the motor; measuring a first voltage command output by performing speed control within a predetermined speed range based on a forward direction of a motor based on the temporary initial position, measuring a second voltage command output by performing speed control within the predetermined speed range based on a reverse direction of the motor based on the temporary initial position, calculating a variation of each of the first voltage command and the second voltage command according to the speed control and calculating a compensation angle for the temporary initial position based on the variation; and calculating an initial position of the rotor based on a sum of the temporary initial position and the compensation angle wherein the first voltage command includes a d-axis component and a q-axis component that are measured at a predetermined speed interval within the predetermined speed range, and the second voltage command includes a d-axis component and a q-axis component that are measured at a predetermined speed interval within the predetermined speed range.
2. The method of claim 1, wherein the calculating of the compensation angle for the temporary initial position comprises calculating the variation by cancelling a voltage error component and a voltage drop component of each of the first voltage command and the second voltage command.
3. The method of claim 1, wherein the compensation angle is calculated based on a difference between a variation of the d-axis component of the first voltage command and a variation of the d-axis component of the second voltage command and a difference between a variation of the q-axis component of the first voltage command and a variation of the q-axis on component of the second voltage command.
4. An electronic device comprising: a memory configured to store at least one instruction; and at least one processor configured to execute the at least one instruction stored in the memory, wherein the processor executes the at least one instruction to: fix a temporary rotor position of a motor to 0 degrees; apply current to an axis of the motor; drive the motor at a predetermined frequency; determine whether a current rotor position of the motor is between zero and a predetermined value; when the current rotor position of the motor is determined to not be between zero and the predetermined value: determine a frequency for driving the motor to be lower than the predetermined frequency, drive the motor at the frequency for driving the motor, and re-determine whether a current rotor position of the motor is between zero and the predetermined value; and when a current rotor position of the motor is between zero and the predetermined value; fix again a current rotor position to 0 degrees; estimate a temporary initial position, which is an error between a position sensor and the rotor, based on an output value of the position sensor provided to the motor; measure a first voltage command output by performing speed control within a predetermined speed range based on a forward direction of a motor based on the temporary initial position, measure a second voltage command output by performing speed control within the predetermined speed range based on a reverse direction of the motor based on the temporary initial position, calculate a variation of each of the first voltage command and the second voltage command according to the speed control and calculate a compensation angle for the temporary initial position based on the variation, and calculate an initial position of the rotor based on a sum of the temporary initial position and the compensation angle, wherein the first voltage command includes a d-axis component and a q-axis component that are measured at a predetermined speed interval within the predetermined speed range, and the second voltage command includes a d-axis component and a q-axis component that are measured at a predetermined speed interval within the predetermined speed range.
5. The electronic device of claim 4, wherein the processor executes the at least one instruction to calculate the variation by cancelling a voltage error component and a voltage drop component of each of the first voltage command and the second voltage command.
6. The electronic device of claim 4, wherein the compensation angle is calculated based on a difference between a variation of the d-axis component of the first voltage command and a variation of the d-axis component of the second voltage command and a difference between a variation of the q-axis component of the first voltage command and a variation of the q-axis component of the second voltage command.
7. A non-transitory computer readable medium comprising computer-executable instructions that, when executed by a processor, cause the processor to: fix a temporary rotor position of a motor to 0 degrees; apply current to an axis of the motor; drive the motor at a predetermined frequency; determine whether a current rotor position of the motor is between zero and a predetermined value; when the current rotor position of the motor is determined to not be between zero and the predetermined value: determine a frequency for driving the motor to be lower than the predetermined frequency, drive the motor at the frequency for driving the motor, and re-determine whether a current rotor position of the motor is between zero and the predetermined value; and when a current rotor position of the motor is between zero and the predetermined value: fix again a current rotor position to 0 degrees; estimate a temporary initial position, which is an error between a position sensor and the rotor, based on an output value of the position sensor provided to the motor; measure a first voltage command output by performing speed control within a predetermined speed range based on a forward direction of a motor based on the temporary initial position, measure a second voltage command output by performing speed control within the predetermined speed range based on a reverse direction of the motor based on the temporary initial position, calculate a variation of each of the first voltage command and the second voltage command according to the speed control and calculate a compensation angle for the temporary initial position based on the variation, and calculate an initial position of the rotor based on a sum of the temporary initial position and the compensation angle, wherein the first voltage command includes a d-axis component and a q-axis component that are measured at a predetermined speed interval within the predetermined speed range, and the second voltage command includes a d-axis component and a q-axis component that are measured at a predetermined speed interval within the predetermined speed range.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
DETAILED DESCRIPTION
(6) Terms used herein are briefly described and the present invention is described in detail.
(7) Although the terms used herein use currently widely used general terms as possible that are selected into consideration of functions in the present invention, they may vary depending on the intent or precedent of one of ordinary skill in the art, the emergence of new technology, and the like. In addition, in a specific case, there is a term arbitrarily selected by the applicant. In this case, the meaning thereof will be described in detail in a corresponding description portion of the invention. Therefore, the term used herein should be defined based on the meaning of the term and the overall content of the present invention rather than a simple name of the term.
(8) When it is described in the overall specification that a portion “comprises/includes” a predetermined component, it represents that the portion may further include another component rather than excluding the other component unless clearly stated otherwise.
(9) Also, a term, such as “processor” described herein, may represent a unit for processing at least one function or operation, which may be implemented as hardware or a combination of hardware and software.
(10) In the following, example embodiments are described in detail with reference to the accompanying drawings such that one of ordinary skill in the art to which the present invention pertains may easily carry out the example embodiments. However, the present invention may be implemented in various different forms and is not limited to the example embodiments. To clearly explain the present invention, a portion irrelevant to the description is omitted in the drawings and like reference numerals refer to like elements throughout the present specification.
(11) Hereinafter, the present invention is described in detail with reference to the accompanying drawings.
(12)
(13) Referring to
(14) In operation S10 of estimating the temporary initial position α′ according to the example embodiment, a d-axis alignment method after I/F driving is used for smooth speed control. Here, the d-axis alignment method after I/F driving refers to a method that determines a difference between output values of a position sensor and the rotor aligned by driving the motor while applying d-axis current and changing a frequency.
(15) Referring to
(16) As described above, in the case of using the aforementioned d-axis alignment method after I/F driving in estimating the temporary initial position α′, it is possible to reduce a d-axis alignment error occurring due to characteristics that are present differently for each motor, such as a cogging torque and inertia, which differs from a simple d-axis alignment method.
(17) When controlling a speed of the motor by applying the estimated temporary initial position α′ according to an example embodiment, a voltage equation is represented as the following Equation 1. Here, a q-axis current component present in Equation 1 refers to a component by a minimum torque required for no-load driving by inertia, friction, and the like, and has a very small value.
V.sub.d=−ωϕ.sub.f sin α″−i.sub.qω(L.sub.1+L.sub.2 cos 2α″)
V.sub.q=ωϕ.sub.f cos α″+i.sub.q(R.sub.s−L.sub.2ω sin 2α″) [Equation 1]
(18) In Equation 1, V.sub.d denotes a d-axis voltage command, V.sub.q denotes a q-axis voltage command, ω denotes a motor rotor speed, φ.sub.f denotes a magnetic flux by a permanent magnet, L.sub.1 and L.sub.2 denote inductance constants, R.sub.s denotes a stator resistance, i.sub.q denotes q-axis current, and α″ denotes a compensation angle.
(19) In addition to components of the voltage equation of Equation 1, a voltage drop component of a switching element occurring when the q-axis current flows and a voltage error component by a dead time needs to be considered. If q-axis current of i.sub.q.sup.+ flows through forward driving at a speed of ω.sup.+ in operations S21 and S31 of measuring the first voltage command, the voltage equation is derived as shown in the following Equation 2.
V.sub.d.sup.+=−ω.sup.+Φ.sub.f sin α″−i.sub.q.sup.+ω.sup.+(L.sub.1+L.sub.2 cos 2α″)+V.sub.r-d+V.sub.dead-d
V.sub.q.sup.+=ω.sup.+Φ.sub.f cos α″+i.sub.q.sup.+(R.sub.s−L.sub.2ω+sin 2α″)+V.sub.r-q+V.sub.dead-q [Equation 2]
(20) In Equation 2, V.sub.r denotes the voltage drop component by the switching element and V.sub.dead denotes the voltage error component by the dead time. In detail, V.sub.dead denotes the voltage error component caused by the dead time that is a forcibly injected time such that two switches, upper and lower switches, may remain off between an on-timing and an off-timing of the upper and lower switches.
(21) Forward driving is performed at a speed with intervals of ω.sup.++Δω, ω.sup.++2Δω, . . . , by considering the voltage equation of Equation 2 and the voltage command is measured. For example, when performing measurement within the range of 500 rpm to 700 rpm, it is the same as measuring at intervals of 50 rpm, such as 500 rpm, 550 rpm, . . . 700 rpm.
(22) In contrast, if q-axis current of i.sub.q.sup.− flows when reverse driving at the speed of ω.sup.− in operations S22 and S32 of measuring the second voltage command, the voltage equation is expressed as the following Equation 3. Similar to the forward driving case, reverse driving is performed at a speed with intervals of ω.sup.−−Δω, ω.sup.−−2Δω, . . . , and the voltage command is measured. For example, when performing measurement within the range of −500 rpm to −700 rpm, it is the same as measuring at intervals of 50 rpm, such as −500 rpm, −550 rpm, . . . −700 rpm.
V.sub.d.sup.−=−ω.sup.−ϕ.sub.f sin α″−i.sub.q″ω″(L.sub.1+L.sub.2 cos 2α″)−V.sub.r-d−V.sub.dead-d
V.sub.q.sup.+=ω.sup.+ϕf cos α″+i.sub.q.sup.+(R.sub.s−L.sub.2ω.sup.+ sin 2α″)+V.sub.r-q+V.sub.dead-q [Equation 3]
(23) To cancel the voltage error component by the dead time and the voltage drop component by the switching element, a variation of the d-axis voltage command may be arranged as an equation for Δω based on a difference between voltage equations for the d-axis voltage command measured at different speeds, which is expressed as the following Equation 4.
ΔV.sub.d.sup.+=−Δω.sup.+Φ.sub.f sin α″−Δi.sub.q.sup.+Δω.sup.+(L.sub.1+L.sub.2 cos 2α″) [Equation 4]
(24) In general, it may be assumed that variation Δi.sub.q of q-axis current required for acceleration by very small Δω under no-load driving condition is negligible. Therefore, the error component by the dead time and the voltage drop component by the switching element may be assumed to be the same regardless of the speed. Therefore, as shown in Equation 4, when a voltage difference at different speeds is acquired, it may be all cancelled and a voltage variation equation of Equation 4 may be derived.
(25) If all voltage equations for the remaining voltage commands are arranged in the same manner as in Equation 4, a voltage equation of Equation 5 may be derived in operations S41 and S42 of calculating variations of the respective voltage commands.
ΔV.sub.d.sup.+=−Δω.sup.+Φ.sub.f sin α″−Δi.sub.q.sup.+Δω.sup.+(L.sub.1+L.sub.2 cos 2α″)
ΔV.sub.q.sup.+=−Δω.sup.+Φ.sub.f cos α″−Δi.sub.q.sup.+(R.sub.s−L.sub.2Δω.sup.+ sin 2α″)
ΔV.sub.d.sup.−=−Δω.sup.−Φ.sub.f sin α″−Δi.sub.q.sup.−Δω.sup.−(L.sub.1+L.sub.2 cos 2α″)
ΔV.sub.q.sup.−=Δω.sup.−Φ.sub.f cos α″+Δi.sub.q.sup.−(R.sub.s−L.sub.2Δω.sup.− sin 2α″) [Equation 5]
(26) If ΔV.sub.d.sup.+−ΔV.sub.d.sup.− and ΔV.sub.q.sup.+−ΔV.sub.q.sup.− are acquired through Equation 5, they may be represented as in Equation 6. Here, since it is assumed that Δi.sub.q is negligibly small, it is canceled in a process of deriving Equation 6.
ΔV.sub.d.sup.+−ΔV.sub.d.sup.−=−2ΔωΦ.sub.f sin α″
ΔV.sub.q.sup.+−ΔV.sub.q.sup.−=2ΔωΦ.sub.f cos α″ [Equation 6]
(27) The compensation angle α″ for the initial position according to Equation 6 in operation S50 of calculating the compensation angle α″ may be derived as in Equation 7.
(28)
(29) That is, the compensation angle α″ according to an example embodiment may be calculated according to Equation 7 based on a difference between a variation of the d-axis component V.sub.d.sup.+ of the first voltage command and a variation of the d-axis component V.sub.d.sup.− of the second voltage command and a difference between a variation of the q-axis component V.sub.q.sup.+ of the first voltage command and a variation of the q-axis component V.sub.q.sup.− of the second voltage command.
(30) Once the temporary initial position α′ and the compensation angle α″ are determined through the aforementioned process, the final initial position α of the rotor may be calculated through a sum of the temporary initial position α′ and the compensation angle α″ as shown in the following Equation 8, in operation S60 of determining the initial position α of the rotor.
α=α′+α″ [Equation 8]
(31) Through this operation process, it is possible to accurately and precisely detect and determine the initial position of the rotor under a no-load environment condition without a separate dynamo system. Also, since the operation process is simpler than the existing widely used high frequency injection method, it is possible to reduce an amount of time used to determine the initial position of the rotor.
(32)
(33) According to an example embodiment, d-axis and q-axis voltages generated when driving the motor at two speed points during forward (second quadrant) driving and reverse (fourth quadrant) driving may be represented as vectors shown in
(34) Here, the voltage vector is closer to the vertical axis during the reverse driving rather than during the forward driving. It represents that, since the motor is driven at the same speed based on an absolute value during the forward driving and the reverse driving, a voltage vector with the same magnitude and difference of 180 degrees in phase only needs to be drawn, but a phase difference is deviated from 180 degrees due to effect of time delay and an error occurs in initial rotor position information when an initial position of a rotor is selected and driving in an opposite direction is performed. Therefore, if a phase error component by the time delay, a voltage error component by a dead time, and an error component by a voltage drop occurring in a hardware manner as shown in
(35)
(36) Referring to
(37)
(38) Referring to
(39) A method and system provided as an example embodiment may be applied for all electric systems, for example, a motor system for driving an electric vehicle in which a position sensor, such as a resolver and an encoder, is attached to a permanent magnet synchronous motor PMSM, an electric power steering (EPS) motor system, and an integrated starter generator (IS G) motor system.
(40) Also, since it is a detection method in a no-load condition, an initial position may be precisely measured even under a condition incapable of generating a driven environment. By reducing a required experimental environment compared to existing methods and significantly simplifying an operation process of a detection algorithm with simple four-ruling operations, it is possible to remarkably reduce a work time for detecting an initial position and an execution time of a program. In addition, since a detection error of a measurement result value appears at a level of 2 bits to 3 bits based on a resolver, very high precision may be secured.
(41) Description related to the method may apply to the device according to an example embodiment. Therefore, the same content related to the description of the method is omitted in relation to the device.
(42) Meanwhile, according to an example embodiment, there may be provided a computer-readable record medium storing a program to computer-implement the method. That is, the aforementioned method may be written with a computer-executable program and may be implemented in a general-purpose digital computer that runs the program using computer-readable media. Also, a structure of data used for the method may be recorded in the computer-readable media using various methods. The media storing an executable computer program or code to perform various methods of the present invention should not be understood to include temporary targets such as carrier waves or signals.
(43) The foregoing description of the present invention is provided as an example and one of ordinary skill in the art to which the present invention pertains may understand that modifications may be easily made in different forms without departing from the technical spirit or essential features of the present invention. Therefore, it should be understood that the example embodiments are illustrative in all respects and not restrictive. For example, each component described in a singular form may be implemented in a distributed manner. Likewise, components described as distributed may be implemented in a combined manner.
(44) The scope of the present invention is indicated by the following claims rather than the detailed description and all changes or modifications derived from the meaning and the scope of the claims and the equivalents thereof should be construed as being included in the scope of the present invention.
EXPLANATION OF SYMBOLS
(45) 100: Device for detecting initial position of rotor
(46) 110: memory
(47) 120: processor