JP2022120508A - Motor control device - Google Patents

Motor control device Download PDF

Info

Publication number
JP2022120508A
JP2022120508A JP2021017438A JP2021017438A JP2022120508A JP 2022120508 A JP2022120508 A JP 2022120508A JP 2021017438 A JP2021017438 A JP 2021017438A JP 2021017438 A JP2021017438 A JP 2021017438A JP 2022120508 A JP2022120508 A JP 2022120508A
Authority
JP
Japan
Prior art keywords
rotor
rotation pulse
estimated
motor
rotation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2021017438A
Other languages
Japanese (ja)
Other versions
JP7468390B2 (en
Inventor
紀元 蓑島
Norimoto Minoshima
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Industries Corp
Original Assignee
Toyota Industries Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Industries Corp filed Critical Toyota Industries Corp
Priority to JP2021017438A priority Critical patent/JP7468390B2/en
Publication of JP2022120508A publication Critical patent/JP2022120508A/en
Application granted granted Critical
Publication of JP7468390B2 publication Critical patent/JP7468390B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/60Other road transportation technologies with climate change mitigation effect
    • Y02T10/64Electric machine technologies in electromobility

Landscapes

  • Control Of Motors That Do Not Use Commutators (AREA)

Abstract

To provide a motor control device capable of calculating the position of a rotor while reducing the cost.SOLUTION: A motor control device 1 includes a rotor position calculator 15 for calculating the position of a rotor 20 by using an estimated position estimated by a position estimator 9, and a rotation pulse. When the rotation of the motor 2 is started, the rotor position calculator 15 performs phase difference calculation processing S90 of calculating the phase difference between the position of the rotor 20 estimated by the position estimator 9 and the position based on the rotation pulse. This makes it possible to grasp where a reference position (d-axis) of the rotor 20 exists within a pitch angle range. Therefore, in the rotor position calculation process S110, the rotor position calculator 15 can accurately calculate an actual rotor position by performing calculation based on the phase difference in addition to the position of the rotor 20 based on the rotation pulse.SELECTED DRAWING: Figure 1

Description

本発明は、モータ制御装置に関する。 The present invention relates to a motor control device.

従来のモータ制御装置としては、例えば特許文献1に記載されているような技術が知られている。特許文献1に記載のモータ制御装置は、固定子、及び永久磁石を有する回転子を備えるモータと、モータに指令信号を送信する指令部と、回転子の位置を推定する位置推定部と、を備える。また、このモータ制御装置は、回転するモータの回転子の位置を検出するためのレゾルバを備えている。モータ制御装置は、レゾルバからの出力を用いた外乱オブザーバに基づいて、位相角の誤差角度を推定することで、回転子位置を補正した上で、電流制御を行っている。 2. Description of the Related Art As a conventional motor control device, a technique such as that described in Patent Document 1, for example, is known. A motor control device described in Patent Document 1 includes a motor including a stator and a rotor having a permanent magnet, a command section that transmits a command signal to the motor, and a position estimation section that estimates the position of the rotor. Prepare. This motor control device also includes a resolver for detecting the position of the rotor of the rotating motor. The motor control device performs current control after correcting the rotor position by estimating the error angle of the phase angle based on the disturbance observer using the output from the resolver.

特開2014-158336号公報JP 2014-158336 A

ところで、上記従来技術においては、レゾルバを用いているため、レゾルバの基準位置と回転子の位置を調整した上で組立を行う必要がある。また、レゾルバは、インバータ側に信号処理を行う回路が必要となる。以上より、従来のモータ制御装置においては、コストを低減しつつ回転子の位置を演算することが求められていた。 By the way, in the above conventional technology, since the resolver is used, it is necessary to adjust the reference position of the resolver and the position of the rotor before assembly. Also, the resolver requires a circuit for signal processing on the inverter side. As described above, the conventional motor control device is required to calculate the position of the rotor while reducing the cost.

本発明の目的は、コストを低減しつつ回転子の位置を演算することができるモータ制御装置を提供することである。 SUMMARY OF THE INVENTION An object of the present invention is to provide a motor control device capable of calculating the position of a rotor while reducing costs.

本発明の一態様に係るモータ制御装置は、固定子、及び永久磁石を有する回転子を備えるモータと、モータに指令信号を送信する指令部と、高調波を指令信号に重畳する高調波重畳部と、高調波重畳によって回転子の位置を推定する位置推定部と、モータの回転パルスを検出する回転パルスセンサと、位置推定部で推定された推定位置、及び回転パルスを用いて、回転子の位置を演算する回転子位置演算部と、を備え、指令部は、回転子の初期位置が推定された状態でモータの回転を始動させる始動処理を行い、回転子位置演算部は、位置推定部で推定された回転子の位置と回転パルスに基づく回転子の位置との位相差を演算する位相差演算処理を行い、回転パルスに基づく回転子の位置、及び位相差に基づいて、回転子の位置を演算する回転子位置演算処理を行う。 A motor control device according to an aspect of the present invention includes a motor including a stator and a rotor having a permanent magnet, a command section that transmits a command signal to the motor, and a harmonic superimposition section that superimposes a harmonic on the command signal. a position estimator for estimating the position of the rotor by superimposing harmonics, a rotation pulse sensor for detecting the rotation pulse of the motor, the estimated position estimated by the position estimator, and the rotation pulse to determine the position of the rotor. a rotor position calculation unit that calculates a position, the command unit performs start processing for starting rotation of the motor in a state in which the initial position of the rotor is estimated, and the rotor position calculation unit is the position estimation unit. A phase difference calculation process is performed to calculate the phase difference between the rotor position estimated in and the rotor position based on the rotation pulse, and the rotor position is calculated based on the rotor position based on the rotation pulse and the phase difference Rotor position calculation processing for calculating the position is performed.

このようなモータ制御装置は、高調波重畳によって回転子の位置を推定する位置推定部と、モータの回転パルスを検出する回転パルスセンサと、を備える。ここで、位置推定部による推定位置のみだと、回転数が高くなってきた場合に対応することができない。また、回転パルスのみでも、センサ歯車の構造上、刻み角度の単位でしか回転子の位置を把握できないため、正確に回転子の位置を演算することができない。これに対し、本発明に係るモータ制御装置は、位置推定部で推定された推定位置、及び回転パルスを用いて、回転子の位置を演算する回転子位置演算部を備える。従って、回転子位置演算部は、回転パルスを用いて回転子位置を行うときに、位置推定部の推定位置も有効に利用した上で、演算を行うことができる。すなわち、モータの回転の始動がなされたら、回転子位置演算部は、位置推定部で推定された回転子の位置と回転パルスに基づく回転子の位置との位相差を演算する位相差演算処理を行う。これにより、刻み角度の範囲内において、回転子の基準位置がどこに存在しているかを把握することが可能となる。従って、回転子位置演算処理において、回転子位置演算部は、回転パルスに基づく回転子の位置に加えて、位相差に基づいて演算することで、正確に回転子位置を演算することができる。以上より、レゾルバのように高価な装置を設けることなく、正確に回転子位置を演算することが可能となる。従って、コストを低減しつつ回転子の位置を演算することができる。 Such a motor control device includes a position estimator that estimates the position of the rotor by superimposing harmonics, and a rotation pulse sensor that detects rotation pulses of the motor. Here, if only the position estimated by the position estimator is used, it is not possible to cope with the case where the number of revolutions has increased. In addition, even with only rotation pulses, the position of the rotor cannot be accurately calculated because the position of the rotor can only be grasped in units of pitch angles due to the structure of the sensor gear. On the other hand, the motor control device according to the present invention includes a rotor position calculator that calculates the position of the rotor using the estimated position estimated by the position estimator and the rotation pulse. Therefore, when calculating the rotor position using the rotation pulse, the rotor position calculator can effectively use the estimated position of the position estimator to perform the calculation. That is, when the rotation of the motor is started, the rotor position calculator performs phase difference calculation processing for calculating the phase difference between the rotor position estimated by the position estimator and the rotor position based on the rotation pulse. conduct. This makes it possible to grasp where the reference position of the rotor exists within the range of the pitch angle. Therefore, in the rotor position calculation process, the rotor position calculator can accurately calculate the rotor position by calculating based on the phase difference in addition to the rotor position based on the rotation pulse. As described above, it is possible to accurately calculate the rotor position without providing an expensive device such as a resolver. Therefore, the position of the rotor can be calculated while reducing costs.

始動処理の前段階で、回転子位置演算部は、位置推定部によって推定された回転子の初期位置と、回転パルスセンサの刻み角度との対応関係に基づいて、回転パルスの初期値を演算する初期値演算処理を行ってよい。この場合、回転子位置演算部は、モータの回転始動時に、パルスの初期値を把握した上で、回転子位置の演算を行うことができる。そのため、回転子位置演算部による、回転子位置の演算が行い易くなる。 In a stage prior to the start-up process, the rotor position calculator calculates the initial value of the rotation pulse based on the correspondence relationship between the initial position of the rotor estimated by the position estimator and the step angle of the rotation pulse sensor. An initial value calculation process may be performed. In this case, the rotor position calculation section can calculate the rotor position after grasping the initial value of the pulse when the motor starts to rotate. Therefore, the rotor position can be easily calculated by the rotor position calculator.

位相差演算処理では、回転子位置演算部は、モータの始動後の回転パルスのカウントごとに、当該回転パルスに基づく回転子の位置と、推定位置との差分を積算し、積算値の平均値から位相差を演算してよい。この場合、回転子位置演算部は、単一のパルスのカウント時の差分だけでなく、カウントごとの差分を総合的に考慮した上で、位相差を演算することができる。従って、センサ歯車の歯ごとの製造誤差によらず、位相差が演算可能となる。 In the phase difference calculation process, the rotor position calculation unit integrates the difference between the rotor position based on the rotation pulse and the estimated position each time the rotation pulse is counted after the motor is started, and calculates the average value of the integrated values. The phase difference may be calculated from In this case, the rotor position calculator can calculate the phase difference by comprehensively considering not only the difference when counting a single pulse, but also the difference for each count. Therefore, the phase difference can be calculated regardless of the manufacturing error for each tooth of the sensor gear.

回転子位置演算処理では、回転子位置演算部は、パルス間における回転子の微小位置変化量にも基づいて、回転子の位置を演算する回転子位置演算処理を行ってよい。回転パルスのみに基づく回転子の位置は、パルス間の位置変化が不明であるため一定となる(例えば図8の破線のグラフ参照)。これに対し、回転子位置演算処理において、回転子位置演算部は、回転パルスに基づく回転子の位置に加えて、パルス間における回転子の微小位置変化量に基づくことで、パルス間の位置変化も反映させて、正確に回転子位置を演算することができる。 In the rotor position calculation process, the rotor position calculation section may perform the rotor position calculation process of calculating the rotor position based also on the minute positional change amount of the rotor between pulses. The position of the rotor based on rotation pulses alone is constant because the position change between pulses is unknown (eg, see the dashed line graph in FIG. 8). On the other hand, in the rotor position calculation process, the rotor position calculation unit calculates the position change between pulses based on the minute position change amount of the rotor between the pulses, in addition to the rotor position based on the rotation pulses. can also be reflected to accurately calculate the rotor position.

回転子位置演算処理では、回転子位置演算部は、回転パルスのカウントがなされた時点から計測したタイマー値と、角速度とを掛け合わせることで、微小位置変化量を演算してよい。このように、角速度とタイマー値を用いることで、微小位置変化量を容易に演算することが可能となる。 In the rotor position calculation process, the rotor position calculator may calculate the minute position change amount by multiplying the angular velocity by the timer value measured from the time when the rotation pulse is counted. By using the angular velocity and the timer value in this way, it is possible to easily calculate the minute position change amount.

回転子位置演算部は、所定回転数以上の場合、回転パルスを用いて回転子の位置を演算し、所定回数未満の場合、位置推定部による推定位置を回転子の位置とするように、切り替えを行ってよい。これにより、モータの回転の始動直後は、位置推定部による推定位置を回転子の位置として採用しつつ、前述の位相差演算処理や回転子位置演算処理などを行うことで、回転パルスを用いた回転子の位置の演算の準備を行うことができる。そして、ある程度回転数が上がった後は、回転パルスを用いることで、高周波重畳による位置推定よりも正確に、回転子の位置を演算することができる。 The rotor position calculation unit calculates the position of the rotor using the rotation pulse when the number of rotations is equal to or greater than a predetermined number of rotations, and switches so that the position estimated by the position estimation unit is used as the position of the rotor when the number of rotations is less than the predetermined number of rotations. may be performed. As a result, immediately after the start of rotation of the motor, while adopting the position estimated by the position estimator as the position of the rotor, by performing the above-described phase difference calculation processing and rotor position calculation processing, etc., the rotation pulse is used. Provisions can be made for the calculation of the rotor position. Then, after the number of revolutions has increased to some extent, the position of the rotor can be calculated more accurately than position estimation based on high-frequency superimposition by using the rotation pulse.

回転子位置演算部は、回転パルスに基づく回転子の位置と、位置推定部による推定位置と、を合成してよい。このように、高調波波重畳による位置推定から、回転パルスを用いた演算に非連続的に切替を行うのではなく、高調波重畳による演算と回転パルスを用いた演算との影響が徐々に変化していくように、連続的な切替を行う事が可能となる。 The rotor position calculator may synthesize the position of the rotor based on the rotation pulse and the estimated position by the position estimator. In this way, instead of discontinuously switching from position estimation based on harmonic wave superimposition to calculation using rotation pulses, the effects of calculation using harmonic superposition and calculation using rotation pulses gradually change. It is possible to perform continuous switching so as to continue.

本発明によれば、コストを低減しつつ回転子の位置を演算することができるモータ制御装置を提供することができる。 ADVANTAGE OF THE INVENTION According to this invention, the motor control apparatus which can calculate the position of a rotor while reducing cost can be provided.

本発明の一実施形態に係るモータ制御装置を示す概略構成図である。1 is a schematic configuration diagram showing a motor control device according to an embodiment of the present invention; FIG. モータの具体的な構成の一例を示す概略図である。It is a schematic diagram showing an example of a concrete composition of a motor. 回転パルスセンサの拡大図である。3 is an enlarged view of a rotation pulse sensor; FIG. 本発明の一実施形態に係るモータ制御装置によるモータの起動時における制御処理を示すフローチャートである。4 is a flow chart showing control processing at the time of starting the motor by the motor control device according to the embodiment of the present invention; 時間経過に伴うd軸電流の推移、及び推定結果の推移を示すグラフである。7 is a graph showing changes in d-axis current and changes in estimation results over time. 誘起電圧と回転パルスの関係を示すグラフである。4 is a graph showing the relationship between induced voltage and rotation pulse; 時間経過に伴う回転パルスカウント値に基づく回転子位置の演算結果の推移と、位置推定部の推定位置の推移と、回転パルスと、の関係を示すグラフである。7 is a graph showing the relationship between the transition of the calculated rotor position based on the rotation pulse count value over time, the transition of the estimated position of the position estimator, and the rotation pulse. 回転子位置演算部による演算結果の時間の推移を示すグラフである。7 is a graph showing time transition of calculation results by a rotor position calculation unit;

以下、本発明の実施形態について図面を参照して詳細に説明する。 BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

図1は、本発明の一実施形態に係るモータ制御装置1を示す概略構成図である。本実施形態に係るモータ制御装置1は、モータ2を起動させるときに、レゾルバなどの電気角位置を検出するセンサなどを用いることなく、高性能なモータ制御を行うことができる装置である。モータ制御装置1は、モータ2と、電流指令部3(指令部)と、電圧指令部4(指令部)と、変換部5と、検出部6と、高調波重畳部7と、回転パルスセンサ8と、位置推定部9と、角速度推定部11と、回転パルスカウント部12と、角速度演算部13と、回転パルス回転子位置演算部14と、回転子位置演算部15と、を備える。 FIG. 1 is a schematic configuration diagram showing a motor control device 1 according to one embodiment of the present invention. The motor control device 1 according to the present embodiment is a device that can perform high-performance motor control without using a sensor such as a resolver for detecting an electrical angle position when starting the motor 2 . The motor control device 1 includes a motor 2, a current command section 3 (command section), a voltage command section 4 (command section), a conversion section 5, a detection section 6, a harmonic superposition section 7, and a rotation pulse sensor. 8 , a position estimator 9 , an angular velocity estimator 11 , a rotation pulse counter 12 , an angular velocity calculator 13 , a rotation pulse rotor position calculator 14 , and a rotor position calculator 15 .

モータ2は、三相の交流電力によって駆動する電動機である。モータ2は、固定子、及び永久磁石を有する回転子を有しており、回転子を回転させる。モータ2には、当該モータ2の回転パルスを検出する回転パルスセンサ8が設けられている。モータ2の具体的な構成の一例を図2に示す。図2に示すように、U相、V相及びW相の固定子22と、回転子20と、を備える。各固定子22は、所定のインダクタンスを有するインダクタンス部23と、所定の抵抗値を有する抵抗部24と、を有する。回転子20は、永久磁石21を有する。各固定子22は、交流電流が流されることで回転子20の周囲に回転磁界を作ることで、回転子20を回転させる。モータ2は、モータ定数として、R(抵抗値)、L(インダクタンス)、K(誘起電圧定数)を有する。 The motor 2 is an electric motor driven by three-phase AC power. The motor 2 has a stator and a rotor with permanent magnets, and rotates the rotor. The motor 2 is provided with a rotation pulse sensor 8 for detecting rotation pulses of the motor 2 . An example of a specific configuration of the motor 2 is shown in FIG. As shown in FIG. 2, a U-phase, a V-phase, and a W-phase stator 22 and a rotor 20 are provided. Each stator 22 has an inductance portion 23 having a predetermined inductance and a resistance portion 24 having a predetermined resistance value. The rotor 20 has permanent magnets 21 . Each stator 22 rotates the rotor 20 by creating a rotating magnetic field around the rotor 20 when an alternating current is supplied. The motor 2 has R (resistance value), L (inductance), and KE (induced voltage constant) as motor constants.

ここで、モータ2に対しては、回転子20と同期する回転座標系と、固定された固定座標系が設定される。回転座標系では、主磁束方向(永久磁石21のN極方向)をd軸にとり、d軸と直交するq軸をとっている。固定座標系は、互いに直交するα軸及びβ軸を有する。なお、固定座標系のα軸に対して回転座標系のd軸がなす角度をθreとする。 Here, for the motor 2, a rotating coordinate system synchronized with the rotor 20 and a fixed fixed coordinate system are set. In the rotating coordinate system, the main magnetic flux direction (N pole direction of the permanent magnet 21) is taken as the d-axis, and the q-axis orthogonal to the d-axis is taken. The fixed coordinate system has α and β axes that are orthogonal to each other. The angle formed by the d-axis of the rotating coordinate system with respect to the α-axis of the fixed coordinate system is defined as θ re .

図1に示すように、電流指令部3及び電圧指令部4は、変換部5を介してモータ2へ指令信号を送信する指令部として機能する。電流指令部3は、回転数指令を受信し、当該回転数指令に対応する電流指令信号を演算すると共に、当該電流指令信号を電圧指令部4へ送信する。電流指令部3は、例えば速度PI制御を用いて電流指令信号を演算する。電流指令部3は、回転座標系のd軸上の電流の指令値(i指令)を演算し、回転座標系のq軸上の電流の指令値(i指令)を演算する。 As shown in FIG. 1 , the current command section 3 and the voltage command section 4 function as command sections that transmit command signals to the motor 2 via the conversion section 5 . The current command unit 3 receives the rotation speed command, calculates a current command signal corresponding to the rotation speed command, and transmits the current command signal to the voltage command unit 4 . The current command unit 3 calculates a current command signal using speed PI control, for example. The current command unit 3 calculates a current command value (id command) on the d -axis of the rotating coordinate system and a current command value (iq command) on the q -axis of the rotating coordinate system.

電圧指令部4は、電流指令部3からの電流指令信号を受信し、当該電流指令に対応する電圧指令信号を演算すると共に、当該電圧指令信号を変換部5へ送信する。電圧指令部4は、例えば電流PI制御を用いて電圧指令信号を演算する。電圧指令部4は、回転座標系のd軸上の電流の指令値(i指令)及びq軸上の電流の指令値(i指令)に基づいて、d軸上の電圧の指令値及びq軸上の電圧を演算し、それらを三相のU相、V相及びW相の固定子22のそれぞれに対する電圧の指令値(V指令、V指令、V指令)に変換する。 Voltage command unit 4 receives a current command signal from current command unit 3 , calculates a voltage command signal corresponding to the current command, and transmits the voltage command signal to conversion unit 5 . The voltage command unit 4 calculates a voltage command signal using current PI control, for example. The voltage command unit 4 calculates a voltage command value on the d-axis and a current command value on the q-axis ( iq command) based on a current command value (id command) on the d -axis of the rotating coordinate system and a current command value (iq command) on the q-axis. The voltages on the q-axis are calculated and converted into voltage command values (Vu command, Vv command, Vw command) for each of the three-phase U -phase, V -phase, and W -phase stators 22 .

変換部5は、モータ2の固定子22に任意の交流を印加する機器である。変換部5は、電圧指令部4からの電圧の指令値をPWM信号へと変換する。また、変換部5は、PWM信号に基づいてスイッチング動作を行い直流電力を交流電力に変換し、電圧指令部4で演算された電圧指令に相当する電圧を、モータ2に印加する。 The converter 5 is a device that applies an arbitrary alternating current to the stator 22 of the motor 2 . The converter 5 converts the voltage command value from the voltage commander 4 into a PWM signal. Further, the conversion unit 5 performs a switching operation based on the PWM signal to convert DC power into AC power, and applies a voltage corresponding to the voltage command calculated by the voltage command unit 4 to the motor 2 .

検出部6は、モータ2に通電する電流を検出する。また、検出部6は、検出した電流を電圧指令部4と位置推定部9へ送信する。 The detector 6 detects the current that flows through the motor 2 . The detector 6 also transmits the detected current to the voltage commander 4 and the position estimator 9 .

高調波重畳部7は、高調波を指令信号に重畳する。高調波重畳部7は、電流指令部3の電流指令信号に対して高調波を重畳する。高調波重畳部7は、所定の周波数、所定の電流値(振幅)に設定された高調波を重畳する。例えば、図5に示すように、モータ2に対して-50Aのd軸電流を通電するような指令信号がなされているものに対して高調波重畳部7が高調波を重畳した場合、d軸電流は-50Aを基準として振幅するような波形を描く。高調波重畳部7を重畳することで、どのように回転子20の初期位置を推定するかについては、後述する。 The harmonic superimposing unit 7 superimposes the harmonic on the command signal. The harmonic superimposing unit 7 superimposes harmonics on the current command signal from the current command unit 3 . The harmonic superimposing unit 7 superimposes a harmonic set to a predetermined frequency and a predetermined current value (amplitude). For example, as shown in FIG. 5, when the harmonic superimposing unit 7 superimposes a harmonic on a motor 2 commanded to supply a d-axis current of −50 A, the d-axis The current draws a waveform that oscillates with -50A as a reference. How to estimate the initial position of the rotor 20 by superimposing the harmonic superimposing section 7 will be described later.

回転パルスセンサ8は、モータ2の回転パルスを検出するセンサである。具体的には、図3に示すように、回転パルスセンサ8は、センサ歯車16と、検出部17と、を備える。センサ歯車16は、所定のピッチで設けられた複数の歯18を有する。センサ歯車16は、モータ2の回転子20と同期して回転するため、回転子20と同じ回転速度で回転する。検出部17は、センサ歯車16の回転に伴って発生する回転パルスを検出する機器である。検出部17は、センサ歯車16に対して外周側に離間した位置に配置される。センサ歯車16が回転すると、磁性体であるセンサ歯車16の各歯18が検出部17に対して近づく挙動と離れる挙動を繰り返す。これにより検出部17内の磁路の状態が変化し、検出コイルを貫通する磁束が変化する。具体的に、歯18の接近に伴い磁束が増えて行き、遠ざかるとともに磁束が減って行くという状態を繰り返すことになる。このとき、検出部17内では、ファラデーの電磁誘導の法則で示される誘導起電力を発生することになる。センサ歯車16の回転により検出部17の検出コイルを貫通する磁束が連続的に増減を繰り返すことで、検出コイルに発生する起電力も極性を変えながら増減を繰り返す。検出部17は、このような電力の波形を回転パルスとして検出する。例えば、歯18のエッジ18a,18bのうち、回転方向の前側のエッジ18aで波形が立ち上がり、回転方向の後側のエッジ18bで波形が立ち下がる(図6の下段側のグラフ参照)。 The rotation pulse sensor 8 is a sensor that detects rotation pulses of the motor 2 . Specifically, as shown in FIG. 3 , the rotation pulse sensor 8 includes a sensor gear 16 and a detection section 17 . Sensor gear 16 has a plurality of teeth 18 provided at a predetermined pitch. Since the sensor gear 16 rotates in synchronization with the rotor 20 of the motor 2 , it rotates at the same rotational speed as the rotor 20 . The detection unit 17 is a device that detects rotation pulses generated as the sensor gear 16 rotates. The detection unit 17 is arranged at a position spaced apart from the sensor gear 16 on the outer peripheral side. When the sensor gear 16 rotates, each tooth 18 of the sensor gear 16 , which is a magnetic material, repeats the behavior of approaching and separating from the detection unit 17 . As a result, the state of the magnetic path in the detection section 17 changes, and the magnetic flux passing through the detection coil changes. Specifically, the magnetic flux increases as the tooth 18 approaches, and the magnetic flux decreases as the tooth 18 moves away. At this time, an induced electromotive force indicated by Faraday's law of electromagnetic induction is generated in the detection unit 17 . Rotation of the sensor gear 16 causes the magnetic flux penetrating the detection coil of the detection unit 17 to continuously increase and decrease, so that the electromotive force generated in the detection coil also increases and decreases while changing the polarity. The detector 17 detects such a power waveform as a rotation pulse. For example, of the edges 18a and 18b of the tooth 18, the waveform rises at the front edge 18a in the rotational direction, and the waveform falls at the rear edge 18b in the rotational direction (see the lower graph in FIG. 6).

位置推定部9は、モータ2の回転子20の位置を推定する。モータ2の起動時においては、回転子20が回転方向におけるどのような電気角の位置(初期位置)に配置されているかが不明な状態であるため、位置推定部9は、モータ2の回転子20の初期位置を推定する。位置推定部9は、電圧指令部4からモータ2に対する指令信号を取得すると共に、検出部6から検出結果を取得し、それらの情報に基づいて回転子20の初期位置を推定する。d軸に高調波を重畳すれば、q軸上に高調波分の電圧が励起するため、位置推定部9は、当該信号を固定座標系(αβ座標系)で検出することにより、回転子20の位置推定を行う。なお、初期位置推定時にはd軸の位置が不明であるが、位置推定部9は、後述の方法によって、初期位置を推定する。また、位置推定部9は、モータ2の回転が始動した後も、高周波重畳された信号に基づいて、回転子20の位置推定を行う。位置推定部9は、推定した推定位置の情報を回転子位置演算部15へ出力する。 A position estimator 9 estimates the position of the rotor 20 of the motor 2 . When the motor 2 is started, it is unknown at what electrical angle position (initial position) the rotor 20 is arranged in the direction of rotation. 20 initial positions are estimated. The position estimator 9 acquires the command signal for the motor 2 from the voltage commander 4, acquires the detection result from the detector 6, and estimates the initial position of the rotor 20 based on the information. If a harmonic is superimposed on the d-axis, a voltage corresponding to the harmonic is excited on the q-axis. position estimation. Although the position of the d-axis is unknown at the time of initial position estimation, the position estimator 9 estimates the initial position by a method described later. Further, the position estimator 9 estimates the position of the rotor 20 based on the high frequency superimposed signal even after the rotation of the motor 2 is started. The position estimator 9 outputs information on the estimated position to the rotor position calculator 15 .

角速度推定部11は、モータ2の回転子20の角速度を推定する。角速度推定部11は、位置推定部9によって推定された推定位置に基づいて、角速度を推定する。角速度推定部11は、推定した角速度の情報を回転子位置演算部15へ出力する。 The angular velocity estimator 11 estimates the angular velocity of the rotor 20 of the motor 2 . The angular velocity estimator 11 estimates angular velocity based on the estimated position estimated by the position estimator 9 . The angular velocity estimator 11 outputs information on the estimated angular velocity to the rotor position calculator 15 .

回転パルスカウント部12は、回転パルスセンサ8で検出された回転パルスをカウントする。例えば、回転パルスセンサ8が、1回転で32パルスの信号を出力する場合、回転パルスカウント部12は、パルスの立ち上がりと立ち下りでカウントするとして、1回転で64パルスのカウントを行う。モータ2が2極のモータである場合、回転パルスカウント部12のカウントにより、1カウントで「電気角360°/32=11.25°」の刻み角度で、回転子20の相対位置を把握することが可能となる。図6の下段側に示す回転パルスの例において、角度p1及び角度p2のうち、角度p1が刻み角度に該当する。回転パルスカウント部12は、回転パルスのカウント数の情報を回転パルス回転子位置演算部14へ出力する。 The rotation pulse counting section 12 counts rotation pulses detected by the rotation pulse sensor 8 . For example, when the rotation pulse sensor 8 outputs a signal of 32 pulses per rotation, the rotation pulse counting section 12 counts the rise and fall of the pulse, and counts 64 pulses per rotation. When the motor 2 is a two-pole motor, the relative position of the rotor 20 is grasped by the step angle of "360°/32=11.25° electrical angle" per count by the count of the rotation pulse counter 12. becomes possible. In the example of the rotation pulse shown in the lower part of FIG. 6, of the angles p1 and p2, the angle p1 corresponds to the step angle. The rotation pulse counting section 12 outputs the information on the count number of rotation pulses to the rotation pulse rotor position calculation section 14 .

角速度演算部13は、モータ2の回転子20の角速度を演算する。角速度演算部13は、回転パルスセンサ8で検出された回転パルスに基づいて、角速度を演算する。角速度演算部13は、演算した角速度の情報を回転パルス回転子位置演算部14へ出力する。 The angular velocity calculator 13 calculates the angular velocity of the rotor 20 of the motor 2 . The angular velocity calculator 13 calculates angular velocity based on the rotation pulse detected by the rotation pulse sensor 8 . The angular velocity calculator 13 outputs information on the calculated angular velocity to the rotation pulse rotor position calculator 14 .

回転パルス回転子位置演算部14は、回転パルスカウント部12でカウントされた回転パルスのカウント数を取得して、回転子20の位置を演算する。回転パルス回転子位置演算部14は、演算した回転子位置、及び角速度を回転子位置演算部15へ出力する。 A rotation pulse rotor position calculation unit 14 acquires the count number of rotation pulses counted by the rotation pulse count unit 12 and calculates the position of the rotor 20 . The rotation pulse rotor position calculator 14 outputs the calculated rotor position and angular velocity to the rotor position calculator 15 .

回転子位置演算部15は、位置推定部9で推定された推定位置、及び回転パルスを用いて、回転子20の位置を演算する。回転子位置演算部15は、位置推定部9からの推定位置、及び回転パルス回転子位置演算部14からの回転子位置を取得し、それらの情報を用いて演算を行うことによって、回転子20の実回転位置を演算する。なお、回転子位置演算部15が採用した回転子位置を、回転パルス回転子位置演算部14の回転パルス(だけ)に基づいて演算された回転子位置と区別するため、「実回転子位置」と称する場合がある。回転子位置演算部15は、角速度を電流指令部3へ出力する。 The rotor position calculator 15 calculates the position of the rotor 20 using the estimated position estimated by the position estimator 9 and the rotation pulse. The rotor position calculator 15 acquires the estimated position from the position estimator 9 and the rotor position from the rotation pulse rotor position calculator 14, and performs calculations using these pieces of information to obtain the rotor 20 Calculate the actual rotational position of In addition, in order to distinguish the rotor position adopted by the rotor position calculation unit 15 from the rotor position calculated based on (only) the rotation pulse of the rotation pulse rotor position calculation unit 14, the term "actual rotor position" is used. sometimes referred to as Rotor position calculation unit 15 outputs the angular velocity to current command unit 3 .

本実施形態では、回転子位置演算部15は、所定回転数以上の場合、回転パルスに基づいて回転子20の実回転子位置を演算し、所定回数未満の場合、位置推定部9による推定位置を実回転子位置とするように、切り替えを行う。従って、初期状態からモータ2の始動時までは、回転子位置演算部15は、位置推定部9が推定した推定位置を、回転子20の実回転子位置として採用する。また、モータ2の始動直後も、所定回転数未満の間は、回転子位置演算部15は、位置推定部9が推定した推定位置を、回転子20の実回転子位置として採用する。一方、回転子位置演算部15は、所定回転数以上の場合、後述の方法によって、回転パルスに基づいて演算した回転子20の位置を、実回転子位置として採用するように、切り替える。ここで、回転子位置演算部15は、回転パルスに基づいて実回転子位置を演算する前段階において、位置推定部9の推定位置を利用して、回転パルスによる実回転子の演算の精度を上げるための前処理を行う。 In this embodiment, the rotor position calculator 15 calculates the actual rotor position of the rotor 20 based on the rotation pulse when the number of revolutions is equal to or greater than a predetermined number, and calculates the position estimated by the position estimator 9 when the number of revolutions is less than the predetermined number. is the actual rotor position. Therefore, from the initial state until the motor 2 is started, the rotor position calculator 15 uses the estimated position estimated by the position estimator 9 as the actual rotor position of the rotor 20 . Also immediately after the motor 2 is started, the rotor position calculator 15 adopts the estimated position estimated by the position estimator 9 as the actual rotor position of the rotor 20 while the number of revolutions is less than the predetermined number. On the other hand, when the number of revolutions is equal to or higher than the predetermined number, the rotor position calculation unit 15 switches to adopt the position of the rotor 20 calculated based on the rotation pulse by a method described later as the actual rotor position. Here, the rotor position calculator 15 uses the estimated position of the position estimator 9 to estimate the accuracy of the calculation of the actual rotor position based on the rotation pulse, in the stage prior to calculating the actual rotor position based on the rotation pulse. Perform pretreatment for lifting.

図4を参照して、本実施形態に係るモータ制御装置1によるモータ2の起動時及び回転始動直後における制御処理について説明する。この制御処理は、モータ2を起動させて、回転子20を実際に回転させる段階において、レゾルバなどのセンサを用いることなく、センサレスで回転子20の実回転子位置を演算するためになされる制御処理である。また、以降の説明では、図5~図8を適宜参照しながら説明を行う。図5は、時間経過に伴うd軸電流の推移、及び推定結果の推移を示すグラフである。図5の上段側のグラフがd軸電流を示し、下段側のグラフが推定結果を示す。なお、図5に示す例では、実際の回転子20のN極の電気角が-270°であるものとしている。なお、推定位置のグラフは、直線の組み合わせで示されているが、実際は推定結果の揺らぎや検出値のぶれなどによって変動が生じる箇所もあるが、理解を容易とするためにそれらの変動は省略している。図6は、誘起電圧と回転パルスの関係を示すグラフである。図6の上段側のグラフは、位置推定部9が推定に用いる誘起電圧を示すグラフである。図6の下段側のグラフは、回転パルスを示すグラフである。図7は、時間経過に伴う回転パルスカウント値に基づく回転子位置の演算結果の推移と、位置推定部9の推定位置の推移と、回転パルスと、の関係を示すグラフである。図7の上段側のグラフは、時間経過に伴う回転パルスカウント値に基づく回転子位置の演算結果の推移と、位置推定部9の推定位置の推移とを示すグラフである。図7の下段側のグラフは、回転パルスを示すグラフである。図8は、回転子位置演算部15による演算結果の時間の推移を示すグラフである。 Referring to FIG. 4, the control processing performed by the motor control device 1 according to the present embodiment when the motor 2 is started and immediately after the start of rotation will be described. This control process is performed to calculate the actual rotor position of the rotor 20 without using a sensor such as a resolver at the stage of actually rotating the rotor 20 by starting the motor 2. processing. Further, the following description will be made with reference to FIGS. 5 to 8 as appropriate. FIG. 5 is a graph showing changes in d-axis current and changes in estimation results over time. The upper graph in FIG. 5 shows the d-axis current, and the lower graph shows the estimation results. In the example shown in FIG. 5, it is assumed that the actual electrical angle of the N pole of the rotor 20 is -270°. The graph of the estimated position is shown as a combination of straight lines, but in reality, there are places where fluctuations occur due to fluctuations in the estimation results and fluctuations in the detected values, but those fluctuations are omitted to facilitate understanding. is doing. FIG. 6 is a graph showing the relationship between the induced voltage and the rotation pulse. The graph on the upper side of FIG. 6 is a graph showing the induced voltage used for estimation by the position estimator 9 . The graph on the lower side of FIG. 6 is a graph showing rotation pulses. FIG. 7 is a graph showing the relationship between the transition of the calculation result of the rotor position based on the rotation pulse count value over time, the transition of the estimated position of the position estimator 9, and the rotation pulse. The graph on the upper side of FIG. 7 is a graph showing the transition of the calculation result of the rotor position based on the rotation pulse count value and the transition of the estimated position of the position estimator 9 over time. The graph on the lower side of FIG. 7 is a graph showing rotation pulses. FIG. 8 is a graph showing the time transition of the calculation result by the rotor position calculation unit 15. As shown in FIG.

図3に示すように、モータ制御装置1は、位置推定処理S10と、通電処理S60と、初期値演算処理S70と、回転始動処理S80と、位相差演算処理S90と、回転子位置演算処理S110と、切替処理S120と、を実行する。 As shown in FIG. 3, the motor control device 1 includes a position estimation process S10, an energization process S60, an initial value calculation process S70, a rotation start process S80, a phase difference calculation process S90, and a rotor position calculation process S110. and the switching process S120.

まず、モータ制御装置1は、位置推定処理S10を実行する。位置推定処理S10は、位置推定部9が、高調波を重畳した状態で回転子20の位置を推定する処理である。位置推定処理S10では、位置推定部9は、初期位置仮定処理S20と、判別処理S30と、確定処理S40と、を実行する。 First, the motor control device 1 executes position estimation processing S10. The position estimating process S10 is a process in which the position estimating section 9 estimates the position of the rotor 20 with the harmonics superimposed thereon. In the position estimation process S10, the position estimation unit 9 executes an initial position assumption process S20, a determination process S30, and a confirmation process S40.

モータ制御装置1は、初期位置仮定処理S20を実行する。初期位置仮定処理S20は、位置推定部9が、高調波が重畳された状態で回転子20の初期位置を仮定する処理である。すなわち、位置推定処理S10を開始する時点では、d軸の位置が不明であるため、初期位置を仮定する必要がある。初期位置仮定処理S20では、電流指令部3が指令する電流値は0Aである。高調波重畳部7は、当該電流指令信号に対して高調波を重畳する。従って、図5の上段のグラフにおいて「S20」で示されるように、d軸電流は、0Aを基準として振幅を行う。この状態で、位置推定部9は、指令信号及び検出部6の検出結果に基づいて、回転子20の初期位置がどこにあるかを仮定する。なお、初期位置仮定処理S20の段階では、回転子20の永久磁石の極性までは不明であるため、N極が0~360°のどの位置に存在するかまでは推定することができず、N極またはS極の何れかが、0~180°のいずれかに存在するかまでしか推定できない。従って、位置推定部9は、0~180°の何れかの位置を把握したら、当該位置がN極の初期位置であると仮定する。図5の下段に示すグラフでは、N極の位置が120°であると仮定されている。 The motor control device 1 executes an initial position assumption process S20. The initial position assumption process S20 is a process in which the position estimator 9 assumes the initial position of the rotor 20 with the harmonics superimposed thereon. That is, since the position of the d-axis is unknown when the position estimation process S10 is started, it is necessary to assume an initial position. In the initial position assumption process S20, the current value commanded by the current command unit 3 is 0A. A harmonic superimposing unit 7 superimposes a harmonic on the current command signal. Therefore, as indicated by "S20" in the upper graph of FIG. 5, the d-axis current oscillates with 0A as a reference. In this state, the position estimator 9 assumes where the initial position of the rotor 20 is based on the command signal and the detection result of the detector 6 . At the stage of the initial position assumption processing S20, since the polarity of the permanent magnet of the rotor 20 is unknown, it is not possible to estimate the position of the north pole between 0 and 360 degrees. It can only be estimated as far as whether the pole or the south pole lies somewhere between 0 and 180 degrees. Therefore, when the position estimator 9 grasps any position between 0° and 180°, it assumes that the position is the initial position of the N pole. In the graph shown at the bottom of FIG. 5, the position of the north pole is assumed to be 120°.

具体的には、初期位置仮定処理S20では、高調波重畳部7は、数θre=0°として高調波の重畳を開始する。これに対し、位置推定部9は、αβ座標系における拡張誘起電圧eα、eβを算出し、検波処理やバンドパスフィルタの処理を行いtan-1(eα/eβ)を随時計算することで、N極の初期位置を仮定することができる。 Specifically, in the initial position assumption process S20, the harmonic superimposing unit 7 starts superimposing the harmonics with the number θ re =0°. On the other hand, the position estimation unit 9 calculates extended induced voltages e α and e β in the αβ coordinate system, performs detection processing and bandpass filter processing, and calculates tan −1 (e α /e β ) as needed. Thus, the initial position of the north pole can be assumed.

モータ制御装置1は、判別処理S30を実行する。判別処理S30は、位置推定部9が、仮定された初期位置に基づいて、回転子20の磁極を判別する処理である。判別処理S30では、高調波重畳部7は、仮定した初期位置に基づいて、d軸に正・負の電圧パルスを印加する。そして、位置推定部9は、当該電圧パルスによって生じたd軸電流の変化を観察することで、仮定した初期位置における永久磁石21の極性を判別する。具体的に、120°の位置がd軸であるものとしてd軸に対して正・負の電圧パルスを印加する。d軸電流が小さい方がN極であるところ、図4の下段のグラフでは、負側の方に小さくd軸電流が変動している。従って、位置推定部9は、120°の位置に存在する磁極は、S極であると判別する。 The motor control device 1 executes determination processing S30. The determination process S30 is a process in which the position estimator 9 determines the magnetic poles of the rotor 20 based on the assumed initial position. In the discrimination process S30, the harmonic wave superimposing unit 7 applies positive/negative voltage pulses to the d-axis based on the assumed initial position. Then, the position estimator 9 determines the polarity of the permanent magnet 21 at the assumed initial position by observing the change in the d-axis current caused by the voltage pulse. Specifically, assuming that the 120° position is the d-axis, positive and negative voltage pulses are applied to the d-axis. A smaller d-axis current is the N pole, but in the lower graph of FIG. 4, the d-axis current fluctuates slightly toward the negative side. Therefore, the position estimator 9 determines that the magnetic pole present at the 120° position is the S pole.

モータ制御装置1は、確定処理S40を実行する。確定処理S40は、位置推定部9が、判別処理S30での判別結果に基づいて、位置推定処理S10における初期位置を確定させる処理である。確定処理S40では、位置推定部9は、N極の初期位置を120°と仮定していたものを、180°足して、300°がN極の初期位置であると推定する(図5の下段のグラフのS40~S60)。そして、高調波重畳部7は、推定されたN極、すなわちd軸(φ=0)を基準として高調波を重畳する。これによって、d軸推定位置を収束させて、初期位置を確定させることができる。以上により、位置推定処理S10が完了する。 The motor control device 1 executes a confirmation process S40. The determination process S40 is a process in which the position estimation unit 9 determines the initial position in the position estimation process S10 based on the determination result in the determination process S30. In the determination process S40, the position estimating unit 9 adds 180 degrees to the initial position of the N pole, which was assumed to be 120 degrees, and estimates that the initial position of the N pole is 300 degrees (the lower part of FIG. 5). S40 to S60 of the graph of ). Then, the harmonic superimposing unit 7 superimposes the harmonic with the estimated N pole, that is, the d-axis (φ=0) as a reference. As a result, the d-axis estimated position can be converged to determine the initial position. With the above, the position estimation process S10 is completed.

次に、モータ制御装置1は、通電処理S60を実行する。通電処理S60は、高調波重畳部7によって高調波を重畳した状態で、電流指令部3が、位置推定処理S10の結果に基づいて、所定の値のd軸電流をモータ2に通電する処理である。d軸電流の所定の値は、モータ2の通常停止、すなわち回転数指令を受けたら、速やかに回転子20を回転させることができる状態における電流値である。図5の上段のグラフでは、d軸電流の所定の値は-50Aに設定されているが、特に限定されない。 Next, the motor control device 1 executes an energization process S60. The energization process S60 is a process in which the current command unit 3 energizes the motor 2 with a d-axis current of a predetermined value based on the result of the position estimation process S10 in a state where the harmonics are superimposed by the harmonic superimposition unit 7. be. The predetermined value of the d-axis current is the current value when the motor 2 is normally stopped, that is, when the rotor 20 can be quickly rotated when the rotation speed command is received. In the upper graph of FIG. 5, the predetermined value of the d-axis current is set to -50 A, but it is not particularly limited.

モータ制御装置1は、初期値演算処理S70を実行する。初期値演算処理S70は、始動処理S80の前段階で、回転子位置演算部15が、位置推定部9によって推定された回転子20の初期位置と、回転パルスセンサ8の刻み角度との対応関係に基づいて、回転パルスの初期値を演算する処理である。例えば、回転子位置演算部15は、推定された初期位置を刻み角度で割った商を回転パルスカウントの初期値として記憶する。例えば、推定された初期位置が68°であり、刻み角度が11.25°であった場合、「初期位置:68°÷ 刻み角度:11.25°=商:6」という演算によって、回転パルスカウントの初期値を「6」として記憶する。これにより、モータ2の回転の始動時において、回転パルスのカウントがどの程度進んでいるかを把握できる。 The motor control device 1 executes an initial value calculation process S70. The initial value calculation process S70 is a step prior to the startup process S80. , the initial value of the rotation pulse is calculated. For example, the rotor position calculator 15 stores the quotient obtained by dividing the estimated initial position by the step angle as the initial value of the rotation pulse count. For example, if the estimated initial position is 68° and the increment angle is 11.25°, the rotation pulse The initial value of the count is stored as "6". As a result, when the motor 2 starts to rotate, it is possible to grasp how much the count of rotation pulses has progressed.

次に、モータ制御装置1は、回転始動処理S80を実行する。回転始動処理S80は、電流指令部3及び電圧指令部4が、回転子20の初期位置が推定された状態でモータ2の回転を始動させる処理である。推定された角速度及び推定位置に基づいて、電流指令部3がi指令、i指令を生成し、電圧指令部4がV指令、V指令、及びV指令を生成することで、モータ2の回転を始動させる。 Next, the motor control device 1 executes a rotation starting process S80. The rotation starting process S80 is a process in which the current command unit 3 and the voltage command unit 4 start the rotation of the motor 2 in a state in which the initial position of the rotor 20 is estimated. Based on the estimated angular velocity and estimated position, the current command unit 3 generates the id command and the iq command, and the voltage command unit 4 generates the Vu command, the Vv command, and the Vw command, Start the motor 2 to rotate.

次に、モータ制御装置1は、位相差演算処理S90を実行する。位相差演算処理S90は、回転子位置演算部15が、位置推定部9で推定された回転子20の位置と、回転パルス回転子位置演算部14で演算した位置との位相差を演算する処理である。位相差演算処理S90では、回転子位置演算部15は、モータ2の始動後の回転パルスのカウントごとに、当該回転パルスに基づく回転子20の位置と、推定位置との差分を積算し、積算値の平均値から位相差を演算する。 Next, the motor control device 1 executes phase difference calculation processing S90. In the phase difference calculation process S90, the rotor position calculator 15 calculates the phase difference between the position of the rotor 20 estimated by the position estimator 9 and the position calculated by the rotation pulse rotor position calculator 14. is. In the phase difference calculation process S90, the rotor position calculator 15 integrates the difference between the position of the rotor 20 based on the rotation pulse and the estimated position each time the rotation pulse is counted after the motor 2 is started. Calculate the phase difference from the average value of the values.

ここで、位置推定部9は、位置を連続的に推定できる。一方、回転パルスは、所定の間隔の電気角位置にて立ち上がり、立ち下がりを繰り返す不連続なものであり、回転パルスの立ち上がり位置(または立ち下がり位置)と図6に示す誘起電圧が正から負に変化する回転子20の基準位置(d軸)とは、同期が取られているわけではないので、推定された位置と、回転パルスに基づく回転子の位置との間には、位相差が生じる。 Here, the position estimator 9 can continuously estimate the position. On the other hand, the rotation pulse is discontinuous, repeating rising and falling at predetermined intervals of electrical angle. Since it is not synchronized with the reference position (d-axis) of the rotor 20 that changes to , there is a phase difference between the estimated position and the position of the rotor based on the rotation pulse. occur.

従って、位相差を演算するために、回転子位置演算部15は、回転パルスに基づく回転子20の位置と、推定位置との差分を取得する。具体的には、回転子位置演算部15は、回転パルスのエッジ毎(すなわち、カウント値毎)に、回転パルスに基づく回転子位置の値と推定位置の差分を計算することによって、当該カウント値における位相差を演算する。なお、回転子位置演算部15は、初期値演算処理S70で取得した初期値に対して、回転始動時にカウントした分のカウント値を加算することによって、現在のカウント値を演算できる。具体的には、カウント値が10であって、刻み角度が11.25°である場合、回転子位置演算部15は、「カウント値:10 × 刻み角度:11.25°= 回転パルスに基づく回転子位置:112.5°」という演算によって、回転パルスに基づく回転子位置を取得可能である。この時点における位置推定部9による推定位置が120°であった場合、回転子位置演算部15は、「推定位置:120°-回転パルスに基づく回転子位置:112.5°=位相差:7.5°」という演算によって、「カウント値:10」における位相差が7.5°であると演算できる。 Therefore, in order to calculate the phase difference, the rotor position calculator 15 obtains the difference between the position of the rotor 20 based on the rotation pulse and the estimated position. Specifically, the rotor position calculation unit 15 calculates the difference between the rotor position value based on the rotation pulse and the estimated position for each edge of the rotation pulse (that is, for each count value), thereby obtaining the count value. Calculate the phase difference at The rotor position calculation unit 15 can calculate the current count value by adding the count value counted at the start of rotation to the initial value acquired in the initial value calculation processing S70. Specifically, when the count value is 10 and the increment angle is 11.25°, the rotor position calculation unit 15 determines “count value: 10 × increment angle: 11.25° = based on rotation pulse. Rotor position: 112.5°” can obtain the rotor position based on the rotation pulse. If the position estimated by the position estimating unit 9 at this time is 120°, the rotor position calculating unit 15 outputs the following information: "estimated position: 120° - rotor position based on rotation pulse: 112.5° = phase difference: 7 .5°”, it can be calculated that the phase difference at “count value: 10” is 7.5°.

ここで、図7の上段側のグラフに示すように、回転パルスのカウント値から演算される回転子位置は、位置推定部9によって推定された位置推定に対して位相差を持った状態で、そのまま推移する。そのため、横軸の各位置、すなわち各カウント値において、位相差が生じている。図7の上段側のグラフでは、理解を容易とするために、位相差を大きくデフォルメして示している。なお、回転パルスのカウント値から演算される回転子位置の時間推移を拡大すると、図8において破線で示すグラフのような形状となる。すなわち、ある回転パルスをカウントした瞬間は、演算結果に係る回転子位置の値が急激に立ち上がり、次の回転パルスをカウントするまでの間は、回転子位置の値は一定となる。 Here, as shown in the upper graph of FIG. 7, the rotor position calculated from the rotation pulse count value has a phase difference with respect to the position estimation estimated by the position estimator 9, Continue as is. Therefore, a phase difference occurs at each position on the horizontal axis, that is, at each count value. In the upper graph of FIG. 7, the phase difference is greatly deformed for easy understanding. If the time transition of the rotor position calculated from the count value of the rotation pulses is enlarged, it will have a shape like the graph indicated by the dashed line in FIG. That is, at the moment when a certain rotation pulse is counted, the rotor position value related to the calculation result rises sharply, and the rotor position value remains constant until the next rotation pulse is counted.

ここで、センサ歯車16の歯18の製造誤差などの影響によって、回転パルスもカウント値ごとに僅かなずれが生じる場合もある。そのため、回転子位置演算部15は、一つのカウント値に係る位相差を演算したら、当該値で確定するのではなく、複数のカウント値に対応する位相差を総合的に判断して、位相差を確定する。 Here, due to the influence of manufacturing errors of the teeth 18 of the sensor gear 16, there are cases where the rotational pulse also slightly deviates for each count value. Therefore, after calculating the phase difference for one count value, the rotor position calculation unit 15 comprehensively judges the phase differences corresponding to a plurality of count values instead of fixing the value. confirm.

具体的に、回転子位置演算部15は、各カウント値における位相差を演算すると共に、それらの位相差を積算する。例えば、カウント値の初期値として6を記憶している場合、回転子位置演算部15は、カウント値7~9についても前述と同様の位相差を演算して積算しておく。そして、回転子位置演算部15は、当該積算値に対して、新たにカウント値10の位相差(7.5°)を加算する。同様に、回転子位置演算部15は、カウント値11以降も位相差の演算及び積算を行う。そして、回転子位置演算部15は、規定の回数に係る差分を積算したら、積算値から平均値を求め、当該平均値を回転パルスと位置推定における位置の位相差とする。具体的には、回転子位置演算部15は、位相差の演算を16回行うことで、「…7.5°+7.25°+…=118.4°」という積算値を取得したら、「積算値:118.4° ÷ 回数:16回 = 平均値:7.4°」という演算によって、7.4°を位相差として取得可能である。なお、積算値を求めるための回数は特に限定されない。また、複数の位相差から位相差を確定する方法は積算値から平均値を求める方法に限定されず、他の公知の統計処理によって算出してもよい。また、製造誤差等を無視する場合は、一つのカウント値から演算した値を位相差として確定させてもよい。 Specifically, the rotor position calculator 15 calculates the phase difference in each count value and integrates the phase differences. For example, when 6 is stored as the initial value of the count value, the rotor position calculator 15 calculates and integrates the phase differences for the count values 7 to 9 in the same manner as described above. Then, the rotor position calculator 15 newly adds the phase difference (7.5°) of the count value 10 to the integrated value. Similarly, the rotor position calculator 15 calculates and integrates the phase difference after the count value 11 as well. After accumulating the differences for the prescribed number of times, the rotor position calculation unit 15 obtains an average value from the accumulated values, and uses the average value as the phase difference between the rotation pulse and the position in the position estimation. Specifically, the rotor position calculation unit 15 calculates the phase difference 16 times. Integrated value: 118.4°/number of times: 16 times = average value: 7.4°", 7.4° can be obtained as the phase difference. Note that the number of times for obtaining the integrated value is not particularly limited. Further, the method of determining the phase difference from a plurality of phase differences is not limited to the method of calculating the average value from the integrated value, and may be calculated by other known statistical processing. Further, when ignoring manufacturing errors and the like, a value calculated from one count value may be determined as the phase difference.

回転子位置演算処理S110は、回転パルスに基づく回転子20の位置、位相差、及び角速度から演算された回転子20の微小回転量に基づいて、回転子20の位置を演算する処理である。図8に示すように、回転子位置演算部15は、破線で示される回転パルスに基づく回転子位置の値に対して、二点鎖線で示す位相差の値と、二点鎖線で示す微小回転量と、を加算することによって、実線で示される。実回転子位置を演算する。 The rotor position calculation process S110 is a process of calculating the position of the rotor 20 based on the minute rotation amount of the rotor 20 calculated from the position of the rotor 20 based on the rotation pulse, the phase difference, and the angular velocity. As shown in FIG. 8, the rotor position calculation unit 15 calculates the phase difference value indicated by the two-dot chain line and the minute rotation value indicated by the two-dot chain line with respect to the rotor position value based on the rotation pulse indicated by the broken line. is indicated by the solid line by adding the quantities . Compute the actual rotor position.

すなわち、前述のように、回転パルスに基づく回転子位置の値は、推定位置の位置に対して位相差を含んでいる。従って、回転子位置演算部15は、このような位相差を解消するために、回転パルスに基づく回転子位置の値に対して、位相差の値を加算する。なお、位相差の値として、位相差演算処理S90で演算した値が用いられる。 That is, as described above, the rotor position value based on the rotation pulse contains a phase difference with respect to the position of the estimated position. Therefore, in order to eliminate such a phase difference, the rotor position calculator 15 adds the value of the phase difference to the value of the rotor position based on the rotation pulse. Note that the value calculated in the phase difference calculation process S90 is used as the value of the phase difference.

また、前述のように、図8の破線のグラフに示すように、回転パルスに基づく回転子位置は、回転パルスがカウントされるタイミングに基づいて、段階的に増加していく。その一方、実際の回転子20の角度は、時間と共に連続的に変化するものである。従って、回転パルスに基づく回転子位置のうち、パルス間の微小区間(図8参照)における微小な位置の変化量である微小位置変化量(Δθ)を加算する必要がある。具体的には、回転子位置演算部15は、回転パルスのカウントがなされた時点から計測したタイマー値と、角速度(ω)とを掛け合わせることで、「微小位置変化量Δθ=角速度ω × タイマー値Δt」という演算を行うことにより、微小回転量を取得する。なお、図8に示すように、破線で示す回転子位置のグラフは、回転パルスをカウントしてから、微小な立ち上がり時間をかけて、値が増加している。そのため、二点鎖線で示す微小位置変化量のグラフは、当該立ち上がり時間に0に戻される。タイマー値Δtは、立ち上がり時間が経過してから、測定がスタートする。 Further, as described above, as shown in the dashed line graph in FIG. 8, the rotor position based on the rotation pulse increases stepwise based on the timing at which the rotation pulse is counted. On the other hand, the actual angle of the rotor 20 changes continuously with time. Therefore, it is necessary to add a minute position change amount (Δθ), which is a minute position change amount in a minute interval between pulses (see FIG. 8), of the rotor position based on the rotation pulses. Specifically, the rotor position calculation unit 15 multiplies the timer value measured from the time point when the rotation pulse is counted by the angular velocity (ω) to obtain "minute position change amount Δθ = angular velocity ω × timer A minute rotation amount is acquired by performing a calculation of "value Δt". As shown in FIG. 8, in the graph of the rotor position indicated by the broken line, the value increases over a minute rise time after counting the rotation pulses. Therefore, the minute position change amount graph indicated by the two-dot chain line is returned to 0 at the rising time. As for the timer value Δt, the measurement starts after the rise time has elapsed.

切替処理S120は、回転子位置演算部15が、指令部へ出力する実回転子位置として、位置推定部9による推定位置から、回転パルスに基づいて演算した実回転子位置(図8参照)へ切り替える処理である。例えば、回転子位置演算部15は、所定の回転数(例えば100rpm)未満の状態では、位置推定部9から取得した推定位置を指令部3,4へ出力して、モータ2を回転制御する。これに対し、回転子位置演算部15は、所定の回転数に達したら、回転子位置演算処理S110で演算した実回転子位置、すなわち回転パルスに基づいて演算された実回転子位置を指令部3,4へ出力するように、切替を行う。当該切替が完了したら、位置推定部9による推定位置は用いる必要がなくなるため、回転子位置演算部15は、高調波重畳部7による高調波重畳を停止する。 In the switching process S120, the rotor position calculation unit 15 changes the position estimated by the position estimation unit 9 to the actual rotor position (see FIG. 8) calculated based on the rotation pulse as the actual rotor position output to the command unit. This is the switching process. For example, the rotor position calculation unit 15 outputs the estimated position acquired from the position estimation unit 9 to the command units 3 and 4 to control the rotation of the motor 2 when the rotation speed is less than a predetermined number (for example, 100 rpm). On the other hand, the rotor position calculation unit 15 outputs the actual rotor position calculated in the rotor position calculation processing S110, that is, the actual rotor position calculated based on the rotation pulse when the predetermined number of revolutions is reached. Switching is performed so as to output to 3 and 4. When the switching is completed, there is no need to use the position estimated by the position estimator 9, so the rotor position calculator 15 stops the harmonic superimposing unit 7 from superimposing the harmonics.

なお、モータ2の減速の場合は、所定の回転数(例えば、400rpm)から、高調波重畳を開始させて、位置推定部9が推定位置を求めるようにして、100rpm以下になった際に、回転パルスを用いた実回転子位置の演算結果から、位置推定部9による推定位置を用いるように切り替えてよい。 In the case of deceleration of the motor 2, harmonic superposition is started from a predetermined number of revolutions (for example, 400 rpm), and the position estimator 9 obtains the estimated position. It may be switched to use the position estimated by the position estimating section 9 from the calculation result of the actual rotor position using the rotation pulse.

次に、本発明の実施形態に係るモータ制御装置1の作用・効果について説明する。 Next, functions and effects of the motor control device 1 according to the embodiment of the present invention will be described.

モータ制御装置1は、高調波重畳によって回転子の位置を推定する位置推定部9と、モータ2の回転パルスを検出する回転パルスセンサ8と、を備える。ここで、位置推定部9による推定位置のみだと、回転数が高くなってきた場合に対応することができない。また、回転パルスのみでも、センサ歯車16の構造上、刻み角度の単位でしか回転子20の位置を把握できないため、正確に回転子20の位置を演算することができない。これに対し、本実施形態に係るモータ制御装置1は、位置推定部9で推定された推定位置、及び回転パルスを用いて、回転子20の位置を演算する回転子位置演算部15を備える。従って、回転子位置演算部15は、回転パルスを用いて回転子位置を行うときに、位置推定部9の推定位置も有効に利用した上で、演算を行うことができる。すなわち、モータ2の回転の始動がなされたら、回転子位置演算部15は、位置推定部9で推定された回転子20の位置と回転パルスに基づく位置との位相差を演算する位相差演算処理S90を行う。これにより、刻み角度の範囲内において、回転子20の基準位置(d軸)がどこに存在しているかを把握することが可能となる。従って、回転子位置演算処理S110において、回転子位置演算部15は、回転パルスに基づく回転子20の位置に加えて、位相差に基づいて演算することで、正確に実回転子位置を演算することができる。以上より、レゾルバのように高価な装置を設けることなく、正確に実回転子位置を演算することが可能となる。従って、コストを低減しつつ回転子の位置を演算することができる。 The motor control device 1 includes a position estimator 9 that estimates the position of the rotor by superimposing harmonics, and a rotation pulse sensor 8 that detects rotation pulses of the motor 2 . Here, if only the position estimated by the position estimating section 9 is used, it is not possible to cope with the case where the number of revolutions increases. Moreover, even with only the rotation pulse, the position of the rotor 20 cannot be accurately calculated because the position of the rotor 20 can be grasped only in units of pitch angles due to the structure of the sensor gear 16 . In contrast, the motor control device 1 according to the present embodiment includes a rotor position calculator 15 that calculates the position of the rotor 20 using the estimated position estimated by the position estimator 9 and rotation pulses. Therefore, when calculating the rotor position using the rotation pulse, the rotor position calculator 15 can effectively use the estimated position of the position estimator 9 to perform the calculation. That is, when the rotation of the motor 2 is started, the rotor position calculator 15 performs phase difference calculation processing to calculate the phase difference between the position of the rotor 20 estimated by the position estimator 9 and the position based on the rotation pulse. S90 is performed. This makes it possible to grasp where the reference position (d-axis) of the rotor 20 exists within the range of the pitch angle. Therefore, in the rotor position calculation process S110, the rotor position calculator 15 accurately calculates the actual rotor position by calculating based on the phase difference in addition to the position of the rotor 20 based on the rotation pulse. be able to. As described above, it is possible to accurately calculate the actual rotor position without providing an expensive device such as a resolver. Therefore, the position of the rotor can be calculated while reducing costs.

始動処理S80の前段階で、回転子位置演算部15は、位置推定部9によって推定された回転子の初期位置と、回転パルスセンサ8の刻み角度との対応関係に基づいて、回転パルスの初期値を演算する初期値演算処理S70を行ってよい。この場合、回転子位置演算部15は、モータ2の回転始動時に、パルスの初期値を把握した上で、実回転子位置の演算を行うことができる。そのため、回転子位置演算部15による、回転子位置の演算が行い易くなる。 At the stage prior to the starting process S80, the rotor position calculation unit 15 calculates the initial position of the rotation pulse based on the correspondence relationship between the initial position of the rotor estimated by the position estimation unit 9 and the pitch angle of the rotation pulse sensor 8. An initial value calculation process S70 for calculating a value may be performed. In this case, the rotor position calculation unit 15 can calculate the actual rotor position after ascertaining the initial value of the pulse when the motor 2 starts rotating. Therefore, the rotor position can be easily calculated by the rotor position calculator 15 .

位相差演算処理S90では、回転子位置演算部15は、モータの始動後の回転パルスのカウントごとに、当該回転パルスに基づく回転子の位置と、推定位置との差分を積算し、積算値の平均値から位相差を演算してよい。この場合、回転子位置演算部15は、単一のパルスのカウント時の差分だけでなく、カウントごとの差分を総合的に考慮した上で、位相差を演算することができる。従って、センサ歯車16の歯18ごとの製造誤差によらず、位相差が演算可能となる。 In the phase difference calculation process S90, the rotor position calculation unit 15 integrates the difference between the rotor position based on the rotation pulse and the estimated position each time the rotation pulse is counted after the motor is started, and calculates the integrated value. A phase difference may be calculated from the average value. In this case, the rotor position calculator 15 can calculate the phase difference by comprehensively considering not only the difference when counting a single pulse, but also the difference for each count. Therefore, the phase difference can be calculated regardless of the manufacturing error of each tooth 18 of the sensor gear 16 .

また、回転パルスのみに基づく回転子20の位置は、パルス間の位置変化が不明であるため一定となる(例えば図8の破線のグラフ参照)。これに対し、回転子位置演算処理S110において、回転子位置演算部15は、回転パルスに基づく回転子20の位置に加えて、パルス間における回転子の微小位置変化量に基づくことで、パルス間の位置変化も反映させて、正確に実回転子位置を演算することができる。 Also, the position of the rotor 20 based only on rotation pulses is constant because the position change between pulses is unknown (see, for example, the dashed line graph in FIG. 8). On the other hand, in the rotor position calculation processing S110, the rotor position calculation unit 15 calculates the position of the rotor 20 based on the rotation pulse, and also calculates the position of the rotor 20 based on the minute position change amount between the pulses. It is possible to accurately calculate the actual rotor position by also reflecting the change in the position of .

回転子位置演算処理S110では、回転子位置演算部15は、回転パルスのカウントがなされた時点から計測したタイマー値と、角速度とを掛け合わせることで、微小位置変化量を演算してよい。このように、角速度とタイマー値を用いることで、微小位置変化量を容易に演算することが可能となる。 In the rotor position calculation process S110, the rotor position calculation unit 15 may calculate the minute position change amount by multiplying the angular velocity by the timer value measured from the time when the rotation pulse is counted. By using the angular velocity and the timer value in this way, it is possible to easily calculate the minute position change amount.

回転子位置演算部15は、所定回転数以上の場合、回転パルスを用いて回転子の位置を演算し、所定回数未満の場合、位置推定部による推定位置を回転子の位置とするように、切り替えを行ってよい。これにより、モータ2の回転の始動直後は、位置推定部9による推定位置を回転子の位置として採用しつつ、前述の位相差演算処理S90や回転子位置演算処理S110などを行うことで、回転パルスを用いた回転子の位置の演算の準備を行うことができる。そして、ある程度回転数が上がった後は、回転パルスを用いることで、高周波重畳による位置推定よりも正確に、回転子20の位置を演算することができる。 The rotor position calculation unit 15 calculates the position of the rotor using the rotation pulse when the number of rotations is equal to or greater than a predetermined number of rotations, and uses the position estimated by the position estimation unit as the position of the rotor when the number of rotations is less than the predetermined number of rotations. You can switch. As a result, immediately after the start of rotation of the motor 2, the position estimated by the position estimator 9 is used as the position of the rotor, and the above-described phase difference calculation processing S90 and rotor position calculation processing S110 are performed. Provision can be made for calculating rotor position using pulses. Then, after the number of revolutions has increased to some extent, the position of the rotor 20 can be calculated more accurately than position estimation based on high-frequency superimposition by using the rotation pulse.

本発明は、上述の実施形態に限定されるものではない。 The invention is not limited to the embodiments described above.

例えば、位置推定処理S10において、処理S20~S40が採用されたがこれらの方法に限定されるものではない。すなわち、他の公知の初期位置推定の方法を位置推定処理S10に対して適用してもよい。 For example, in the position estimation process S10, the processes S20 to S40 are adopted, but the method is not limited to these methods. That is, other known initial position estimation methods may be applied to the position estimation process S10.

また、上述の回転子位置演算部15は、切替処理S120を行っていた。しかし、このような切替に代えて、回転子位置演算部15は、回転パルスに基づく回転子の位置と、位置推定部による推定位置と、を合成してよい。例えば、回転パルスを用いて演算した実回転子位置とモータータパラメータ(R、Lq、Ldなど)から、固定座標系のeα、eβを演算し、高調波信号の信号と合成して、高調波重畳の信号振幅を決めるという方法を採用してもよい。例えば、固定座標系(α-β)における拡張誘起電圧は、以下の式(1)(2)(3)で示される。eωreは速度起因の拡張誘起電圧であるが、実回転子位置と対応する項であり、式(4)のように示される。ehは高調波重畳起因の拡張誘起電圧であり、式(5)のように示される。回転子の位置を示すθreは、式(6)で示される。

Figure 2022120508000002

Figure 2022120508000003

Figure 2022120508000004

Figure 2022120508000005

Figure 2022120508000006

α:α軸拡張誘起電圧
β:β軸拡張誘起電圧
:d軸拡張誘起電圧
:q軸拡張誘起電圧
Jθre:回転行列
θre:固定座標系のα軸に対して回転座標系のd軸がなす角度
dωre:d軸上の速度起因の拡張誘起電圧
qωre:q軸上の速度起因の拡張誘起電圧
dh:d軸上の高調波重畳起因の拡張誘起電圧
qh:q軸上の高調波重畳起因の拡張誘起電圧
ωre:電気角速度
:d軸インダクタンス
:q軸インダクタンス
R:抵抗
:回転座標系のd軸上の電流
:回転座標系のq軸上の電流
ドット付きのi:回転座標系のq軸上の電流時間微分値
:誘起電圧定数

Figure 2022120508000007
Further, the rotor position calculation unit 15 described above performs the switching process S120. However, instead of such switching, the rotor position calculator 15 may synthesize the rotor position based on the rotation pulse and the estimated position by the position estimator. For example, from the actual rotor position and motor parameters (R, Lq, Ld, etc.) calculated using the rotation pulse, eα and eβ in the fixed coordinate system are calculated, combined with the harmonic signal, and the harmonic A method of determining the signal amplitude for superimposition may be employed. For example, the extended induced voltage in the fixed coordinate system (α-β) is given by the following equations (1), (2), and (3). e ωre is a speed-induced extended induced voltage, which is a term corresponding to the actual rotor position, and is expressed as in Equation (4). eh is an extended induced voltage caused by superimposition of harmonics, and is expressed as in Equation (5). θre, which indicates the position of the rotor, is given by Equation (6).
Figure 2022120508000002

Figure 2022120508000003

Figure 2022120508000004

Figure 2022120508000005

Figure 2022120508000006

e α : α-axis extended induced voltage e β : β-axis extended induced voltage ed : d -axis extended induced voltage e q : q-axis extended induced voltage e Jθre : rotation matrix θre : coordinate rotated with respect to the α-axis of the fixed coordinate system Angle formed by the d-axis of the system e dωre : extended induced voltage caused by velocity on the d-axis e qωre : extended induced voltage caused by velocity on the q-axis e dh : extended induced voltage caused by superimposition of harmonics on the d-axis e qh : Extended induced voltage ωre caused by harmonic superimposition on the q-axis: Electrical angular velocity L d : d-axis inductance L q : q-axis inductance R: Resistance id : Current i q on the d -axis of the rotating coordinate system i q : Rotating coordinate system i q with a current dot on the q-axis of : current-time differential value on the q-axis of the rotating coordinate system K e : induced voltage constant

Figure 2022120508000007

回転数が上がるに従って、高周波重畳によるeα、eβの振幅よりも、回転パルスに基づく演算結果のeα、eβの振幅が支配的になる。このように、高周波重畳による位置推定から、回転パルスを用いた演算に非連続的に切替を行うのではなく、高調波重畳に演算と回転パルスを用いた演算との影響が徐々に変化していくように、連続的な切替を行う事が可能となる。 As the number of revolutions increases, the amplitudes of eα and eβ resulting from calculations based on rotation pulses become dominant over the amplitudes of eα and eβ due to high-frequency superimposition. In this way, instead of discontinuously switching from position estimation by high-frequency superimposition to calculation using rotation pulses, the influence of the calculation on harmonic superimposition and the calculation using rotation pulses gradually changes. It is possible to perform continuous switching as follows.

また、図1に示すモータ制御装置1の全体構成、及び図2に示すモータ2の構成は、一例に過ぎず、本発明の趣旨を逸脱しない範囲で、適宜変更可能である。 Also, the overall configuration of the motor control device 1 shown in FIG. 1 and the configuration of the motor 2 shown in FIG. 2 are merely examples, and can be changed as appropriate without departing from the scope of the present invention.

1…モータ制御装置、2…モータ、3…電流指令部(指令部)、4…電圧指令部(指令部)、7…高調波重畳部、8…回転パルスセンサ、9…位置推定部、15…回転子位置演算部、20…回転子、21…永久磁石、22…固定子。 DESCRIPTION OF SYMBOLS 1... Motor control apparatus 2... Motor 3... Current command part (command part) 4... Voltage command part (command part) 7... Harmonic superposition part 8... Rotational pulse sensor 9... Position estimation part 15 ... Rotor position calculator, 20 ... Rotor, 21 ... Permanent magnet, 22 ... Stator.

Claims (7)

固定子、及び永久磁石を有する回転子を備えるモータと、
前記モータに指令信号を送信する指令部と、
高調波を前記指令信号に重畳する高調波重畳部と、
高調波重畳によって前記回転子の位置を推定する位置推定部と、
前記モータの回転パルスを検出する回転パルスセンサと、
前記位置推定部で推定された推定位置、及び前記回転パルスを用いて、前記回転子の位置を演算する回転子位置演算部と、を備え、
前記指令部は、前記回転子の初期位置が推定された状態で前記モータの回転を始動させる始動処理を行い、
前記回転子位置演算部は、
前記位置推定部で推定された前記回転子の位置と前記回転パルスに基づく前記回転子の位置との位相差を演算する位相差演算処理を行い、
前記回転パルスに基づく前記回転子の位置、及び前記位相差に基づいて、前記回転子の位置を演算する回転子位置演算処理を行う、モータ制御装置。
a motor comprising a stator and a rotor having permanent magnets;
a command unit that transmits a command signal to the motor;
a harmonic superimposing unit that superimposes a harmonic on the command signal;
a position estimating unit that estimates the position of the rotor by superimposing harmonics;
a rotation pulse sensor for detecting rotation pulses of the motor;
a rotor position calculator that calculates the position of the rotor using the estimated position estimated by the position estimator and the rotation pulse;
The command unit performs a starting process for starting rotation of the motor in a state in which the initial position of the rotor is estimated,
The rotor position calculation unit includes:
performing a phase difference calculation process for calculating a phase difference between the position of the rotor estimated by the position estimation unit and the position of the rotor based on the rotation pulse;
A motor control device that performs rotor position calculation processing for calculating the position of the rotor based on the position of the rotor based on the rotation pulse and the phase difference.
前記始動処理の前段階で、前記回転子位置演算部は、前記位置推定部によって推定された前記回転子の初期位置と、前記回転パルスセンサの刻み角度との対応関係に基づいて、前記回転パルスの初期値を演算する初期値演算処理を行う、請求項1に記載のモータ制御装置。 In a stage prior to the start-up process, the rotor position calculation unit calculates the rotation pulse based on the correspondence relationship between the initial position of the rotor estimated by the position estimation unit and the step angle of the rotation pulse sensor. 2. The motor control device according to claim 1, which performs initial value calculation processing for calculating an initial value of . 前記位相差演算処理では、前記回転子位置演算部は、前記モータの始動後の前記回転パルスのカウントごとに、当該回転パルスに基づく回転子の位置と、前記推定位置との差分を積算し、積算値の平均値から前記位相差を演算する、請求項1又は2に記載のモータ制御装置。 In the phase difference calculation process, the rotor position calculation unit integrates the difference between the rotor position based on the rotation pulse and the estimated position each time the rotation pulse is counted after the motor is started, 3. The motor control device according to claim 1, wherein said phase difference is calculated from an average value of integrated values. 前記回転子位置演算処理では、前記回転子位置演算部は、パルス間における前記回転子の微小位置変化量にも基づいて、前記回転子の位置を演算する回転子位置演算処理を行う、請求項1~3の何れか一項に記載のモータ制御装置。 3. In the rotor position calculation processing, the rotor position calculation section performs rotor position calculation processing for calculating the position of the rotor based on a minute positional change amount of the rotor between pulses. 4. The motor control device according to any one of 1 to 3. 前記回転子位置演算処理では、回転子位置演算部は、前記回転パルスのカウントがなされた時点から計測したタイマー値と、角速度とを掛け合わせることで、前記微小位置変化量を演算する、請求項4に記載のモータ制御装置。 3. In the rotor position calculation process, the rotor position calculation unit calculates the minute position change amount by multiplying a timer value measured from the time when the rotation pulse is counted by an angular velocity. 5. The motor control device according to 4. 前記回転子位置演算部は、所定回転数以上の場合、回転パルスを用いて前記回転子の位置を演算し、前記所定回数未満の場合、前記位置推定部による前記推定位置を前記回転子の位置とするように、切り替えを行う、請求項1~5の何れか一項に記載のモータ制御装置。 The rotor position calculation unit calculates the position of the rotor using a rotation pulse when the number of rotations is equal to or greater than a predetermined number of rotations, and calculates the position of the rotor by calculating the position estimated by the position estimation unit when the number of rotations is less than the predetermined number of rotations. 6. The motor control device according to any one of claims 1 to 5, wherein switching is performed such that 前記回転子位置演算部は、前記回転パルスに基づく前記回転子の位置と、前記位置推定部による前記推定位置と、を合成する、請求項1~5の何れか一項に記載のモータ制御装置。 The motor control device according to any one of claims 1 to 5, wherein the rotor position calculator synthesizes the position of the rotor based on the rotation pulse and the estimated position by the position estimator. .
JP2021017438A 2021-02-05 2021-02-05 Motor Control Device Active JP7468390B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021017438A JP7468390B2 (en) 2021-02-05 2021-02-05 Motor Control Device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021017438A JP7468390B2 (en) 2021-02-05 2021-02-05 Motor Control Device

Publications (2)

Publication Number Publication Date
JP2022120508A true JP2022120508A (en) 2022-08-18
JP7468390B2 JP7468390B2 (en) 2024-04-16

Family

ID=82849075

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021017438A Active JP7468390B2 (en) 2021-02-05 2021-02-05 Motor Control Device

Country Status (1)

Country Link
JP (1) JP7468390B2 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000102299A (en) * 1998-09-28 2000-04-07 Hitachi Ltd Motor controller and controller for electric rolling stock and controller for hybrid car
JP2001339999A (en) * 2000-05-30 2001-12-07 Toshiba Corp Motor control device
JP2003143894A (en) * 2002-11-12 2003-05-16 Hitachi Ltd Estimating method for magnetic pole position of synchronous motor, motor controller, and electric rolling stock
JP2006166677A (en) * 2004-12-10 2006-06-22 Hitachi Ltd Synchronous motor drive device and method therefor
JP2018133890A (en) * 2017-02-14 2018-08-23 コニカミノルタ株式会社 Motor controller, image forming apparatus and motor control method
JP2019140745A (en) * 2018-02-07 2019-08-22 株式会社東芝 Synchronous motor driving device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000102299A (en) * 1998-09-28 2000-04-07 Hitachi Ltd Motor controller and controller for electric rolling stock and controller for hybrid car
JP2001339999A (en) * 2000-05-30 2001-12-07 Toshiba Corp Motor control device
JP2003143894A (en) * 2002-11-12 2003-05-16 Hitachi Ltd Estimating method for magnetic pole position of synchronous motor, motor controller, and electric rolling stock
JP2006166677A (en) * 2004-12-10 2006-06-22 Hitachi Ltd Synchronous motor drive device and method therefor
JP2018133890A (en) * 2017-02-14 2018-08-23 コニカミノルタ株式会社 Motor controller, image forming apparatus and motor control method
JP2019140745A (en) * 2018-02-07 2019-08-22 株式会社東芝 Synchronous motor driving device

Also Published As

Publication number Publication date
JP7468390B2 (en) 2024-04-16

Similar Documents

Publication Publication Date Title
JP4067949B2 (en) Motor control device
JP4716118B2 (en) Motor control device
KR101961106B1 (en) Sensorless control method and apparatus thereof
JP3971741B2 (en) Magnetic pole position detector
JP2014513911A (en) Method and apparatus for controlling electrical equipment
WO2018047524A1 (en) Motor control method, motor control system, and electric power steering system
JP2012110215A (en) Synchronous motor controller
JP2009171680A (en) Controller for permanent-magnet synchronous motors
JP5743344B2 (en) Control device for synchronous motor
JP2017055637A (en) Motor control apparatus for controlling motor on the basis of counter-electromotive voltage generated in winding of motor
JP4735439B2 (en) Initial magnetic pole position estimation device for permanent magnet type synchronous motor
JP4397889B2 (en) Magnetic pole position estimation device for synchronous motor
JP2008206330A (en) Device and method for estimating magnetic pole position of synchronous electric motor
WO2006043584A1 (en) Motor driving apparatus
CN103299535B (en) A kind of method and apparatus for rectification brshless DC motor
JP6465236B1 (en) Control device, control method, control system, learning device, and model data generation method
JP2022120508A (en) Motor control device
JP6766398B2 (en) Magnet temperature estimation method and magnet temperature estimation device
Raţă et al. Induction motor speed estimator using rotor slot harmonics
JP2007267547A (en) Motor controller
JP2007089336A (en) Revolution detection device and revolution detection method of turbocharger with electric motor
JP2013532936A5 (en)
JP5762794B2 (en) Power converter for motor drive
JP5853644B2 (en) Line current detection device and power conversion system
JP2010028981A (en) Rotor position estimating method for synchronous motor, and controller for the synchronous motor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230516

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240219

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240305

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240318

R150 Certificate of patent or registration of utility model

Ref document number: 7468390

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150