Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7818151B2 - Motor control device - Google Patents
[go: Go Back, main page]

JP7818151B2 - Motor control device - Google Patents

Motor control device

Info

Publication number
JP7818151B2
JP7818151B2 JP2024051419A JP2024051419A JP7818151B2 JP 7818151 B2 JP7818151 B2 JP 7818151B2 JP 2024051419 A JP2024051419 A JP 2024051419A JP 2024051419 A JP2024051419 A JP 2024051419A JP 7818151 B2 JP7818151 B2 JP 7818151B2
Authority
JP
Japan
Prior art keywords
current
voltage
motor
command value
axis
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.)
Active
Application number
JP2024051419A
Other languages
Japanese (ja)
Other versions
JP2025150512A (en
Inventor
昌春 浦山
Original Assignee
株式会社ゼネラル
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 株式会社ゼネラル filed Critical 株式会社ゼネラル
Priority to JP2024051419A priority Critical patent/JP7818151B2/en
Priority to PCT/JP2025/011270 priority patent/WO2025205521A1/en
Publication of JP2025150512A publication Critical patent/JP2025150512A/en
Application granted granted Critical
Publication of JP7818151B2 publication Critical patent/JP7818151B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P21/00Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
    • H02P21/05Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation specially adapted for damping motor oscillations, e.g. for reducing hunting
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P27/00Arrangements or methods for the control of AC motors characterised by the kind of supply voltage
    • H02P27/04Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage
    • H02P27/06Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage using DC to AC converters or inverters
    • H02P27/08Arrangements or methods for the control of AC motors characterised by the kind of supply voltage using variable-frequency supply voltage, e.g. inverter or converter supply voltage using DC to AC converters or inverters with pulse width modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Control Of Ac Motors In General (AREA)

Description

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

従来、モータのロータ位置を検出する位置センサを設けずにロータ位置を推定してモータを制御する方法が知られている。例えば特許文献1には、圧縮機を駆動する永久磁石同期モータについて、位置センサレスベクトル制御により、圧縮機の負荷トルクにモータのトルクを追従させるトルク制御を行うモータ制御装置について記載されている。このようなモータ制御装置では、モータ電流に基づいて軸誤差が算出され、軸誤差に基づいてモータの推定速度が算出され、モータの推定速度に基づいてロータ位置が推定される。 Conventionally, methods for controlling a motor by estimating rotor position without using a position sensor to detect the rotor position are known. For example, Patent Document 1 describes a motor control device for a permanent magnet synchronous motor that drives a compressor, which uses position sensorless vector control to perform torque control so that the motor torque follows the compressor load torque. In such a motor control device, an axis error is calculated based on the motor current, an estimated motor speed is calculated based on the axis error, and the rotor position is estimated based on the estimated motor speed.

特開2021-125898号公報Japanese Patent Application Laid-Open No. 2021-125898

モータを用いて圧縮機等を駆動する場合、ロータが1回転する間に負荷トルクが周期的に変動する。このように周期的な負荷トルクの変動を持つ負荷に接続されたモータについてトルク制御等を行うとモータ電流も周期的に変動することが考えられる。ロータ位置を推定する際に、モータ電流の周期的な変動を想定していないと、ロータ位置の推定精度が低下する可能性がある。 When a motor is used to drive a compressor or other device, the load torque fluctuates periodically during one rotation of the rotor. When torque control or other control is performed on a motor connected to a load with such periodic load torque fluctuations, the motor current may also fluctuate periodically. If periodic fluctuations in motor current are not taken into account when estimating rotor position, the accuracy of the rotor position estimation may decrease.

例えばモータを駆動するインバータに供給されるDC電圧によりモータの出力電圧が制限されている電圧飽和領域では、上記のような負荷トルクの周期的な変動に加え、電圧指令値の振幅(出力電圧振幅)の変動も抑制する必要がある。このような負荷トルク及び電圧振幅の両方の変動を抑える方法としてモータ電流を調整する方法が考えられるが、この場合モータ電流の周期的な変動も顕著になるため、ロータ位置の推定精度が低下しやすくなる。 For example, in the voltage saturation region where the motor output voltage is limited by the DC voltage supplied to the inverter that drives the motor, in addition to the periodic fluctuations in load torque described above, it is also necessary to suppress fluctuations in the amplitude of the voltage command value (output voltage amplitude). One way to suppress such fluctuations in both load torque and voltage amplitude is to adjust the motor current, but in this case, the periodic fluctuations in the motor current also become more pronounced, which can easily reduce the accuracy of rotor position estimation.

以上のような事情に鑑み、本発明の目的は、モータ電流が周期的に変動する場合でもロータ位置を高精度に推定することが可能なモータ制御装置を提供することにある。 In light of the above circumstances, the object of the present invention is to provide a motor control device that can estimate rotor position with high accuracy even when the motor current fluctuates periodically.

上記目的を達成するため、本発明の一形態に係るモータ制御装置は、電流検出部と、電流変動抽出部と、位置推定部とを具備する。
前記電流検出部は、モータに流れるモータ電流を検出する。
前記電流変動抽出部は、前記モータ電流の周期的な変動成分である電流変動成分を抽出する。
前記位置推定部は、前記電流変動成分に基づいて、前記モータのロータ位置を推定する。
In order to achieve the above object, a motor control device according to one aspect of the present invention includes a current detection unit, a current fluctuation extraction unit, and a position estimation unit.
The current detection unit detects a motor current flowing through a motor.
The current fluctuation extraction unit extracts a current fluctuation component that is a periodic fluctuation component of the motor current.
The position estimator estimates a rotor position of the motor based on the current fluctuation component.

このモータ制御装置では、モータ電流に含まれる周期的な変動成分である電流変動成分に基づいてモータのロータ位置が推定される。これにより、モータ電流が周期的に変動する場合でもロータ位置を高精度に推定することが可能となる。 In this motor control device, the motor rotor position is estimated based on the current fluctuation component, which is a periodic fluctuation component contained in the motor current. This makes it possible to estimate the rotor position with high accuracy even when the motor current fluctuates periodically.

前記モータ制御装置は、さらに、前記モータのインダクタンスと前記電流変動成分の微分値とに基づいて、前記電流変動成分により生じる誘起電圧であるインダクタンス電圧を算出するインダクタンス電圧算出部を具備してもよい。この場合、前記位置推定部は、前記インダクタンス電圧に基づいて前記ロータ位置を推定してもよい。 The motor control device may further include an inductance voltage calculation unit that calculates an inductance voltage, which is an induced voltage generated by the current fluctuation component, based on the inductance of the motor and the differential value of the current fluctuation component. In this case, the position estimation unit may estimate the rotor position based on the inductance voltage.

これにより、電流変動成分により生じる誘起電圧であるインダクタンス電圧を計算に入れてロータ位置を推定することが可能となり、ロータ位置の推定精度を向上することが可能となる。 This makes it possible to estimate the rotor position by taking into account the inductance voltage, which is an induced voltage generated by current fluctuation components, thereby improving the accuracy of rotor position estimation.

前記電流変動抽出部は、互いに周期の異なる2以上の電流変動成分を抽出してもよい。この場合、前記インダクタンス電圧算出部は、前記2以上の電流変動成分の各々について前記電流変動成分の微分値に基づいて前記インダクタンス電圧を算出し、前記2以上の電流変動成分ごとの前記インダクタンス電圧を合算した合算インダクタンス電圧を算出してもよい。また前記位置推定部は、前記合算インダクタンス電圧に基づいて前記ロータ位置を推定してもよい。 The current fluctuation extraction unit may extract two or more current fluctuation components having different periods. In this case, the inductance voltage calculation unit may calculate the inductance voltage for each of the two or more current fluctuation components based on the differential value of the current fluctuation component, and calculate a total inductance voltage by summing the inductance voltages for each of the two or more current fluctuation components. The position estimation unit may also estimate the rotor position based on the total inductance voltage.

これにより、周期の異なる電流変動成分ごとに生じるインダクタンス電圧を計算に入れてロータ位置を推定することが可能となり、ロータ位置の推定精度をより向上することが可能となる。 This makes it possible to estimate the rotor position by taking into account the inductance voltage generated by each current fluctuation component with a different period, thereby further improving the accuracy of rotor position estimation.

前記電流変動抽出部は、前記モータ電流をフーリエ級数展開することで、前記電流変動成分を抽出してもよい。 The current fluctuation extraction unit may extract the current fluctuation component by expanding the motor current into a Fourier series.

フーリエ級数展開を用いることで、モータ電流のノイズの影響が抑制された電流変動成分を抽出することが可能となり、ロータ位置を高精度に推定することが可能となる。 By using Fourier series expansion, it is possible to extract the current fluctuation component with the influence of motor current noise suppressed, enabling the rotor position to be estimated with high accuracy.

前記電流変動抽出部は、前記モータ電流をフーリエ級数展開することで、前記モータ電流の1次の電流変動成分及び2次の電流変動成分を抽出してもよい。 The current fluctuation extraction unit may extract first-order current fluctuation components and second-order current fluctuation components of the motor current by expanding the motor current into a Fourier series.

例えばロータ位置の推定に用いる電流変動成分の種類が多いほどロータ位置の推定精度が向上するが、一方で処理時間が長くなる。そこで、1次及び2次の電流変動成分までを用いることで、位置推定の高精度化と処理時間の短縮を両立することが可能となる。 For example, the more types of current fluctuation components used to estimate rotor position, the more accurate the rotor position estimation, but the longer the processing time. Therefore, by using only primary and secondary current fluctuation components, it is possible to achieve both high accuracy in position estimation and reduced processing time.

前記位置推定部は、前記モータに対するトルク制御を行う場合に、前記電流変動成分に基づいて前記ロータ位置を推定してもよい。 The position estimation unit may estimate the rotor position based on the current fluctuation component when performing torque control on the motor.

これにより、トルク制御を行う場合にロータ位置を高精度に推定することが可能となる。 This makes it possible to estimate the rotor position with high accuracy when performing torque control.

前記位置推定部は、前記モータの制御領域が電圧飽和領域である場合に、前記電流変動成分に基づいて前記ロータ位置を推定してもよい。 The position estimation unit may estimate the rotor position based on the current fluctuation component when the control region of the motor is a voltage saturation region.

これにより、電圧飽和領域においてロータ位置を高精度に推定することが可能となる。 This makes it possible to estimate the rotor position with high accuracy in the voltage saturation region.

以上のように、本発明によれば、モータ電流が周期的に変動する場合でもロータ位置を高精度に推定することが可能となる。なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。 As described above, according to the present invention, it is possible to estimate the rotor position with high accuracy even when the motor current fluctuates periodically. Note that the effects described here are not necessarily limited to those described herein, and any of the effects described in this disclosure may be used.

本開示のモータ制御装置の動作例の説明に供する図である。10A to 10C are diagrams illustrating an example of the operation of the motor control device of the present disclosure. 本開示のモータ制御装置の動作例の説明に供する図である。10A to 10C are diagrams illustrating an example of the operation of the motor control device of the present disclosure. 本実施形態に係るモータ制御装置の構成例を示す図である。1 is a diagram illustrating an example of the configuration of a motor control device according to an embodiment of the present invention; 本実施形態に係る制御切替判定部の構成例を示す図である。FIG. 4 is a diagram illustrating an example of the configuration of a control switch determination unit according to the present embodiment. 本実施形態に係る補正トルク生成器の構成例を示す図である。FIG. 4 is a diagram illustrating an example of the configuration of a correction torque generator according to the present embodiment. 本実施形態に係る電圧飽和領域電圧指令値生成器の構成例を示す図である。FIG. 2 is a diagram illustrating an example of the configuration of a voltage saturation region voltage command value generator according to the present embodiment. 本実施形態に係る出力電圧制限指令値生成器の構成例を示す図である。FIG. 4 is a diagram illustrating an example of the configuration of an output voltage limit command value generator according to the present embodiment. 本実施形態に係る電流指令値算出器の動作例の説明に供する図である。5A and 5B are diagrams illustrating an example of the operation of a current command value calculator according to the present embodiment. 本実施形態に係る電流指令値算出器の動作例の説明に供する図である。5A and 5B are diagrams illustrating an example of the operation of a current command value calculator according to the present embodiment. 本実施形態に係る電圧ベクトル角算出器の動作例の説明に供する図である。10A and 10B are diagrams illustrating an example of the operation of the voltage vector angle calculator according to the present embodiment. 本実施形態に係るMTPI電圧振幅制限処理器の動作例の説明に供する図である。10A and 10B are diagrams illustrating an example of the operation of the MTPI voltage amplitude limiting processor according to the present embodiment. 出力電圧波形の一例を示す図である。FIG. 4 is a diagram illustrating an example of an output voltage waveform. 比較例として挙げる定常モデル及び本実施形態に係る過渡モデルによるモータ制御時の測定データを示すグラフである。10 is a graph showing measurement data during motor control using a steady-state model given as a comparative example and a transient model according to the present embodiment. 比較例として挙げる定常モデルによるモータ制御時の測定データを示すグラフである。10 is a graph showing measurement data during motor control using a steady-state model as a comparative example. 本実施形態に係る過渡モデルによるモータ制御時の測定データを示すグラフである。6 is a graph showing measurement data during motor control using a transient model according to the present embodiment.

以下、図面を参照しながら、本発明の実施形態を説明する。 Embodiments of the present invention will be described below with reference to the drawings.

本開示では、周期的な負荷トルク変動を有する圧縮機を駆動する永久磁石同期モータ(PMSM(Permanent Magnet Synchronous Motor))のトルク制御を位置センサレスベクトル制御により行うモータ制御装置、例えば空気調和装置または低温保存装置等に用いられるモータ制御装置を一例に挙げて説明する。しかし、開示の技術は、周期的な負荷トルク変動を有する負荷を駆動するモータのトルク制御を行うモータ制御装置に広く適用可能である。 This disclosure describes an example of a motor control device that uses position sensorless vector control to control the torque of a permanent magnet synchronous motor (PMSM) that drives a compressor with periodic load torque fluctuations, such as a motor control device used in an air conditioner or cryogenic storage device. However, the disclosed technology is widely applicable to motor control devices that perform torque control of a motor that drives a load with periodic load torque fluctuations.

<モータ制御装置の動作>
図1A及び図1Bは、本開示のモータ制御装置の動作例の説明に供する図である。
<Operation of the motor control device>
1A and 1B are diagrams illustrating an example of the operation of the motor control device of the present disclosure.

図1A及び図1Bに示す定誘起電圧楕円(図1A及び図1Bでは楕円の一部を図示)は、モータの誘起電圧Voが等しくなる電流ベクトル軌跡であり、電気角推定角速度ωeが大きくなると定誘起電圧楕円の径は小さくなる。図1Aに示す定誘起電圧楕円は、電気角推定角速度ωeが一定の場合の電流ベクトル軌跡を示す。また、図1Bに示す定誘起電圧楕円は、負荷トルク変動により電気角推定角速度ωeが変動する場合の電流ベクトル軌跡を示す。図1Bには、電気角推定角速度ωeの最大値における定誘起電圧楕円と、電気角推定角速度ωeの最小値における定誘起電圧楕円と、電気角推定角速度ωeの平均値における定誘起電圧楕円とを示す。 The constant induced voltage ellipse shown in Figures 1A and 1B (only a portion of the ellipse is shown in Figures 1A and 1B) is a current vector locus where the induced voltage Vo of the motor is constant, and the diameter of the constant induced voltage ellipse becomes smaller as the estimated electrical angle angular velocity ωe increases. The constant induced voltage ellipse shown in Figure 1A represents the current vector locus when the estimated electrical angle angular velocity ωe is constant. The constant induced voltage ellipse shown in Figure 1B represents the current vector locus when the estimated electrical angle angular velocity ωe fluctuates due to load torque fluctuations. Figure 1B shows the constant induced voltage ellipse at the maximum value of the estimated electrical angle angular velocity ωe, the constant induced voltage ellipse at the minimum value of the estimated electrical angle angular velocity ωe, and the constant induced voltage ellipse at the average value of the estimated electrical angle angular velocity ωe.

本開示のモータ制御装置は、モータの弱め磁束制御が行われる電圧飽和領域でのトルク制御を行う際、図1Bに示すように、トルク制御により±ΔTだけ変動する定トルク曲線T*(=To*±ΔT)と、変動する定誘起電圧楕円との交点に基づいて、q軸電流指令値Iq*及びd軸電流指令値Id*を算出する。例えば、本開示のモータ制御装置は、平均トルク指令値To*に補正トルクである変動トルク指令値ΔTを加算した合計トルク指令値T*が一定となる電流の軌跡である定トルク曲線と、出力電圧振幅Va(電圧指令値の振幅)を所望の振幅とするための誘起電圧指令値V0*及び電気角推定角速度ωeが一定となる電流の軌跡である定誘起電圧楕円との交点に基づいてd軸電流指令値Id*及びq軸電流指令値Iq*を算出する。なお、定誘起電圧楕円や定トルク曲線は、リアクタンス等のモータパラメータに基づいて一意に決まるものではなく、モータの運転状態によって刻々と変化する。 When performing torque control in the voltage saturation region where flux-weakening control of the motor is performed, the motor control device of the present disclosure calculates the q-axis current command value Iq* and the d-axis current command value Id* based on the intersection of the constant torque curve T* (= To*±ΔT), which fluctuates by ±ΔT due to torque control, with the fluctuating constant induced voltage ellipse, as shown in FIG. 1B. For example, the motor control device of the present disclosure calculates the d-axis current command value Id* and the q-axis current command value Iq* based on the intersection of the constant torque curve, which is the current locus at which the total torque command value T*, calculated by adding the fluctuating torque command value ΔT, which is the correction torque, to the average torque command value To*, is constant, with the constant induced voltage ellipse, which is the current locus at which the induced voltage command value V0* and the estimated electrical angle angular velocity ωe, which are constant, are required to achieve the desired output voltage amplitude Va (the amplitude of the voltage command value). Note that the constant induced voltage ellipse and the constant torque curve are not uniquely determined based on motor parameters such as reactance, but change from moment to moment depending on the operating state of the motor.

また本開示において制御対象となるモータは、負荷トルクが周期的に変動する圧縮機を駆動するため、モータの機械角でみた回転数(機械角推定角速度ωm)には、負荷トルクの変動周期で変動する1次の変動成分や、負荷トルクの変動周期の整数倍の周期をもつ高次の変動成分が生じることが想定される。このため、機械角位相θmやモータ電流(d軸電流Idやq軸電流Iq)にも、周期的な負荷トルク変動に伴い、1次の変動成分やより高次の変動成分が含まれる。モータ制御装置は、このように機械角位相θmやモータ電流にも周期的な変動成分が含まれる状態で、上記したトルク制御を行うことになる。 Furthermore, since the motor to be controlled in this disclosure drives a compressor whose load torque fluctuates periodically, it is expected that the motor's rotation speed in terms of mechanical angle (estimated mechanical angle angular velocity ωm) will contain first-order fluctuation components that fluctuate with the load torque fluctuation period, as well as higher-order fluctuation components with periods that are integer multiples of the load torque fluctuation period. Therefore, the mechanical angle phase θm and motor current (d-axis current Id and q-axis current Iq) also contain first-order fluctuation components and higher-order fluctuation components due to the periodic load torque fluctuation. The motor control device will perform the torque control described above in a state in which the mechanical angle phase θm and motor current also contain periodic fluctuation components.

<モータ制御装置の構成>
図2は、本実施形態に係るモータ制御装置の構成例を示す図である。図2において、モータ制御装置100は、減算器11,38と、速度制御器12と、加算器13と、電圧指令値生成器14と、制御切替判定部15と、d-q/u,v,w変換器23と、PWM(Pulse Width Modulation)変調器24と、IPM(Intelligent Power Module)25とを有する。IPM25は、モータMに接続される。モータMの一例としてPMSMが挙げられる。
<Configuration of the motor control device>
Fig. 2 is a diagram showing an example of the configuration of a motor control device according to this embodiment. In Fig. 2, motor control device 100 includes subtractors 11 and 38, a speed controller 12, an adder 13, a voltage command value generator 14, a control switch determination unit 15, a d-q/u, v, w converter 23, a PWM (Pulse Width Modulation) modulator 24, and an IPM (Intelligent Power Module) 25. IPM 25 is connected to motor M. An example of motor M is a PMSM.

また、モータ制御装置100は、シャント抵抗26と、電流センサ27a,27bと、3φ電流算出器28とを有する。なお、モータ制御装置100は、シャント抵抗26、または、電流センサ27a,27bの何れか一方を有していれば良い。 The motor control device 100 also has a shunt resistor 26, current sensors 27a and 27b, and a 3φ current calculator 28. It is sufficient for the motor control device 100 to have either the shunt resistor 26 or the current sensors 27a and 27b.

また、モータ制御装置100は、u,v,w/d-q変換器29と、電流変動抽出器35と、インダクタンス電圧算出器36と、軸誤差演算器30と、PLL(Phase Locked Loop)制御器31と、位置推定器32と、1/Pn処理器33と、補正トルク生成器34とを有する。 The motor control device 100 also includes a u, v, w/d-q converter 29, a current fluctuation extractor 35, an inductance voltage calculator 36, an axis error calculator 30, a PLL (Phase Locked Loop) controller 31, a position estimator 32, a 1/Pn processor 33, and a correction torque generator 34.

電圧指令値生成器14は、通常制御領域電圧指令値生成器14aと、電圧飽和領域電圧指令値生成器14bと、スイッチSW1と、スイッチSW2とを有する。スイッチSW1は、接点14c-1,14c-2,14c-3を有する。スイッチSW2は、接点14c-4,14c-5,14c-6を有する。 The voltage command value generator 14 includes a normal control region voltage command value generator 14a, a voltage saturation region voltage command value generator 14b, a switch SW1, and a switch SW2. Switch SW1 includes contacts 14c-1, 14c-2, and 14c-3. Switch SW2 includes contacts 14c-4, 14c-5, and 14c-6.

減算器11は、モータ制御装置100の外部(例えば、上位のコントローラ)からモータ制御装置100へ入力された機械角速度指令値ωm*から、1/Pn処理器33より出力された現在の推定角速度である機械角推定角速度ωmを減算することにより角速度誤差Δωを算出し、算出した角速度誤差Δωを速度制御器12へ出力する。 The subtractor 11 calculates the angular velocity error Δω by subtracting the mechanical angular velocity estimated ωm, which is the current estimated angular velocity output from the 1/Pn processor 33, from the mechanical angular velocity command value ωm* input to the motor control device 100 from outside the motor control device 100 (for example, from a higher-level controller), and outputs the calculated angular velocity error Δω to the speed controller 12.

速度制御器12は、減算器11から入力された角速度誤差Δωがゼロに近づくような平均トルク指令値To*を生成し、生成した平均トルク指令値To*を加算器13へ出力する。 The speed controller 12 generates an average torque command value To* such that the angular velocity error Δω input from the subtractor 11 approaches zero, and outputs the generated average torque command value To* to the adder 13.

加算器13は、速度制御器12より出力された平均トルク指令値To*と、補正トルク生成器34より出力された変動トルク指令値ΔTとを加算することにより合計トルク指令値T*を算出し、算出した合計トルク指令値T*を電圧指令値生成器14へ出力する。 The adder 13 calculates the total torque command value T* by adding the average torque command value To* output from the speed controller 12 and the fluctuating torque command value ΔT output from the correction torque generator 34, and outputs the calculated total torque command value T* to the voltage command value generator 14.

電圧指令値生成器14は、通常制御領域及び電圧飽和領域のそれぞれにおいて、加算器13より出力された合計トルク指令値T*に基づいてd軸電圧指令値Vd*及びq軸電圧指令値Vq*を生成し、生成したd軸電圧指令値Vd*及びq軸電圧指令値Vq*を出力する。電圧飽和領域とは、モータMの高回転領域で出力電圧振幅Vaが飽和して弱め磁束制御が行われる領域である。通常制御領域とは、電圧飽和領域以外の領域であって、出力電圧を可変してモータMが制御される領域であり、通常制御領域では、最大トルク/電流制御などが行われる。 The voltage command value generator 14 generates a d-axis voltage command value Vd* and a q-axis voltage command value Vq* based on the total torque command value T* output by the adder 13 in each of the normal control region and the voltage saturation region, and outputs the generated d-axis voltage command value Vd* and q-axis voltage command value Vq*. The voltage saturation region is a region in which the output voltage amplitude Va saturates in the high rotation region of the motor M, and flux-weakening control is performed. The normal control region is a region outside the voltage saturation region, in which the motor M is controlled by varying the output voltage, and in the normal control region, maximum torque/current control, etc., is performed.

電圧指令値生成器14は、制御切替判定部15より制御信号CONTROL_TYPE:A(通常制御)が出力された場合には、スイッチSW1の接点14c-1と接点14c-3とを接続するとともに、スイッチSW2の接点14c-4と接点14c-6とを接続して、通常制御領域電圧指令値生成器14aにより生成されるd軸電圧指令値Vd*及びq軸電圧指令値Vq*をd-q/u,v,w変換器23へ出力する。一方で、制御切替判定部15より制御信号CONTROL_TYPE:B(電圧飽和制御)が出力された場合には、電圧指令値生成器14は、スイッチSW1の接点14c-2と接点14c-3とを接続するとともに、スイッチSW2の接点14c-5と接点14c-6とを接続して、電圧飽和領域電圧指令値生成器14bにより生成されるd軸電圧指令値Vd*及びq軸電圧指令値Vq*をd-q/u
,v,w変換器23へ出力する。
When the control switch determination unit 15 outputs a control signal CONTROL_TYPE: A (normal control), the voltage command value generator 14 connects the contact 14c-1 and the contact 14c-3 of the switch SW1 and also connects the contact 14c-4 and the contact 14c-6 of the switch SW2, and outputs the d-axis voltage command value Vd* and the q-axis voltage command value Vq* generated by the normal control region voltage command value generator 14a to the d-q/u, v, w converter 23. On the other hand, when the control switch determination unit 15 outputs a control signal CONTROL_TYPE: B (voltage saturation control), the voltage command value generator 14 connects the contact 14c-2 and the contact 14c-3 of the switch SW1 and also connects the contact 14c-5 and the contact 14c-6 of the switch SW2, and outputs the d-axis voltage command value Vd* and the q-axis voltage command value Vq* generated by the voltage saturation region voltage command value generator 14b to the d-q/u, v, w converter 23.
, v, w converter 23.

制御切替判定部15は、出力電圧限界値Vdq_limitと、d軸電圧指令値Vd*と、q軸電圧指令値Vq*とに基づいて、モータMの現在の制御領域が通常制御領域と電圧飽和領域の何れであるかを判定する。そして、制御切替判定部15は、モータMの現在の制御領域が通常制御領域であると判定した場合には制御信号CONTROL_TYPE:A(通常制御)を電圧指令値生成器14へ出力し、モータMの現在の制御領域が電圧飽和領域であると判定した場合には制御信号CONTROL_TYPE:B(電圧飽和制御)を電圧指令値生成器14へ出力する。出力電圧限界値Vdq_limitは、IPM25の外部(例えば、図示しない電源コンバータ)からIPM25に供給される直流電圧Vdcが、制御系であるdq回転座標軸系における電圧値に変換されたものである。 The control switching determination unit 15 determines whether the current control region of the motor M is the normal control region or the voltage saturation region based on the output voltage limit value Vdq_limit, the d-axis voltage command value Vd*, and the q-axis voltage command value Vq*. If the control switching determination unit 15 determines that the current control region of the motor M is the normal control region, it outputs a control signal CONTROL_TYPE: A (normal control) to the voltage command value generator 14. If the control switching determination unit 15 determines that the current control region of the motor M is the voltage saturation region, it outputs a control signal CONTROL_TYPE: B (voltage saturation control) to the voltage command value generator 14. The output voltage limit value Vdq_limit is obtained by converting the DC voltage Vdc supplied to the IPM 25 from outside the IPM 25 (for example, a power converter, not shown) into a voltage value in the dq rotating coordinate system, which is the control system.

d-q/u,v,w変換器23は、電圧指令値生成器14より出力された2相のd軸電圧指令値Vd*及びq軸電圧指令値Vq*を、位置推定器32より出力された現在のロータ位置である電気角位相(dq軸位相)θeに基づいて、3相のU相出力電圧指令値Vu*、V相出力電圧指令値Vv*及びW相出力電圧指令値Vw*へ変換する。そして、dq/u,v,w変換器23は、U相出力電圧指令値Vu*、V相出力電圧指令値Vv*及びW相出力電圧指令値Vw*をPWM変調器24へ出力する。 The d-q/u,v,w converter 23 converts the two-phase d-axis voltage command value Vd* and q-axis voltage command value Vq* output from the voltage command value generator 14 into a three-phase U-phase output voltage command value Vu*, a V-phase output voltage command value Vv*, and a W-phase output voltage command value Vw* based on the electrical angle phase (dq-axis phase) θe, which is the current rotor position output from the position estimator 32. The dq/u,v,w converter 23 then outputs the U-phase output voltage command value Vu*, the V-phase output voltage command value Vv*, and the W-phase output voltage command value Vw* to the PWM modulator 24.

PWM変調器24は、U相出力電圧指令値Vu*、V相出力電圧指令値Vv*、W相出力電圧指令値Vw*と、PWMキャリア信号とに基づいて、6相のPWM信号を生成し、生成した6相のPWM信号をIPM25へ出力する。 The PWM modulator 24 generates six-phase PWM signals based on the U-phase output voltage command value Vu*, the V-phase output voltage command value Vv*, the W-phase output voltage command value Vw*, and the PWM carrier signal, and outputs the generated six-phase PWM signals to the IPM 25.

IPM25は、PWM変調器24より出力された6相のPWM信号に基づいて、IPM25の外部から供給される直流電圧Vdcを変換することにより、モータMのU相、V相、W相それぞれへ印加する交流電圧を生成し、それぞれの交流電圧をモータMのU相、V相、W相へ印加する。 The IPM 25 converts the DC voltage Vdc supplied from outside the IPM 25 based on the six-phase PWM signal output from the PWM modulator 24 to generate AC voltages to be applied to the U, V, and W phases of the motor M, and applies each of these AC voltages to the U, V, and W phases of the motor M.

3φ電流算出器28は、シャント抵抗26を用いた1シャント方式で母線電流が検出される場合、PWM変調器24より出力される6相のPWMスイッチング情報と、検出された母線電流とから、モータMのU相電流値Iu、V相電流値Iv、W相電流値Iwを算出する。または、3φ電流算出器28は、電流センサ27a,27bによってU相電流及びV相電流が検出される場合、残りのW相電流値Iwを"Iu+Iv+Iw=0"のキルヒホッフの法則に基づいて算出する。3φ電流算出器28は、算出した各相の相電流値Iu,Iv,Iwをu,v,w/d-q変換器29へ出力する。 When the bus current is detected using the single-shunt method with shunt resistor 26, 3φ current calculator 28 calculates the U-phase current value Iu, V-phase current value Iv, and W-phase current value Iw of motor M from the six-phase PWM switching information output from PWM modulator 24 and the detected bus current. Alternatively, when U-phase current and V-phase current are detected by current sensors 27a and 27b, 3φ current calculator 28 calculates the remaining W-phase current value Iw based on Kirchhoff's law: "Iu + Iv + Iw = 0." 3φ current calculator 28 outputs the calculated phase current values Iu, Iv, and Iw of each phase to u, v, w/d-q converter 29.

u,v,w/d-q変換器29は、位置推定器32より出力された現在のロータ位置を示す電気角位相θeに基づいて、3φ電流算出器28より出力された3相のU相電流値Iu、V相電流値Iv、W相電流値Iwを、2相のd軸電流Id及びq軸電流Iqへ変換する。そして、u,v,w/d-q変換器29は、d軸電流Id及びq軸電流Iqを電圧指令値生成器14、電流変動抽出器35、及び軸誤差演算器30へ出力する。 The u,v,w/d-q converter 29 converts the three-phase U-phase current value Iu, V-phase current value Iv, and W-phase current value Iw output from the 3φ current calculator 28 into two-phase d-axis current Id and q-axis current Iq based on the electrical angle phase θe indicating the current rotor position output from the position estimator 32. The u,v,w/d-q converter 29 then outputs the d-axis current Id and q-axis current Iq to the voltage command value generator 14, current fluctuation extractor 35, and axis error calculator 30.

なお、モータMのU相電流値Iu、V相電流値Iv、W相電流値Iwは、モータMの各相の電流値を検出した検出値である。従って、U相電流値Iu、V相電流値Iv、W相電流値Iwを変換したd軸電流Id及びq軸電流Iqも検出値であるといえる。モータMのベクトル制御では、d軸電流Id及びq軸電流Iqが、モータMに流れるモータ電流の検出値として用いられる。本実施形態では、3φ電流算出器28及びu,v,w/d-q変換器29により、モータに流れるモータ電流を検出する電流検出部が構成される。 The U-phase current value Iu, V-phase current value Iv, and W-phase current value Iw of motor M are detected values obtained by detecting the current values of each phase of motor M. Therefore, the d-axis current Id and q-axis current Iq obtained by converting the U-phase current value Iu, V-phase current value Iv, and W-phase current value Iw can also be considered detected values. In vector control of motor M, the d-axis current Id and q-axis current Iq are used as detected values of the motor current flowing through motor M. In this embodiment, the 3φ current calculator 28 and u, v, w/d-q converter 29 constitute a current detection unit that detects the motor current flowing through the motor.

電流変動抽出器35は、u,v,w/d-q変換器29より出力されたd軸電流Idと、位置推定器32より出力された機械角位相θmnとを用いて、d軸電流Idの周期的な変動成分であるd軸電流変動成分ΔIdを算出する。またu,v,w/d-q変換器29より出力されたq軸電流Iqと、位置推定器32より出力された機械角位相θmnを用いて、q軸電流Iqの周期的な変動成分であるq軸電流変動成分ΔIqを算出する。 The current fluctuation extractor 35 calculates the d-axis current fluctuation component ΔId, which is the periodic fluctuation component of the d-axis current Id, using the d-axis current Id output from the u,v,w/d-q converter 29 and the mechanical angle phase θmn output from the position estimator 32. It also calculates the q-axis current fluctuation component ΔIq, which is the periodic fluctuation component of the q-axis current Iq, using the q-axis current Iq output from the u,v,w/d-q converter 29 and the mechanical angle phase θmn output from the position estimator 32.

ここで機械角位相θmnは、n次の機械角位相である。本実施形態では、1次の機械角位相θm1と、2次の機械角位相θm2とが用いられる。また本実施形態では、電流変動抽出器35は、n次の電流変動成分について次数nごとにd軸電流変動成分ΔId及びq軸電流変動成分ΔIqを算出する。そして電流変動抽出器35は、d軸電流変動成分ΔId及びq軸電流変動成分ΔIqをインダクタンス電圧算出器36へ出力する。電流変動抽出器35の動作については、後に詳しく説明する。本実施形態では、電流変動抽出器35は、電流変動抽出部に相当する。 Here, the mechanical angle phase θmn is the nth-order mechanical angle phase. In this embodiment, the first-order mechanical angle phase θm1 and the second-order mechanical angle phase θm2 are used. In this embodiment, the current fluctuation extractor 35 calculates the d-axis current fluctuation component ΔId and the q-axis current fluctuation component ΔIq for each order n of the nth-order current fluctuation component. The current fluctuation extractor 35 then outputs the d-axis current fluctuation component ΔId and the q-axis current fluctuation component ΔIq to the inductance voltage calculator 36. The operation of the current fluctuation extractor 35 will be explained in detail later. In this embodiment, the current fluctuation extractor 35 corresponds to a current fluctuation extraction unit.

インダクタンス電圧算出器36は、電流変動抽出器35より出力されたd軸電流変動成分ΔIdと、モータMのd軸インダクタンスLdと、位置推定器32より出力された機械角位相θmnとを用いて、d軸電流変動成分ΔIdにより生じる誘起電圧であるインダクタンス電圧pLdId(以下では、d軸電流変動により生じるインダクタンス電圧pLdIdと記載する場合がある)を算出する。また、インダクタンス電圧算出器36は、電流変動抽出器35より出力されたq軸電流変動成分ΔIqと、モータMのd軸インダクタンスLdと、位置推定器32より出力された機械角位相θmnとを用いて、q軸電流変動成分ΔIqにより生じる誘起電圧であるインダクタンス電圧pLdIq(以下では、q軸電流変動により生じるインダクタンス電圧pLdIqと記載する場合がある)を算出する。ここでd軸電流変動により生じるインダクタンス電圧pLdId及びq軸電流変動により生じるインダクタンス電圧pLdIqにおける"p"は、微分演算子を表す。また、モータMのd軸インダクタンスLdは、モータ制御装置100に記憶される。 The inductance voltage calculator 36 calculates an inductance voltage pLdId (hereinafter sometimes referred to as the inductance voltage pLdId caused by d-axis current fluctuation), which is an induced voltage caused by the d-axis current fluctuation component ΔId, using the d-axis current fluctuation component ΔId output by the current fluctuation extractor 35, the d-axis inductance Ld of the motor M, and the mechanical angle phase θmn output by the position estimator 32. The inductance voltage calculator 36 also calculates an inductance voltage pLdIq (hereinafter sometimes referred to as the inductance voltage pLdIq caused by q-axis current fluctuation), which is an induced voltage caused by the q-axis current fluctuation component ΔIq, using the q-axis current fluctuation component ΔIq output by the current fluctuation extractor 35, the d-axis inductance Ld of the motor M, and the mechanical angle phase θmn output by the position estimator 32. Here, the "p" in the inductance voltage pLdId generated by d-axis current fluctuations and the inductance voltage pLdIq generated by q-axis current fluctuations represents a differential operator. The d-axis inductance Ld of the motor M is stored in the motor control device 100.

また本実施形態では、インダクタンス電圧算出器36は、n次の電流変動成分について次数nごとにd軸電流変動により生じるインダクタンス電圧pLdId及びq軸電流変動により生じるインダクタンス電圧pLdIqを算出する。そしてインダクタンス電圧算出器36は、d軸電流変動により生じるインダクタンス電圧pLdId及びq軸電流変動により生じるインダクタンス電圧pLdIqを軸誤差演算器30へ出力する。インダクタンス電圧算出器36の動作については、後に詳しく説明する。本実施形態では、インダクタンス電圧算出器36は、インダクタンス電圧算出部に相当する。 In addition, in this embodiment, the inductance voltage calculator 36 calculates the inductance voltage pLdId generated by the d-axis current fluctuation and the inductance voltage pLdIq generated by the q-axis current fluctuation for each order n of the nth-order current fluctuation component. The inductance voltage calculator 36 then outputs the inductance voltage pLdId generated by the d-axis current fluctuation and the inductance voltage pLdIq generated by the q-axis current fluctuation to the axis error calculator 30. The operation of the inductance voltage calculator 36 will be explained in detail later. In this embodiment, the inductance voltage calculator 36 corresponds to the inductance voltage calculation unit.

軸誤差演算器30は、電圧指令値生成器14より出力されたd軸電圧指令値Vd*及びq軸電圧指令値Vq*と、u,v,w/d-q変換器29より出力されたd軸電流Id及びq軸電流Iqと、インダクタンス電圧算出器36より出力されたd軸電流変動により生じるインダクタンス電圧pLdId及びq軸電流変動により生じるインダクタンス電圧pLdIqと、PLL制御器31により出力された電気角推定角速度ωeとを用いて、軸誤差Δθ(推定された回転軸と実際の回転軸との差)を算出する。そして、軸誤差演算器30は、算出した軸誤差ΔθをPLL制御器31へ出力する。このようにモータ制御装置100では、電流変動成分(d軸電流変動成分ΔId及びq軸電流変動成分ΔIq)に応じたインダクタンス電圧(d軸電流変動により生じるインダクタンス電圧pLdId及びq軸電流変動により生じるインダクタンス電圧pLdIq)を用いて軸誤差Δθが算出される。軸誤差演算器30の具体的な動作については、後で詳しく説明する。 The axis error calculator 30 calculates the axis error Δθ (the difference between the estimated rotation axis and the actual rotation axis) using the d-axis voltage command value Vd* and q-axis voltage command value Vq* output from the voltage command value generator 14, the d-axis current Id and q-axis current Iq output from the u,v,w/d-q converter 29, the inductance voltage pLdId generated by d-axis current fluctuations and the inductance voltage pLdIq generated by q-axis current fluctuations output from the inductance voltage calculator 36, and the electrical angle estimated angular velocity ωe output from the PLL controller 31. The axis error calculator 30 then outputs the calculated axis error Δθ to the PLL controller 31. In this way, the motor control device 100 calculates the axis error Δθ using the inductance voltages (inductance voltage pLdId caused by d-axis current fluctuations and inductance voltage pLdIq caused by q-axis current fluctuations) that correspond to the current fluctuation components (d-axis current fluctuation component ΔId and q-axis current fluctuation component ΔIq). The specific operation of the axis error calculator 30 will be described in detail later.

PLL制御器31は、軸誤差演算器30より出力された軸誤差Δθに基づいて現在の推定角速度である電気角推定角速度ωeを算出し、算出した電気角推定角速度ωeを位置推定器32、1/Pn処理器33、電圧指令値生成器14、及び軸誤差演算器30へ出力する。 The PLL controller 31 calculates the electrical angle estimated angular velocity ωe, which is the current estimated angular velocity, based on the axis error Δθ output from the axis error calculator 30, and outputs the calculated electrical angle estimated angular velocity ωe to the position estimator 32, 1/Pn processor 33, voltage command value generator 14, and axis error calculator 30.

位置推定器32は、PLL制御器31より出力された電気角推定角速度ωeに基づいて電気角位相θe及び機械角位相θmを推定する。そして、位置推定器32は、推定した電気角位相θeをd-q/u,v,w変換器23及びu,v,w/d-q変換器29へ出力し、推定した機械角位相θmを電圧指令値生成器14及び補正トルク生成器34へ出力する。なお、電圧指令値生成器14及び補正トルク生成器34へ出力される機械角位相θmは、1次の機械角位相θm1である。以下では、単に機械角位相"θm"と記載した場合、1次の機械角位相"θm1"のことを指すものとする。 The position estimator 32 estimates the electrical angle phase θe and the mechanical angle phase θm based on the electrical angle estimated angular velocity ωe output from the PLL controller 31. The position estimator 32 then outputs the estimated electrical angle phase θe to the d-q/u,v,w converter 23 and the u,v,w/d-q converter 29, and outputs the estimated mechanical angle phase θm to the voltage command value generator 14 and the correction torque generator 34. Note that the mechanical angle phase θm output to the voltage command value generator 14 and the correction torque generator 34 is the first-order mechanical angle phase θm1. Hereinafter, when the mechanical angle phase "θm" is simply referred to, it refers to the first-order mechanical angle phase "θm1".

また位置推定器32は、電気角推定角速度ωeに基づいて2次の機械角位相θm2を推定する。そして位置推定器32は、n次の機械角位相θmnとして、1次の機械角位相θm1(θm)及び2次の機械角位相θm2を、電流変動抽出器35及びインダクタンス電圧算出器36へ出力する。 The position estimator 32 also estimates the second-order mechanical angle phase θm2 based on the electrical angle estimated angular velocity ωe. The position estimator 32 then outputs the first-order mechanical angle phase θm1 (θm) and the second-order mechanical angle phase θm2 as the nth-order mechanical angle phase θmn to the current fluctuation extractor 35 and the inductance voltage calculator 36.

1/Pn処理器33は、PLL制御器31より出力された電気角推定角速度ωeをモータMの極対数Pnで除算することにより機械角推定角速度ωmを算出し、算出した機械角推定角速度ωmを減算器11,38へ出力する。 The 1/Pn processor 33 calculates the estimated mechanical angle angular velocity ωm by dividing the estimated electrical angle angular velocity ωe output from the PLL controller 31 by the number of pole pairs Pn of the motor M, and outputs the calculated estimated mechanical angle angular velocity ωm to the subtractors 11 and 38.

上記したPLL制御器31より出力された電気角推定角速度ωe及び1/Pn処理器33により出力された機械角推定角速度ωmは、モータMのロータの回転速度を推定したパラメータである。また、位置推定器32により出力される電気角位相θe及び機械角位相θmは、モータMのロータ位置を推定したパラメータである。本実施形態では、軸誤差演算器30、PLL制御器31、位置推定器32、及び1/Pn処理器33により、電流変動成分に基づいて、モータのロータ位置を推定する位置推定部が構成される。 The electrical angle estimated angular velocity ωe output by the PLL controller 31 and the mechanical angle estimated angular velocity ωm output by the 1/Pn processor 33 are parameters that estimate the rotational speed of the rotor of the motor M. Furthermore, the electrical angle phase θe and mechanical angle phase θm output by the position estimator 32 are parameters that estimate the rotor position of the motor M. In this embodiment, the axis error calculator 30, PLL controller 31, position estimator 32, and 1/Pn processor 33 constitute a position estimation unit that estimates the rotor position of the motor based on the current fluctuation component.

減算器38は、1/Pn処理器33より出力された機械角推定角速度ωmから機械角速度指令値ωm*を減算することにより機械角推定角速度変動Δωmを算出し、算出した機械角推定角速度変動Δωmを補正トルク生成器34へ出力する。 The subtractor 38 calculates the mechanical angle estimated angular velocity fluctuation Δωm by subtracting the mechanical angular velocity command value ωm* from the mechanical angle estimated angular velocity ωm output from the 1/Pn processor 33, and outputs the calculated mechanical angle estimated angular velocity fluctuation Δωm to the correction torque generator 34.

補正トルク生成器34は、モータMの振動が許容できる速度変動範囲である速度変動許容値|Δωm|*、減算器38から出力された機械角推定角速度変動Δωm、及び、位置推定器32より出力された機械角位相θmに基づいて、周期的な速度変動である機械角推定角速度変動Δωmを速度変動許容値|Δωm|*以下に抑制するための変動トルク指令値ΔTを生成し、生成した変動トルク指令値ΔTを加算器13へ出力する。なお、速度変動許容値|Δωm|*は、モータ制御装置100内に記憶されている。また、機械角推定角速度変動(速度変動)Δωmは、上記の角速度誤差Δωの値と正負の符号が異なるだけである。 The correction torque generator 34 generates a fluctuating torque command value ΔT for suppressing the mechanical angle estimated angular velocity fluctuation Δωm, which is a periodic speed fluctuation, to the speed fluctuation tolerance value |Δωm|* or less based on the speed fluctuation tolerance value |Δωm|*, which is the speed fluctuation range within which vibrations of the motor M are tolerable, the mechanical angle estimated angular velocity fluctuation Δωm output from the subtractor 38, and the mechanical angle phase θm output from the position estimator 32, and outputs the generated fluctuating torque command value ΔT to the adder 13. The speed fluctuation tolerance value |Δωm|* is stored in the motor control device 100. The mechanical angle estimated angular velocity fluctuation (speed fluctuation) Δωm differs from the value of the angular velocity error Δω only in sign, positive or negative.

<制御切替判定部の構成>
図3は、本実施形態に係る制御切替判定部の構成例を示す図である。図3において、制御切替判定部15は、電圧振幅算出器15aと、制御切替判定器15bとを有し、モータMの現在の制御領域が通常制御領域か電圧飽和領域かを以下のようにして判定する。
<Configuration of control switching determination unit>
3 is a diagram showing an example of the configuration of the control switching determination unit 15 according to this embodiment. In FIG. 3, the control switching determination unit 15 has a voltage amplitude calculator 15a and a control switching determiner 15b, and determines whether the current control region of the motor M is the normal control region or the voltage saturation region as follows.

電圧振幅算出器15aは、電圧指令値生成器14より出力されたd軸電圧指令値Vd*及びq軸電圧指令値Vq*基づいて、式(1)に従って、出力電圧振幅Vaを算出する。
The voltage amplitude calculator 15a calculates the output voltage amplitude Va based on the d-axis voltage command value Vd* and the q-axis voltage command value Vq* output from the voltage command value generator 14 in accordance with equation (1).

制御切替判定器15bは、電圧振幅算出器15aで算出された出力電圧振幅Vaのピーク値と、出力電圧限界値Vdq_limitとを比較する。 The control switching determiner 15b compares the peak value of the output voltage amplitude Va calculated by the voltage amplitude calculator 15a with the output voltage limit value Vdq_limit.

制御切替判定器15bは、出力電圧振幅Vaのピーク値が出力電圧限界値Vdq_limit未満である場合は、モータMの現在の制御領域が通常制御領域であると判定し、制御信号CONTROL_TYPE:Aを電圧指令値生成器14へ出力する。 If the peak value of the output voltage amplitude Va is less than the output voltage limit value Vdq_limit, the control switching determiner 15b determines that the current control region of the motor M is the normal control region and outputs the control signal CONTROL_TYPE: A to the voltage command value generator 14.

一方で、出力電圧振幅Vaのピーク値が出力電圧限界値Vdq_limit以上である場合は、制御切替判定器15bは、モータMの現在の制御領域が電圧飽和領域であると判定し、制御信号CONTROL_TYPE:Bを電圧指令値生成器14へ出力する。 On the other hand, if the peak value of the output voltage amplitude Va is equal to or greater than the output voltage limit value Vdq_limit, the control switching determiner 15b determines that the current control region of the motor M is the voltage saturation region and outputs the control signal CONTROL_TYPE: B to the voltage command value generator 14.

<補正トルク生成器の構成>
図4は、本実施形態に係る補正トルク生成器の構成例を示す図である。図4において、補正トルク生成器34は、速度変動成分分離器34aと、速度変動振幅算出器34bと、減算器34cと、補正トルク振幅算出器34dと、速度変動位相修正器34eと、直交成分分離器34fと、補正トルク復調器34gとを有する。
<Configuration of correction torque generator>
4 is a diagram showing an example of the configuration of the correction torque generator according to this embodiment. In FIG. 4, the correction torque generator 34 includes a speed fluctuation component separator 34a, a speed fluctuation amplitude calculator 34b, a subtractor 34c, a correction torque amplitude calculator 34d, a speed fluctuation phase corrector 34e, an orthogonal component separator 34f, and a correction torque demodulator 34g.

補正トルク生成器34は、速度変動振幅|Δωm|が、モータMの振動が実使用上問題とならない範囲の速度変動許容値|Δωm|*内になるように変動トルク指令値(補正トルク)ΔTの振幅(補正トルク振幅|ΔT|)及び位相を機械角周期毎に調整する。 The correction torque generator 34 adjusts the amplitude (correction torque amplitude |Δωm|) and phase of the fluctuation torque command value (correction torque) ΔT for each mechanical angle cycle so that the speed fluctuation amplitude |Δωm| is within the speed fluctuation tolerance |Δωm|*, within which vibration of the motor M will not cause problems in actual use.

速度変動成分分離器34aは、式(2.1)及び式(2.2)に従って、機械角推定角速度変動Δωmを、Δωmの基本波成分である2つのフーリエ係数ωsin(sin成分)とωcos(cos成分)に分離する。機械角推定角速度変動Δωmの基本波成分のフーリエ係数を機械角周期毎に算出することで、機械角推定角速度変動Δωmの高調波成分を排除して機械角推定角速度変動Δωmの基本波成分を精度よく抽出することができる。ωsin及びωcosは、機械角周期毎に更新される値である。
The speed fluctuation component separator 34a separates the mechanical angle estimated angular velocity fluctuation Δωm into two Fourier coefficients ωsin (sin component) and ωcos (cos component), which are the fundamental wave components of Δωm, according to equations (2.1) and (2.2). By calculating the Fourier coefficient of the fundamental wave component of the mechanical angle estimated angular velocity fluctuation Δωm for each mechanical angle cycle, it is possible to eliminate harmonic components of the mechanical angle estimated angular velocity fluctuation Δωm and accurately extract the fundamental wave component of the mechanical angle estimated angular velocity fluctuation Δωm. ωsin and ωcos are values that are updated for each mechanical angle cycle.

速度変動振幅算出器34bは、フーリエ係数ωsin,ωcosに基づいて、式(3)に従って、速度変動振幅|Δωm|を算出する。ωsin及びωcosは機械角周期毎に更新される値であるため、速度変動振幅|Δωm|も機械角周期毎に更新される。
The speed fluctuation amplitude calculator 34b calculates the speed fluctuation amplitude |Δωm| based on the Fourier coefficients ωsin and ωcos in accordance with equation (3). Because ωsin and ωcos are values that are updated every mechanical angle period, the speed fluctuation amplitude |Δωm| is also updated every mechanical angle period.

減算器34cは、速度変動振幅算出器34bより出力された速度変動振幅|Δωm|から速度変動許容値|Δωm|*を減算することにより速度変動誤差|Δωm|errを算出する。速度変動許容値|Δωm|*は、モータMの振動が許容できる範囲での速度変動振幅|Δωm|を規定したものである。 The subtractor 34c calculates the speed fluctuation error |Δωm|err by subtracting the speed fluctuation tolerance |Δωm|* from the speed fluctuation amplitude |Δωm| output by the speed fluctuation amplitude calculator 34b. The speed fluctuation tolerance |Δωm|* specifies the speed fluctuation amplitude |Δωm| within the allowable range of vibration of the motor M.

補正トルク振幅算出器34dは、速度変動振幅|Δωm|と速度変動許容値|Δωm|*との誤差に応じて補正トルク振幅|ΔT|を機械角周期毎に調整する。例えば、補正トルク振幅算出器34dは、式(4)に従って、速度変動振幅|Δωm|と速度変動許容値|Δωm|*との誤差である速度変動誤差|Δωm|errに補正ゲインkを乗算し、乗算結果と|ΔT|_oldとを加算することにより補正トルク振幅|ΔT|を算出する。式(4)における|ΔT|_oldは、前回の機械角周期における補正トルク振幅|ΔT|である。補正ゲインkを適切に設定することで、速度変動|Δω|が速度変動許容値|Δωm|*の境界でハンチングすることや、急激な負荷トルク変化によって速度変動|Δω|が速度変動許容値|Δωm|*よりも大きくなって振動が発生することを抑制できる。
The correction torque amplitude calculator 34d adjusts the correction torque amplitude |Δω| for each mechanical angle cycle in accordance with the error between the speed fluctuation amplitude |Δωm| and the speed fluctuation allowable value |Δωm|*. For example, the correction torque amplitude calculator 34d calculates the correction torque amplitude |ΔT| by multiplying the speed fluctuation error |Δωm|err, which is the error between the speed fluctuation amplitude |Δωm| and the speed fluctuation allowable value |Δωm|*, by a correction gain k according to equation (4) and adding the multiplication result to |ΔT|_old. In equation (4), |ΔT|_old is the correction torque amplitude |ΔT| for the previous mechanical angle cycle. By appropriately setting the correction gain k, it is possible to prevent hunting of the speed fluctuation |Δω| at the boundary of the speed fluctuation allowable value |Δωm|* and vibrations that occur when the speed fluctuation |Δω| exceeds the speed fluctuation allowable value |Δωm|* due to a sudden change in load torque.

速度変動位相修正器34eは、機械角周期毎に取得される機械角推定角速度変動Δωmの位相を修正する。例えば、速度変動位相修正器34eは、式(5.1)及び式(5.2)に従って、フーリエ係数ωsin,ωcosのそれぞれに補正ゲインkを乗算し、それぞれの乗算結果にωsin_i_old,ωcos_i_oldを加算する。式(5.1)におけるωsin_i_oldは、前回の機械角周期におけるωsin_iであり、式(5.2)におけるωcos_i_oldは、前回の機械角周期におけるωcos_iである。そして、速度変動位相修正器34eは、式(5.3)に従って、ωsin_i及びωcos_iの逆正接(Arctangent)を速度変動修正位相φωiとして算出する。この速度変動修正位相φωiが、トルク制御を行う際の位相の基準になり、この基準に対してπ/2遅角した位相が変動トルク指令値ΔTの位相(補正トルク位相)となる。
The speed fluctuation phase corrector 34e corrects the phase of the mechanical angle estimated angular velocity fluctuation Δωm acquired for each mechanical angle cycle. For example, the speed fluctuation phase corrector 34e multiplies each of the Fourier coefficients ωsin and ωcos by a correction gain k according to equations (5.1) and (5.2), and adds ωsin_i_old and ωcos_i_old to the respective multiplication results. ωsin_i_old in equation (5.1) is ωsin_i in the previous mechanical angle cycle, and ωcos_i_old in equation (5.2) is ωcos_i in the previous mechanical angle cycle. Then, the speed fluctuation phase corrector 34e calculates the arctangent of ωsin_i and ωcos_i as the speed fluctuation corrected phase φωi according to equation (5.3). This speed fluctuation correction phase φωi becomes the phase reference when torque control is performed, and the phase delayed by π/2 from this reference becomes the phase of the fluctuation torque command value ΔT (correction torque phase).

直交成分分離器34fは、補正トルク振幅|ΔT|及び速度変動修正位相φωiに基づいて、式(6.1)及び式(6.2)に従って、速度変動修正位相φωiのsin成分(ωsin_i)とcos成分(ωcos_i)とを算出する。この処理は、式(5.1)及び式(5.2)の演算による位相修正時の発散を防止する役割も有する。
The orthogonal component separator 34f calculates the sine component (ωsin_i) and cosine component (ωcos_i) of the speed fluctuation correction phase φωi in accordance with the corrected torque amplitude |ΔT| and the speed fluctuation correction phase φωi in accordance with the equations (6.1) and (6.2). This process also serves to prevent divergence during phase correction by the calculation of the equations (5.1) and (5.2).

補正トルク復調器34gは、速度変動修正位相φωiのsin成分(ωsin_i)とcos成分(ωcos_i)とに基づいて、式(7.1)及び式(7.2)に従って、変動トルク指令値ΔTを算出する。この処理により速度変動修正位相φωiからπ/2だけ遅角した補正トルク位相へ変換され、機械角位相θmでの変動トルク指令値ΔTの瞬時値が生成される。
The correction torque demodulator 34g calculates the fluctuation torque command value ΔT in accordance with the equations (7.1) and (7.2) based on the sine component (ωsin_i) and cosine component (ωcos_i) of the speed fluctuation correction phase φωi. This process converts the speed fluctuation correction phase φωi into a correction torque phase that is delayed by π/2, and generates an instantaneous value of the fluctuation torque command value ΔT at the mechanical angle phase θm.

なお、補正トルク復調器34gは、式(7.1)及び式(7.2)の代わりに式(8)に従って変動トルク指令値ΔTの瞬時値を算出しても良い。
The correction torque demodulator 34g may calculate the instantaneous value of the fluctuating torque command value ΔT according to the equation (8) instead of the equations (7.1) and (7.2).

そして、加算器13は、式(9)に従って、速度制御器12より出力された平均トルク指令値To*に変動トルク指令値ΔTを加算することにより合計トルク指令値T*を算出する。
Then, the adder 13 calculates the total torque command value T* by adding the fluctuating torque command value ΔT to the average torque command value To* output from the speed controller 12 according to equation (9).

<電圧飽和領域電圧指令値生成器の構成>
図5は、本実施形態に係る電圧飽和領域電圧指令値生成器の構成例を示す図である。図5において、電圧飽和領域電圧指令値生成器14bは、出力電圧制限指令値生成器14b1と、誘起電圧指令値算出器14b2と、電流指令値算出器14b3と、仮電圧指令値算出器14b4と、電圧ベクトル角算出器14b5と、電圧指令値算出器14b6とを有する。
<Configuration of voltage saturation region voltage command value generator>
5 is a diagram showing an example of the configuration of a voltage saturation region voltage command value generator according to this embodiment. In FIG. 5, the voltage saturation region voltage command value generator 14b includes an output voltage limit command value generator 14b1, an induced voltage command value calculator 14b2, a current command value calculator 14b3, a temporary voltage command value calculator 14b4, a voltage vector angle calculator 14b5, and a voltage command value calculator 14b6.

図6は、本実施形態に係る出力電圧制限指令値生成器の構成例を示す図である。図6において、出力電圧制限指令値生成器14b1は、MTPI電流指令値算出器14b1-1と、MTPI電圧指令値算出器14b1-2と、MTPI電圧振幅算出器14b1-3と、平均出力電圧生成器14b1-4と、MTPI電圧変動成分抽出器14b1-5と、加算器14b1-6,14b1-8と、MTPI電圧振幅制限処理器14b1-7とを有する。 Figure 6 is a diagram showing an example configuration of an output voltage limit command value generator according to this embodiment. In Figure 6, the output voltage limit command value generator 14b1 includes an MTPI current command value calculator 14b1-1, an MTPI voltage command value calculator 14b1-2, an MTPI voltage amplitude calculator 14b1-3, an average output voltage generator 14b1-4, an MTPI voltage fluctuation component extractor 14b1-5, adders 14b1-6 and 14b1-8, and an MTPI voltage amplitude limit processor 14b1-7.

出力電圧制限指令値生成器14b1は、合計トルク指令値T*、電気角推定角速度ωe、出力電圧限界値Vdq_limit、d軸電流Id、q軸電流Iq、及び、機械角位相θmに基づいて、出力電圧制限指令値Va*を生成する。この出力電圧制限指令値Va*は、出力電圧限界値Vdq_limitまでの範囲で出力電圧の変動振幅を調整し、出力電圧の変動位相を通常制御領域(MTPI制御領域)での出力電圧の変動位相と一致させるための電圧である。 The output voltage limit command value generator 14b1 generates an output voltage limit command value Va* based on the total torque command value T*, the estimated electrical angle angular velocity ωe, the output voltage limit value Vdq_limit, the d-axis current Id, the q-axis current Iq, and the mechanical angle phase θm. This output voltage limit command value Va* is a voltage that adjusts the amplitude of the output voltage fluctuation within a range up to the output voltage limit value Vdq_limit and matches the phase of the output voltage fluctuation with the phase of the output voltage fluctuation in the normal control region (MTPI control region).

図6において、MTPI電流指令値算出器14b1-1は、合計トルク指令値T*が一定となる電流の軌跡である定トルク曲線とMTPI曲線(最大トルク/電流制御曲線)との交点であるMTPI想定d軸電流指令値Id_mtpi*及びMTPI想定q軸電流指令値Iq_mtpi*を算出する。定トルク曲線とMTPI曲線との交点は、例えば、式(10)のモータトルク式と、q軸電流が既知のときのMTPI曲線上のd軸電流式である式(11)とを用いて算出される。
6, an MTPI current command value calculator 14b1-1 calculates an MTPI assumed d-axis current command value Id_mtpi* and an MTPI assumed q-axis current command value Iq_mtpi*, which are the intersections of a constant torque curve, which is a current locus at which the total torque command value T* is constant, and an MTPI curve (maximum torque/current control curve). The intersections of the constant torque curve and the MTPI curve are calculated using, for example, the motor torque equation of equation (10) and equation (11), which is the d-axis current equation on the MTPI curve when the q-axis current is known.

式(10)及び式(11)からd軸電流Idを消去すると、式(12)に示すように、q軸電流Iqに関する4次方程式を得ることができる。
By eliminating the d-axis current Id from equations (10) and (11), a quartic equation for the q-axis current Iq can be obtained as shown in equation (12).

式(12)に示す4次方程式の解として、式(12)に示す4次方程式に対して例えばニュートン法等を用いることで、合計トルク指令値T*の定トルク曲線とMTPI曲線との交点でのMTPI想定q軸電流指令値Iq_mtpi*に相当する解を導出することができる。 By applying, for example, Newton's method to the quartic equation shown in equation (12), it is possible to derive a solution corresponding to the MTPI assumed q-axis current command value Iq_mtpi* at the intersection of the constant torque curve of the total torque command value T* and the MTPI curve.

MTPI電流指令値算出器14b1-1は、式(12)の解であるMTPI想定q軸電流指令値Iq_mtpi*に基づいて式(11)のd軸電流式に従って、MTPI想定d軸電流指令値Id_mtpi*を算出する。 The MTPI current command value calculator 14b1-1 calculates the MTPI assumed d-axis current command value Id_mtpi* in accordance with the d-axis current equation (11) based on the MTPI assumed q-axis current command value Iq_mtpi*, which is the solution of equation (12).

MTPI電圧指令値算出器14b1-2は、MTPI想定d軸電流指令値Id_mtpi*、MTPI想定q軸電流指令値Iq_mtpi*及び電気角推定角速度ωeに基づいて、式(13.1)及び式(13.2)に示すPMSM電圧方程式に従って、MTPI想定d軸電圧Vd_mtpi*及びMTPI想定q軸電圧Vq_mtpi*を算出する。なお、式(13.1)及び式(13.2)における"p"は、微分演算子である。
The MTPI voltage command value calculator 14b1-2 calculates the MTPI assumed d-axis voltage Vd_mtpi* and the MTPI assumed q-axis voltage Vq_mtpi* based on the MTPI assumed d-axis current command value Id_mtpi*, the MTPI assumed q-axis current command value Iq_mtpi*, and the electrical angle estimated angular velocity ωe in accordance with the PMSM voltage equations shown in equations (13.1) and (13.2). Note that "p" in equations (13.1) and (13.2) is a differential operator.

なお、式(13.1)及び式(13.2)では、トルク制御による電流変化に伴うインダクタンスでの電圧降下"p・Ld・Id"及び"p・Lq・Iq"(p項電圧)が考慮されている。"Ld"はモータMのd軸インダクタンス、"Lq"はモータMのq軸インダクタンスを示す。 Note that equations (13.1) and (13.2) take into account the voltage drops "p·Ld·Id" and "p·Lq·Iq" (p-term voltages) across the inductance due to current changes caused by torque control. "Ld" represents the d-axis inductance of motor M, and "Lq" represents the q-axis inductance of motor M.

ここで、p項電圧は、電流変化の時間微分を用いて示される。しかし、検出電流の変化量をそのまま微分値とすると、MTPI想定d軸電圧Vd_mtpi*及びMTPI想定q軸電圧Vq_mtpi*が電流ノイズに敏感に反応してしまう。そこで、微分値は、電流基本波変動に基づいて、例えば以下のようにして生成される。 Here, the p-term voltage is expressed using the time derivative of the current change. However, if the change in the detected current were used as the derivative value as is, the MTPI assumed d-axis voltage Vd_mtpi* and the MTPI assumed q-axis voltage Vq_mtpi* would be sensitive to current noise. Therefore, the derivative value is generated based on the current fundamental wave fluctuation, for example, as follows:

p項電圧の生成について説明するために、まず、d軸電流Id及びq軸電流Iqの変動成分ΔIda及びΔIqaを式(14.1)及び式(14.2)のように定義する。
To explain the generation of the p-term voltage, first, the fluctuation components ΔIda and ΔIqa of the d-axis current Id and the q-axis current Iq are defined as in equations (14.1) and (14.2).

ここで、機械角一回転で1回の周期変動が起こる場合、式(14.1)に含まれる"Ida"と"φd"は、それぞれΔIdaの変動振幅と初期位相を示し、式(14.2)に含まれる"Iqa"と"φq"は、それぞれΔIqaの変動振幅と初期位相を示し、式(14.1)及び式(14.2)に含まれる"θm"は機械角位相の瞬時値を示す。 Here, when one periodic fluctuation occurs per mechanical angle rotation, "Ida" and "φd" in equation (14.1) indicate the fluctuation amplitude and initial phase of ΔIda, respectively, "Iqa" and "φq" in equation (14.2) indicate the fluctuation amplitude and initial phase of ΔIqa, respectively, and "θm" in equations (14.1) and (14.2) indicates the instantaneous value of the mechanical angle phase.

よって、電流基本波変動により生ずるp項電圧は、式(15.1)及び式(15.2)のように示される。すなわち、d軸電流変動及びq軸電流変動の位相をπ/2だけ進ませ、位相をπ/2だけ進ませたd軸電流変動及びq軸電流変動に機械角推定角速度ωmを乗算することで、微分値(p項電圧)を生成することができる。
Therefore, the p-term voltage generated by the current fundamental wave fluctuation is expressed as in equations (15.1) and (15.2). That is, the phases of the d-axis current fluctuation and the q-axis current fluctuation are advanced by π/2, and the d-axis current fluctuation and the q-axis current fluctuation whose phases are advanced by π/2 are multiplied by the estimated mechanical angle angular velocity ωm, thereby generating a differential value (p-term voltage).

MTPI電圧振幅算出器14b1-3は、MTPI想定d軸電圧Vd_mtpi*及びMTPI想定q軸電圧Vq_mtpi*に基づいて、式(16)に従って、MTPI想定出力電圧Va_mtpi*を算出する。
The MTPI voltage amplitude calculator 14b1-3 calculates the MTPI assumed output voltage Va_mtpi* based on the MTPI assumed d-axis voltage Vd_mtpi* and the MTPI assumed q-axis voltage Vq_mtpi* according to equation (16).

平均出力電圧生成器14b1-4は、モータMのロータの1回転毎に変動するd軸電流Idとq軸電流Iqのそれぞれの平均値がMTPI曲線(最大トルク/電流制御曲線)をトレースするように調整した平均出力電圧指令値Va0*を出力する。例えば、平均出力電圧生成器14b1-4は、現在のq軸電流IqからMTPI曲線上のd軸電流Idtを算出し、算出したd軸電流Idtと現在のd軸電流Idとの誤差がなくなるようにPI制御等により平均出力電圧指令値Va0*を調整する。平均出力電圧生成器14b1-4は、例えば式(17.1)及び式(17.2)に従って平均出力電圧指令値Va0*を算出する。また、平均出力電圧生成器14b1-4は、平均出力電圧指令値Va0*が出力電圧限界値Vdq_limitを超過した場合には、式(18)に従って、平均出力電圧指令値Va0*を出力電圧限界値Vdq_limitに制限する。平均出力電圧指令値Va0*が出力電圧限界値Vdq_limitに制限されることで、弱め磁束制御となる。"Ψa"はモータMの鎖交磁束を示す。
The average output voltage generator 14b1-4 outputs an average output voltage command value Va0* adjusted so that the average values of the d-axis current Id and the q-axis current Iq, which fluctuate with each rotation of the rotor of the motor M, trace an MTPI curve (maximum torque/current control curve). For example, the average output voltage generator 14b1-4 calculates the d-axis current Idt on the MTPI curve from the current q-axis current Iq, and adjusts the average output voltage command value Va0* using PI control or the like so that there is no error between the calculated d-axis current Idt and the current d-axis current Id. The average output voltage generator 14b1-4 calculates the average output voltage command value Va0* according to, for example, equations (17.1) and (17.2). Furthermore, when the average output voltage command value Va0* exceeds the output voltage limit value Vdq_limit, the average output voltage generator 14b1-4 limits the average output voltage command value Va0* to the output voltage limit value Vdq_limit in accordance with equation (18). Limiting the average output voltage command value Va0* to the output voltage limit value Vdq_limit results in flux-weakening control. "Ψa" indicates the flux linkage of the motor M.

MTPI電圧変動成分抽出器14b1-5は、MTPI想定出力電圧Va_mtpi*の変動振幅|ΔVa_mtpi|、及び、瞬時値ΔVa_mtpiを、例えば以下のように算出する。 The MTPI voltage fluctuation component extractor 14b1-5 calculates the fluctuation amplitude |ΔVa_mtpi| and instantaneous value ΔVa_mtpi of the MTPI assumed output voltage Va_mtpi*, for example, as follows:

MTPI電圧変動成分抽出器14b1-5は、まず、式(19.1)及び式(19.2)に従って、MTPI想定出力電圧Va_mtpi*の基本波成分を、sin成分であるフーリエ係数Va_mtpi_sinと、cos成分であるVa_mtpi_cosとに分離する。MTPI電圧変動成分抽出器14b1-5は、MTPI想定出力電圧Va_mtpi*の基本波成分のフーリエ係数を機械角周期毎に算出することで、高調波成分が除去されたMTPI想定出力電圧Va_mtpi*の基本波成分を抽出することができる。
The MTPI voltage fluctuation component extractor 14b1-5 first separates the fundamental component of the MTPI assumed output voltage Va_mtpi* into a Fourier coefficient Va_mtpi_sin, which is a sine component, and a cosine component Va_mtpi_cos, according to equations (19.1) and (19.2). The MTPI voltage fluctuation component extractor 14b1-5 calculates the Fourier coefficient of the fundamental component of the MTPI assumed output voltage Va_mtpi* for each mechanical angle period, thereby extracting the fundamental component of the MTPI assumed output voltage Va_mtpi* from which harmonic components have been removed.

次いで、MTPI電圧変動成分抽出器14b1-5は、式(19.1)及び式(19.2)に従って算出したフーリエ係数Va_mtpi_sin,Va_mtpi_cosに基づいて、式(20)に従って、MTPI想定出力電圧Va_mtpi*の基本波成分の振幅|ΔVa_mtpi|を算出する。なお、フーリエ係数Va_mtpi_sin,Va_mtpi_cosは機械角周期毎に更新される値であるため、振幅|ΔVa_mtpi|も機械角周期毎に更新される。
Next, the MTPI voltage fluctuation component extractor 14b1-5 calculates the amplitude |ΔVa_mtpi| of the fundamental component of the MTPI assumed output voltage Va_mtpi* according to equation (20) based on the Fourier coefficients Va_mtpi_sin and Va_mtpi_cos calculated according to equations (19.1) and (19.2). Note that because the Fourier coefficients Va_mtpi_sin and Va_mtpi_cos are values that are updated every mechanical angle period, the amplitude |ΔVa_mtpi| is also updated every mechanical angle period.

そして、MTPI電圧変動成分抽出器14b1-5は、MTPI想定出力電圧Va_mtpi*の基本波成分の瞬時値ΔVa_mtpiを式(21)に従って算出する。
Then, the MTPI voltage fluctuation component extractor 14b1-5 calculates the instantaneous value ΔVa_mtpi of the fundamental wave component of the MTPI assumed output voltage Va_mtpi* according to equation (21).

加算器14b1-6は、式(22)に従って、平均出力電圧指令値Va0*とMTPI想定出力電圧Va_mtpi*の基本波成分の振幅|ΔVa_mtpi|とを加算することによりMTPI想定出力電圧変動ピーク値Va_mtpi_peakを算出する。
The adder 14b1-6 calculates the MTPI assumed output voltage fluctuation peak value Va_mtpi_peak by adding the average output voltage command value Va0* and the amplitude |ΔVa_mtpi| of the fundamental wave component of the MTPI assumed output voltage Va_mtpi* according to equation (22).

MTPI電圧振幅制限処理器14b1-7は、加算器14b1-6での加算結果であるMTPI想定出力電圧変動ピーク値Va_mtpi_peakが出力電圧限界値Vdq_limit以下となるように調整した変動出力電圧制限指令値ΔVa_limit_mtpiを生成し、生成した変動出力電圧制限指令値ΔVa_limit_mtpiを出力する。 The MTPI voltage amplitude limit processor 14b1-7 generates a variable output voltage limit command value ΔVa_limit_mtpi adjusted so that the MTPI expected output voltage fluctuation peak value Va_mtpi_peak, which is the sum result of the adder 14b1-6, is equal to or less than the output voltage limit value Vdq_limit, and outputs the generated variable output voltage limit command value ΔVa_limit_mtpi.

例えば、MTPI電圧振幅制限処理器14b1-7は、平均出力電圧指令値Va0*と、MTPI想定出力電圧変動ピーク値Va_mtpi_peakと、出力電圧限界値Vdq_limitとの比較により、出力電圧変動成分の振幅比率scaleを算出し、振幅比率scaleをMTPI想定出力電圧変動成分ΔVa_mtpiに乗算することにより変動出力電圧制限指令値ΔVa_limit_mtpiを生成する。こうすることで、MTPI想定出力電圧変動成分ΔVa_mtpiと位相を一致させた変動出力電圧制限指令値ΔVa_limit_mtpiを生成できる。 For example, the MTPI voltage amplitude limit processor 14b1-7 calculates the amplitude ratio scale of the output voltage fluctuation component by comparing the average output voltage command value Va0*, the MTPI assumed output voltage fluctuation peak value Va_mtpi_peak, and the output voltage limit value Vdq_limit, and generates the variable output voltage limit command value ΔVa_limit_mtpi by multiplying the MTPI assumed output voltage fluctuation component ΔVa_mtpi by the amplitude ratio scale. In this way, it is possible to generate a variable output voltage limit command value ΔVa_limit_mtpi that is in phase with the MTPI assumed output voltage fluctuation component ΔVa_mtpi.

例えば、MTPI電圧振幅制限処理器14b1-7は、式(23.1)~式(23.3)に従って出力電圧変動成分の振幅比率scaleを算出し、算出した振幅比率scaleに基づいて、式(23.4)に従って、変動出力電圧制限指令値ΔVa_limit_mtpiを生成する。
For example, the MTPI voltage amplitude limit processor 14b1-7 calculates the amplitude ratio scale of the output voltage fluctuation component according to equations (23.1) to (23.3), and generates the fluctuation output voltage limit command value ΔVa_limit_mtpi based on the calculated amplitude ratio scale according to equation (23.4).

加算器14b1-8は、式(24)に従って、平均出力電圧指令値Va0*と変動出力電圧制限指令値ΔVa_limit_mtpiとを加算することにより出力電圧制限指令値Va*を算出する。加算器14b1-8は、算出した出力電圧制限指令値Va*を誘起電圧指令値算出器14b2及び電圧指令値算出器14b6へ出力する。
The adder 14b1-8 calculates the output voltage limit command value Va* by adding the average output voltage command value Va0* and the variable output voltage limit command value ΔVa_limit_mtpi in accordance with the equation (24). The adder 14b1-8 outputs the calculated output voltage limit command value Va* to the induced voltage command value calculator 14b2 and the voltage command value calculator 14b6.

図5において、誘起電圧指令値算出器14b2は、現在のd軸電流Id、q軸電流Iq及び電気角推定角速度ωeに基づいて、式(25.1)及び式(25.2)に示すモータモデル式に従って、出力電圧制限指令値Va*に基づく誘起電圧指令値Vo*を算出する。以下に、誘起電圧指令値Vo*の算出の詳細を示す。 In FIG. 5, the induced voltage command value calculator 14b2 calculates the induced voltage command value Vo* based on the output voltage limit command value Va* in accordance with the motor model equations shown in equations (25.1) and (25.2) based on the current d-axis current Id, q-axis current Iq, and electrical angle estimated angular velocity ωe. Details of the calculation of the induced voltage command value Vo* are provided below.

PMSMの電圧方程式(d軸電圧Vd,q軸電圧Vq)、出力電圧振幅Vaの理論式、及び、モータMの誘起電圧Voの理論式は、式(25.1)~式(27)に示される。
The voltage equations (d-axis voltage Vd, q-axis voltage Vq) of the PMSM, the theoretical formula for the output voltage amplitude Va, and the theoretical formula for the induced voltage Vo of the motor M are shown in equations (25.1) to (27).

また、式(25.1)~式(27)から、出力電圧制限指令値Va*と誘起電圧指令値Vo*とを関連づける式は、式(28)のようになる。そこで、誘起電圧指令値算出器14b2は、式(28)に従って誘起電圧指令値Vo*を算出し、算出した誘起電圧指令値Vo*を電流指令値算出器14b3へ出力する。
Furthermore, from equations (25.1) to (27), the equation relating the output voltage limit command value Va* and the induced voltage command value Vo* is given by equation (28). Therefore, induced voltage command value calculator 14b2 calculates induced voltage command value Vo* in accordance with equation (28) and outputs the calculated induced voltage command value Vo* to current command value calculator 14b3.

電流指令値算出器14b3は、合計トルク指令値T*が一定となる電流の軌跡である定トルク曲線と、誘起電圧指令値Vo*及び電気角推定角速度ωeが一定となる電流の軌跡である定誘起電圧楕円との交点に基づいて、q軸電流指令値Iq*とd軸電流指令値Id*とを算出する(図1B参照)。電流指令値算出器14b3は、算出したq軸電流指令値Iq*及びd軸電流指令値Id*を仮電圧指令値算出器14b4へ出力する。 The current command value calculator 14b3 calculates the q-axis current command value Iq* and the d-axis current command value Id* based on the intersection of a constant torque curve, which is the current trajectory at which the total torque command value T* is constant, and a constant induced voltage ellipse, which is the current trajectory at which the induced voltage command value Vo* and the electrical angle estimated angular velocity ωe are constant (see FIG. 1B). The current command value calculator 14b3 outputs the calculated q-axis current command value Iq* and d-axis current command value Id* to the temporary voltage command value calculator 14b4.

定トルク曲線と定誘起電圧楕円との交点は、例えば、式(29)に示すモータトルク式と、式(30)に示す誘起電圧式とを用いて算出できる。
The intersection of the constant torque curve and the constant induced voltage ellipse can be calculated using, for example, the motor torque equation shown in equation (29) and the induced voltage equation shown in equation (30).

式(29)及び式(30)からd軸電流Idを消去すると、式(31)のように、q軸電流Iqに関する4次方程式を得ることができる。但し、式(31)において、"ΔL=Ld-Lq"である。
By eliminating the d-axis current Id from equations (29) and (30), a quartic equation related to the q-axis current Iq can be obtained as shown in equation (31), where ΔL=Ld−Lq.

式(31)に示す4次方程式の解として、式(31)に示す4次方程式に対して例えばニュートン法等を用いることで、合計トルク指令値T*が一定となる電流の軌跡である定トルク曲線と、誘起電圧Vo及び電気角推定角速度ωeが一定となる電流の軌跡である定誘起電圧楕円とが交差する点でのq軸電流指令値Iq*に相当する解を導出することができる(図1B参照)。 By applying, for example, Newton's method to the quartic equation shown in equation (31), it is possible to derive a solution corresponding to the q-axis current command value Iq* at the point where the constant torque curve, which is the current locus at which the total torque command value T* is constant, intersects with the constant induced voltage ellipse, which is the current locus at which the induced voltage Vo and the estimated electrical angle angular velocity ωe are constant (see Figure 1B).

電流指令値算出器14b3は、q軸電流指令値Iq*を算出後、式(30)に示す誘起電圧式をd軸電流式に変形した式(32)に従って、q軸電流指令値Iq*に基づいてd軸電流指令値Id*を算出する。
After calculating the q-axis current command value Iq*, the current command value calculator 14b3 calculates the d-axis current command value Id* based on the q-axis current command value Iq* in accordance with equation (32), which is obtained by transforming the induced voltage equation shown in equation (30) into a d-axis current equation.

ここで、式(32)において、√に係る符号として正または負の何れを採るかは、Iq軸に平行で、かつ、定誘起電圧楕円の中心であるM点(-Ψa/Ld,0)を通る直線(以下では「M点境界ライン」と呼ぶことがある)と、定誘起電圧楕円とが交差する点でのトルク(以下では「M点境界上トルクT_M」と呼ぶことがある)を算出し、M点境界上トルクT_Mと合計トルク指令値T*とを比較することによって決定することができる。 Whether to use a positive or negative sign for the √ in equation (32) can be determined by calculating the torque at the point where the constant induced voltage ellipse intersects with a line (hereinafter sometimes referred to as the "M-point boundary line") that is parallel to the Iq axis and passes through point M (-Ψa/Ld, 0), the center of the constant induced voltage ellipse, and comparing the M-point boundary torque T_M with the total torque command value T*.

以下に、d軸電流指令値Id*及びq軸電流指令値Iq*の算出手順を示す。図7A及び図7Bは、本実施形態に係る電流指令値算出器の動作例の説明に供する図である。 The procedure for calculating the d-axis current command value Id* and the q-axis current command value Iq* is shown below. Figures 7A and 7B are diagrams used to explain an example of the operation of the current command value calculator according to this embodiment.

電流指令値算出器14b3は、まず、M点上のd軸電流Id_Mを式(33)に従って算出する。
The current command value calculator 14b3 first calculates the d-axis current Id_M at point M according to equation (33).

次いで、電流指令値算出器14b3は、M点境界ラインと定誘起電圧楕円とが交差する点におけるq軸電流Iq_Mを算出する。q軸電流Iq_Mは、式(30)にM点上のd軸電流Id_Mを代入することにより算出できるため、式(34)に従って算出される。
Next, the current command value calculator 14b3 calculates the q-axis current Iq_M at the point where the boundary line at point M intersects with the constant induced voltage ellipse. The q-axis current Iq_M can be calculated by substituting the d-axis current Id_M at point M into equation (30), and is therefore calculated according to equation (34).

よって、電流指令値算出器14b3は、式(35)に従って、M点境界上トルクT_Mを算出する。
Therefore, the current command value calculator 14b3 calculates the M-point boundary torque T_M according to the equation (35).

そして、電流指令値算出器14b3は、合計トルク指令値T*とM点境界上トルクT_Mとの大小関係に基づいて、式(36.1)及び式(36.2)に従って、d軸電流指令値Id*を決定する。式(36.1)には、"合計トルク指令値T*≦M点境界上トルクT_M"の場合のd軸電流指令値Id*(図7A参照)を示し、式(36.2)には、"合計トルク指令値T*>M点境界上トルクT_M"の場合のd軸電流指令値Id*(図7B参照)を示す。
The current command value calculator 14b3 determines the d-axis current command value Id* in accordance with equations (36.1) and (36.2) based on the magnitude relationship between the total torque command value T* and the torque on the boundary at point M. The equation (36.1) shows the d-axis current command value Id* (see FIG. 7A) when "the total torque command value T*≦the torque on the boundary at point M T_M", and the equation (36.2) shows the d-axis current command value Id* (see FIG. 7B) when "the total torque command value T*>the torque on the boundary at point M T_M".

電流指令値算出器14b3は、以上のようにして算出したd軸電流指令値Id*及びq軸電流指令値Iq*を仮電圧指令値算出器14b4へ出力する。 The current command value calculator 14b3 outputs the d-axis current command value Id* and q-axis current command value Iq* calculated as described above to the temporary voltage command value calculator 14b4.

図5において、仮電圧指令値算出器14b4は、電気角推定角速度ωe、d軸電流指令値Id*及びq軸電流指令値Iq*に基づいて、式(37.1)及び式(37.2)に示すモータモデル式に従って、フィードフォワードで仮d軸電圧指令値Vd_m及び仮q軸電圧指令値Vq_mを算出する。仮電圧指令値算出器14b4は、算出した仮d軸電圧指令値Vd_m及び仮q軸電圧指令値Vq_mを電圧ベクトル角算出器14b5へ出力する。なお、フィードフォワードで仮電圧指令値を算出することで、入力飽和によってPI制御などの積分器に発生するワインドアップ(飽和現象)を防止できる。
5 , the provisional voltage command value calculator 14b4 calculates a provisional d-axis voltage command value Vd_m and a provisional q-axis voltage command value Vq_m in a feedforward manner based on the electrical angle estimated angular velocity ωe, the d-axis current command value Id*, and the q-axis current command value Iq* in accordance with the motor model equations shown in Equations (37.1) and (37.2). The provisional voltage command value calculator 14b4 outputs the calculated provisional d-axis voltage command value Vd_m and provisional q-axis voltage command value Vq_m to the voltage vector angle calculator 14b5. Note that calculating the provisional voltage command values in a feedforward manner can prevent windup (saturation phenomenon) that occurs in an integrator such as in PI control due to input saturation.

なお、式(37.1)及び式(37.2)では、トルク制御による電流変化に伴うインダクタンスでの電圧降下"p・Ld・Id"及び"p・Lq・Iq"(p項電圧)が考慮されている。 Note that equations (37.1) and (37.2) take into account the voltage drops "p·Ld·Id" and "p·Lq·Iq" (p-term voltages) across the inductance due to current changes caused by torque control.

電圧ベクトル角算出器14b5は、仮d軸電圧指令値Vd_m及び仮q軸電圧指令値Vq_mに基づいて、式(38)に従って、電圧ベクトル角δを算出する。電圧ベクトル角算出器14b5は、算出した電圧ベクトル角δを電圧指令値算出器14b6へ出力する。つまり、電圧ベクトル角算出器14b5は、図8に示すように、式(1)のようにして算出される振幅Vaを有する出力電圧ベクトルがq軸から為す角度を電圧ベクトル角δとして算出する。こうすることで、出力電圧振幅がインバータの出力可能な直流電圧(DC電圧)以下に制限される電圧飽和領域において、合計トルク指令値T*に対応した電圧ベクトル角δを演算によって生成できる。よって、電圧ベクトル角変動のチューニングを行うことなく制振制御を行うことができるため、電圧ベクトル角変動のチューニングをせずにモータMの制振効果の向上を図ることができる。図8は、本実施形態に係る電圧ベクトル角算出器の動作例の説明に供する図である。
The voltage vector angle calculator 14b5 calculates a voltage vector angle δ based on the virtual d-axis voltage command value Vd_m and the virtual q-axis voltage command value Vq_m according to equation (38). The voltage vector angle calculator 14b5 outputs the calculated voltage vector angle δ to the voltage command value calculator 14b6. That is, as shown in FIG. 8 , the voltage vector angle calculator 14b5 calculates the angle between the q-axis and the output voltage vector having amplitude Va calculated using equation (1). This allows the voltage vector angle δ corresponding to the total torque command value T* to be calculated in a voltage saturation region where the output voltage amplitude is limited to or below the direct current (DC) voltage that the inverter can output. Therefore, vibration suppression control can be performed without tuning the voltage vector angle fluctuation, thereby improving the vibration suppression effect of the motor M without tuning the voltage vector angle fluctuation. FIG. 8 is a diagram illustrating an example of the operation of the voltage vector angle calculator according to this embodiment.

電圧指令値算出器14b6は、電圧ベクトル角δ及び出力電圧制限指令値Va*に基づいて、式(39.1)及び式(39.2)に従って、極座標から直交座標への座標変換を行うことにより、d軸電圧指令値Vd*及びq軸電圧指令値Vq*を算出する。
The voltage command value calculator 14b6 calculates the d-axis voltage command value Vd* and the q-axis voltage command value Vq* by converting the polar coordinates into the Cartesian coordinates based on the voltage vector angle δ and the output voltage limit command value Va* in accordance with equations (39.1) and (39.2).

<MTPI電圧振幅制限処理器の動作>
図9は、本実施形態に係るMTPI電圧振幅制限処理器の動作例の説明に供する図である。
<Operation of MTPI Voltage Limiting Processor>
FIG. 9 is a diagram illustrating an example of the operation of the MTPI voltage amplitude limiting processor according to this embodiment.

例えば、図9のケース(a)に示すように、平均出力電圧指令値Va0*を中心に変動するMTPI想定出力電圧変動成分ΔVa_mtpiのピーク値Va_mtpi_peakが出力電圧限界値Vdq_limit以下である場合は、式(23.2)の条件に該当するため、MTPI電圧振幅制限処理器14b1-7は、出力電圧変動成分の振幅比率scaleを"1"とする。そして、MTPI電圧振幅制限処理器14b1-7は、式(23.4)において"scale=1"とし、MTPI想定出力電圧変動成分ΔVa_mtpiをそのまま変動出力電圧制限指令値ΔVa_limit_mtpiとして出力する。その結果、出力電圧制限指令値Va*は、MTPI想定出力電圧変動成分ΔVa_mtpiと一致する。 For example, as shown in case (a) in Figure 9, if the peak value Va_mtpi_peak of the MTPI assumed output voltage fluctuation component ΔVa_mtpi, which fluctuates around the average output voltage command value Va0*, is equal to or less than the output voltage limit value Vdq_limit, the condition of equation (23.2) is met, and the MTPI voltage amplitude limit processor 14b1-7 sets the amplitude ratio scale of the output voltage fluctuation component to "1." Then, the MTPI voltage amplitude limit processor 14b1-7 sets "scale = 1" in equation (23.4) and outputs the MTPI assumed output voltage fluctuation component ΔVa_mtpi as is as the variable output voltage limit command value ΔVa_limit_mtpi. As a result, the output voltage limit command value Va* matches the MTPI assumed output voltage fluctuation component ΔVa_mtpi.

また例えば、図9のケース(b)に示すように、平均出力電圧指令値Va0*を中心に変動するMTPI想定出力電圧変動成分ΔVa_mtpiのピーク値Va_mtpi_peakが出力電圧限界値Vdq_limitを超え、かつ、平均出力電圧指令値Va0*が出力電圧限界値Vdq_limitを超えない場合は、式(23.3)の条件に該当するため、MTPI電圧振幅制限処理器14b1-7は、出力電圧変動成分の振幅比率scaleを"(Vdq_limit-Va0*)/|ΔVa_mtpi|"とする。そして、MTPI電圧振幅制限処理器14b1-7は、式(23.4)において"scale=(Vdq_limit-Va0*)/|ΔVa_mtpi|"とした変動出力電圧制限指令値ΔVa_limit_mtpiを出力する。その結果、MTPI想定出力電圧変動成分ΔVa_mtpiと位相が一致し、かつ、変動振幅によるピーク値が出力電圧限界値Vdq_limit以下となる出力電圧制限指令値Va*が生成される。 For example, as shown in case (b) of Figure 9, if the peak value Va_mtpi_peak of the MTPI assumed output voltage fluctuation component ΔVa_mtpi, which fluctuates around the average output voltage command value Va0*, exceeds the output voltage limit value Vdq_limit, and the average output voltage command value Va0* does not exceed the output voltage limit value Vdq_limit, the condition of equation (23.3) is met, and therefore the MTPI voltage amplitude limit processor 14b1-7 sets the amplitude ratio scale of the output voltage fluctuation component to "(Vdq_limit-Va0*)/|ΔVa_mtpi|". The MTPI voltage amplitude limit processor 14b1-7 then outputs the variable output voltage limit command value ΔVa_limit_mtpi, which is calculated by using equation (23.4) with "scale = (Vdq_limit - Va0*) / |ΔVa_mtpi|". As a result, an output voltage limit command value Va* is generated that is in phase with the MTPI assumed output voltage fluctuation component ΔVa_mtpi and whose peak value due to the fluctuation amplitude is equal to or less than the output voltage limit value Vdq_limit.

また例えば、図9のケース(c)に示すように、MTPI想定出力電圧変動成分ΔVa_mtpiの平均出力電圧指令値Va0*が出力電圧限界値Vdq_limit以上である場合は、式(23.1)の条件に該当するため、MTPI電圧振幅制限処理器14b1-7は、出力電圧変動成分の振幅比率scaleを"0"とする。そして、MTPI電圧振幅制限処理器14b1-7は、式(23.4)において"scale=0"とし、変動出力電圧制限指令値ΔVa_limit_mtpiを"0"として出力する。その結果、出力電圧制限指令値Va*は、出力電圧限界値Vdq_limitと一致する。 For example, as shown in case (c) in Figure 9, if the average output voltage command value Va0* of the MTPI assumed output voltage fluctuation component ΔVa_mtpi is equal to or greater than the output voltage limit value Vdq_limit, the condition of equation (23.1) is met, and the MTPI voltage amplitude limit processor 14b1-7 sets the amplitude ratio scale of the output voltage fluctuation component to "0." The MTPI voltage amplitude limit processor 14b1-7 then sets "scale = 0" in equation (23.4) and outputs the variable output voltage limit command value ΔVa_limit_mtpi as "0." As a result, the output voltage limit command value Va* matches the output voltage limit value Vdq_limit.

このようにして出力電圧制限指令値Va*を制御することで、図10に示す出力電圧波形の一例のように、モータMの制御領域が通常制御領域から電圧飽和領域に遷移した直後も、出力電圧振幅Vaを出力電圧限界値Vdq_limit以下に保ちつつ、通常制御領域と電圧飽和領域との間で出力電圧振幅Vaを一致させることができる。このため、通常制御領域から電圧飽和領域への遷移時の切替ショックを低減できる。さらに、モータ制御装置100が電圧飽和領域電圧指令値生成器14bを有することで、電圧飽和領域において、出力電圧制限指令値Va*の変動の中心である平均出力電圧指令値Va0*が出力電圧限界値Vdq_limitで制限される場合にも対応できる。 By controlling the output voltage limit command value Va* in this manner, as shown in the example of the output voltage waveform shown in Figure 10, even immediately after the control region of motor M transitions from the normal control region to the voltage saturation region, the output voltage amplitude Va can be kept below the output voltage limit value Vdq_limit, and the output voltage amplitude Va can be matched between the normal control region and the voltage saturation region. This reduces switching shock when transitioning from the normal control region to the voltage saturation region. Furthermore, by including the voltage saturation region voltage command value generator 14b, the motor control device 100 can also handle cases in which the average output voltage command value Va0*, which is the center of fluctuation of the output voltage limit command value Va*, is limited by the output voltage limit value Vdq_limit in the voltage saturation region.

<通常制御領域電圧指令値生成器の動作>
通常制限領域電圧指令値生成器14aは、制御切替判定部15によりモータMの現在の制御領域が通常制御領域であると判定された場合に、合計トルク指令値T*、電気角推定角速度ωe、d軸電流Id、q軸電流Iq、及び、機械角位相θmに基づいて、d軸電圧指令値Vd*及びq軸電圧指令値Vq*を算出する。
<Operation of normal control region voltage command value generator>
When the control switching determination unit 15 determines that the current control region of the motor M is the normal control region, the normal restriction region voltage command value generator 14a calculates the d-axis voltage command value Vd* and the q-axis voltage command value Vq* based on the total torque command value T*, the electrical angle estimated angular velocity ωe, the d-axis current Id, the q-axis current Iq, and the mechanical angle phase θm.

通常制限領域電圧指令値生成器14aでは、例えばトルク制御を行うためにMTPI制御(最大トルク/電流制御)が行われる。この方法では、合計トルク指令値T*が一定となる電流の軌跡である定トルク曲線とMTPI曲線との交点に基づいて、d軸電流指令値Id*及びq軸電流指令値Iq*が算出される。また、q軸電流指令値Iq*とq軸電流Iqとの差分(q軸電流誤差)についてのPI制御を行うことでq軸電圧指令値Vq*が算出される。また、d軸電流指令値Id*とd軸電流Idとの差分(d軸電流誤差)についてのPI制御を行うことでd軸電圧指令値Vd*が算出される。 The normal limit region voltage command value generator 14a performs MTPI control (maximum torque/current control) to control torque, for example. With this method, the d-axis current command value Id* and the q-axis current command value Iq* are calculated based on the intersection of the MTPI curve and a constant torque curve, which is the current trajectory where the total torque command value T* is constant. Furthermore, the q-axis voltage command value Vq* is calculated by performing PI control on the difference between the q-axis current command value Iq* and the q-axis current Iq (q-axis current error). Furthermore, the d-axis voltage command value Vd* is calculated by performing PI control on the difference between the d-axis current command value Id* and the d-axis current Id (d-axis current error).

なお、d軸電流指令値Id*及びq軸電流指令値Iq*については、定トルク曲線とMTPI曲線との交点を算出する際の応答遅延やdq軸の干渉により生じる位相誤差や振幅誤差を補正してもよい。また、d軸電圧指令値Vd*及びq軸電圧指令値Vq*については、非干渉化制御を行ったうえで最終的な電圧指令値として出力してもよい。この他、d軸電圧指令値Vd*及びq軸電圧指令値Vq*を算出する方法は限定されず、MTPI制御以外のトルク制御方法を用いることも可能である。 The d-axis current command value Id* and the q-axis current command value Iq* may be corrected for phase and amplitude errors that occur due to response delays when calculating the intersection of the constant torque curve and the MTPI curve, or due to interference between the d and q axes. The d-axis voltage command value Vd* and the q-axis voltage command value Vq* may be output as the final voltage command value after undergoing non-interference control. There are no limitations on the method for calculating the d-axis voltage command value Vd* and the q-axis voltage command value Vq*, and torque control methods other than MTPI control may also be used.

<定常モデルによるロータ位置推定の課題>
ここまでは、通常制御領域及び電圧飽和領域においてモータMの制御指令値(d軸電圧指令値Vd*及びq軸電圧指令値Vq*)を算出する方法について説明した。以下では、モータMのロータ位置を推定する方法について説明する。
<Issues with rotor position estimation using steady-state models>
So far, we have described a method for calculating the control command values (d-axis voltage command value Vd* and q-axis voltage command value Vq*) for the motor M in the normal control region and the voltage saturation region. Below, we will describe a method for estimating the rotor position of the motor M.

d軸電流Id及びq軸電流Iqからロータ位置を推定する方法としては、式(40)に示す拡張誘起電圧モデルを用いた定常状態における軸誤差算出式が広く用いられてきた。
As a method for estimating the rotor position from the d-axis current Id and the q-axis current Iq, the equation for calculating the axis error in a steady state using the extended induced voltage model shown in equation (40) has been widely used.

式(40)において、RはモータMの抵抗値であり、LqはモータMにおけるq軸インダクタンスである。またVd及びVqは、モータMに印加されるd軸電圧及びq軸電圧である。Id及びIqは、モータMを流れるd軸電流及びq軸電流である。なお逆正接関数(tan-1)内の分子はγ軸誘起電圧であり、分母はδ軸誘起電圧である。ここでγ軸及びδ軸は、制御上の推定回転座標系である。 In equation (40), R is the resistance value of motor M, and Lq is the q-axis inductance of motor M. Furthermore, Vd and Vq are the d-axis voltage and q-axis voltage applied to motor M. Id and Iq are the d-axis current and q-axis current flowing through motor M. Note that the numerator in the arctangent function (tan -1 ) is the γ-axis induced voltage, and the denominator is the δ-axis induced voltage. Here, the γ-axis and δ-axis are estimated rotating coordinate systems for control purposes.

ロータ位置を推定する際には、式(40)から軸誤差Δθが算出され、軸誤差Δθを用いて電気角推定角速度ωeが推定され、電気角推定角速度ωeを用いてロータ位置を表す電気角位相(dq軸位相)θeや機械角位相θmが推定される。また、軸誤差Δθの演算では、式(40)におけるVd及びVqとして、d軸電圧指令値Vd*及びq軸電圧指令値Vq*が用いられ、Id及びIqとして、モータ電流の検出値であるd軸電流Id及びq軸電流Iqが用いられる。 When estimating the rotor position, the axis error Δθ is calculated from equation (40), the axis error Δθ is used to estimate the electrical angle estimated angular velocity ωe, and the electrical angle phase (dq-axis phase) θe and mechanical angle phase θm, which represent the rotor position, are estimated using the electrical angle estimated angular velocity ωe. Furthermore, in calculating the axis error Δθ, the d-axis voltage command value Vd* and the q-axis voltage command value Vq* are used as Vd and Vq in equation (40), and the d-axis current Id and q-axis current Iq, which are detected values of the motor currents, are used as Id and Iq.

ここで、上記したトルク制御とモータ電流(d軸電流Id及びq軸電流Iq)との関係について説明する。シングルロータリー圧縮機の運転等のように、モータMに作用する負荷トルクが周期的に変動する場合、モータMのトルクを調整しなければ、負荷トルクの周期的な変動に起因して、モータMの回転速度(電気角推定角速度ωe)も周期的に変動することが考えられる。この場合、振動や騒音を発生する可能性や、モータMの安定した制御が難しくなる可能性がある。上記したトルク制御は、このような速度変動を抑えるために、モータMのトルクを負荷トルクの変動に合わせて調整する制御である。 Here, the relationship between the above-mentioned torque control and motor current (d-axis current Id and q-axis current Iq) will be explained. When the load torque acting on motor M fluctuates periodically, such as when operating a single rotary compressor, unless the torque of motor M is adjusted, the rotational speed of motor M (electrical angle estimated angular velocity ωe) may also fluctuate periodically due to the periodic fluctuations in the load torque. In this case, there is a possibility that vibrations and noise may be generated, and stable control of motor M may become difficult. The above-mentioned torque control adjusts the torque of motor M in accordance with fluctuations in load torque in order to suppress such speed fluctuations.

トルク制御では、目的とするトルクが発生するようにd軸電流指令値Id*及びq軸電流指令値Iq*が調整され、調整されたd軸電流指令値Id*及びq軸電流指令値Iq*に基づいてd軸電圧指令値Vd*及びq軸電圧指令値Vq*が生成される。この場合、負荷トルクの周期的な変動に合わせて、モータMに流れるd軸電流Id及びq軸電流Iqも周期的に変動することが想定される。 In torque control, the d-axis current command value Id* and the q-axis current command value Iq* are adjusted to generate the desired torque, and the d-axis voltage command value Vd* and the q-axis voltage command value Vq* are generated based on the adjusted d-axis current command value Id* and q-axis current command value Iq*. In this case, it is expected that the d-axis current Id and the q-axis current Iq flowing through the motor M will also fluctuate periodically in accordance with the periodic fluctuations in the load torque.

本発明者は、このようにd軸電流Id及びq軸電流Iqが周期的に変動する状況下では、上記の式(40)を用いたトルク制御を行うと、周期的に変動する電流のピーク点(以下、電流ピークと記載することがある)付近で発振が生じ、それに伴い消費電力が悪化することがある点に気が付いた。特に、モータMの出力電圧振幅VaがDC電圧で制限される電圧飽和領域において、電圧変動の抑制と速度変動の抑制を両立させるトルク制御(上記した電圧飽和領域電圧指令値生成器14bにより行われるトルク制御)の最中に、電流ピーク付近での発振が顕著に発生することが分かった(図12等参照)。これは、モータMの制御不安定化や消費電力増加を引き起こす可能性がある。 The inventors have noticed that when torque control is performed using the above equation (40) in a situation where the d-axis current Id and the q-axis current Iq fluctuate periodically, oscillations occur near the peak points of the periodically fluctuating currents (hereinafter sometimes referred to as current peaks), which can result in increased power consumption. In particular, in the voltage saturation region where the output voltage amplitude Va of motor M is limited by the DC voltage, it has been found that significant oscillations occur near the current peaks during torque control that suppresses both voltage fluctuations and speed fluctuations (torque control performed by the voltage saturation region voltage command value generator 14b described above) (see Figure 12, etc.). This can lead to unstable control of motor M and increased power consumption.

以下では、図10を参照して、電流の発振が生じる理由について考察する。例えば図10には、通常制御領域において出力電圧振幅Vaが周期的に変動する様子が図示されている。この出力電圧振幅Vaの周期的な変動は、負荷トルクの周期的な変動に合わせてモータMのトルクを制御した結果である。なお通常制御領域では、出力電圧振幅Vaが出力電圧限界値Vdq_limit以下となる。従って出力電圧振幅Vaを制限する必要はない。このように出力電圧振幅Vaが制限されない状況では、例えばd軸電流指令値Id*及びq軸電流指令値Iq*のうち、主としてモータMにトルクを発生させるq軸電流指令値Iq*を周期的に変動させる制御が行われる。この場合、d軸電流指令値Id*の変動量は、q軸電流指令値Iq*に比べて小さい。 Below, we will consider the reasons for current oscillation with reference to Figure 10. For example, Figure 10 shows how the output voltage amplitude Va periodically fluctuates in the normal control region. This periodic fluctuation in the output voltage amplitude Va is the result of controlling the torque of motor M in accordance with the periodic fluctuation in load torque. Note that in the normal control region, the output voltage amplitude Va is equal to or less than the output voltage limit value Vdq_limit. Therefore, there is no need to limit the output voltage amplitude Va. In this situation where the output voltage amplitude Va is not limited, for example, control is performed to periodically fluctuate the q-axis current command value Iq*, which primarily generates torque in motor M, out of the d-axis current command value Id* and the q-axis current command value Iq*. In this case, the amount of fluctuation in the d-axis current command value Id* is smaller than the q-axis current command value Iq*.

一方で、電圧飽和領域では、出力電圧振幅Vaが出力電圧限界値Vdq_limitを上限として制限される。電圧飽和領域電圧指令値生成器14bでは、出力電圧振幅Vaが出力電圧限界値Vdq_limitを超えないように、かつ、速度変動が抑制されるように、d軸電流指令値Id*及びq軸電流指令値Iq*を調整する。この場合、q軸電流指令値Iq*の変動量だけでなくd軸電流指令値Id*の変動量も大きくなる、この結果、モータMに流れるd軸電流Id及びq軸電流Iqはいずれも比較的大きな変動量で周期的に変動することになる。このように、電圧飽和領域におけるトルク制御では、d軸電流Idを変動させることで電圧変動の抑制と速度変動の抑制を両立させていると言える。 On the other hand, in the voltage saturation region, the output voltage amplitude Va is limited to an upper limit of the output voltage limit value Vdq_limit. The voltage saturation region voltage command value generator 14b adjusts the d-axis current command value Id* and the q-axis current command value Iq* so that the output voltage amplitude Va does not exceed the output voltage limit value Vdq_limit and so that speed fluctuations are suppressed. In this case, not only the amount of fluctuation in the q-axis current command value Iq* but also the amount of fluctuation in the d-axis current command value Id* increases. As a result, the d-axis current Id and the q-axis current Iq flowing through the motor M both fluctuate periodically by relatively large amounts. In this way, torque control in the voltage saturation region can be said to suppress both voltage fluctuations and speed fluctuations by varying the d-axis current Id.

式(40)で表される拡張誘起電圧モデルは、定常状態を前提とした定常モデルである。定常状態では、dq軸電流(及びγδ軸電流)が直流であると見做される。従って、式(40)では、d軸電流Idやq軸電流Iqの変動(すなわちd軸電流Idやq軸電流Iqの時間変化)が考慮されず、軸誤差Δθの推定時に電流の過渡応答が反映されない。このため、d軸電流Idやq軸電流Iqの変動成分が大きくなることで、軸誤差Δθの推定精度が低下することが考えられる。この結果、トルク制御時に位置ずれが発生し、電流ピーク付近での発振等が発生したと考えられる。 The extended induced voltage model expressed by equation (40) is a steady-state model that assumes a steady state. In the steady state, the d-axis and q-axis currents (and the γδ-axis currents) are considered to be direct currents. Therefore, equation (40) does not take into account fluctuations in the d-axis current Id and the q-axis current Iq (i.e., changes over time in the d-axis current Id and the q-axis current Iq), and does not reflect the transient response of the current when estimating the position error Δθ. For this reason, it is thought that the fluctuation components of the d-axis current Id and the q-axis current Iq become larger, reducing the accuracy of estimating the position error Δθ. As a result, it is thought that position deviations occur during torque control, causing oscillations near the current peaks.

<電流変動を考慮した過渡モデルによるロータ位置推定>
本発明者はこの点に着目し、d軸電流Idやq軸電流Iqの変動を考慮した過渡モデルを構築した。式(41)は、過渡モデルにおける軸誤差算出式である。なお式(41)において、"p"は、微分演算子であり、LdはモータMにおけるd軸インダクタンスである。
<Rotor position estimation using a transient model that takes current fluctuations into account>
The inventors focused on this point and constructed a transient model that takes into account fluctuations in the d-axis current Id and the q-axis current Iq. Equation (41) is the axis error calculation formula for the transient model. In equation (41), "p" is a differential operator, and Ld is the d-axis inductance of the motor M.

式(41)では、トルク制御による電流変化に伴うインダクタンス電圧"p・Ld・Id"及び"p・Ld・Iq"(p項電圧)が含まれる。すなわち式(41)に示す電流変動を考慮した過渡モデルでは、電流の微分値であるインダクタンス電圧(p項電圧)が考慮される。これにより、トルク制御等における電流変動の作用(電流の過渡的な変化による作用)を反映することができる。 Equation (41) includes the inductance voltages "p·Ld·Id" and "p·Ld·Iq" (p-term voltages) that accompany current changes due to torque control. In other words, the transient model that takes into account current fluctuations shown in equation (41) takes into account the inductance voltage (p-term voltage), which is the differential value of the current. This makes it possible to reflect the effect of current fluctuations (effects due to transient changes in current) in torque control, etc.

例えば式(40)で表される定常状態を前提とした拡張誘起電圧モデルでは、電流変化に伴うインダクタンス電圧が考慮されていないため、モデル誤差が生じる。特に、軸誤差Δθが0となるためには、逆正接関数内の分子であるγ軸誘起電圧のモデルの正確性が重要であるが、式(40)の逆正接関数内の分子には、d軸電流Idの電流変化(d軸電流変動)によって生じるインダクタンス電圧(p・Ld・Id)が含まれない。このため、特にd軸電流Idが大きく変動する電圧飽和領域でのトルク制御では、式(40)におけるモデル誤差が大きくなり、電流ピーク付近での発振が顕著に生じていたものと考えられる。 For example, the extended induced voltage model, which is based on the steady state expressed in equation (40), does not take into account the inductance voltage that accompanies current changes, resulting in a model error. In particular, for the axis error Δθ to be zero, the accuracy of the model of the γ-axis induced voltage, which is the numerator in the arctangent function, is important. However, the numerator in the arctangent function of equation (40) does not include the inductance voltage (p Ld Id) that occurs due to current changes in the d-axis current Id (d-axis current fluctuations). For this reason, the model error in equation (40) becomes large, especially during torque control in the voltage saturation region where the d-axis current Id fluctuates greatly, and it is thought that this causes significant oscillation near the current peak.

これに対し、式(41)に示すモデルでは、軸誤差Δθの算出時に、d軸電流Idの電流変化によって生じるインダクタンス電圧(p・Ld・Id)が反映される。これにより、電圧飽和領域でのトルク制御時にd軸電流Idを変動させる場合でも、軸誤差Δθを精度よく算出することが可能となる。以下では式(41)に示すモデルを用いて軸誤差Δθを算出する処理として、図2に示す電流変動抽出器35、インダクタンス電圧算出器36、及び軸誤差演算器30の各部の動作を具体的に説明する。 In contrast, the model shown in equation (41) reflects the inductance voltage (p Ld Id) generated by changes in the d-axis current Id when calculating the axis error Δθ. This makes it possible to accurately calculate the axis error Δθ even when the d-axis current Id is varied during torque control in the voltage saturation region. Below, we will specifically explain the operation of the current fluctuation extractor 35, inductance voltage calculator 36, and axis error calculator 30 shown in Figure 2 as part of the process of calculating the axis error Δθ using the model shown in equation (41).

<電流変動抽出器の動作>
電流変動抽出器35は、モータ電流の周期的な変動成分である電流変動成分を抽出する。電流変動成分は、トルク制御によって生じるd軸電流Id及びq軸電流Iqの周期的な変動成分である。電流変動抽出器35は、d軸電流Idからd軸電流変動成分ΔIdを抽出し、q軸電流Iqからq軸電流変動成分ΔIqを抽出する。
<Operation of the current fluctuation extractor>
The current fluctuation extractor 35 extracts current fluctuation components, which are periodic fluctuation components of the motor current. The current fluctuation components are periodic fluctuation components of the d-axis current Id and the q-axis current Iq that occur due to torque control. The current fluctuation extractor 35 extracts a d-axis current fluctuation component ΔId from the d-axis current Id and a q-axis current fluctuation component ΔIq from the q-axis current Iq.

本実施形態では、電流変動抽出器35は、モータ電流(d軸電流Id及びq軸電流Iq)をフーリエ級数展開することで、電流変動成分を抽出する。具体的には、モータ制御装置100を構成するマイコン等の演算装置により、d軸電流Id及びq軸電流Iqの各々についてフーリエ級数展開のフーリエ係数を算出する処理が実行される。この処理は、例えばd軸電流Id及びq軸電流Iqをフーリエ変換することで周期的な変動成分を抽出する処理と同等の処理である。 In this embodiment, the current fluctuation extractor 35 extracts current fluctuation components by expanding the motor current (d-axis current Id and q-axis current Iq) into a Fourier series. Specifically, a calculation device such as a microcomputer that constitutes the motor control device 100 executes a process to calculate the Fourier coefficients of the Fourier series expansion for each of the d-axis current Id and the q-axis current Iq. This process is equivalent to, for example, a process that extracts periodic fluctuation components by Fourier transforming the d-axis current Id and the q-axis current Iq.

後述するように、インダクタンス電圧(p項電圧)の算出には、電流変動成分を微分した電流微分値が用いられる。電流微分値はノイズ等により値が変化しやすいパラメータである。これに対し、フーリエ級数展開を用いることで、d軸電流Id及びq軸電流Iqのノイズの影響が抑制された電流変動成分を抽出することが可能となる。これにより、電流微分値の値が安定しインダクタンス電圧の算出精度を向上することが可能となる。 As will be described later, the current differential value, which is the differential of the current fluctuation component, is used to calculate the inductance voltage (p-term voltage). The current differential value is a parameter whose value is easily affected by noise, etc. In contrast, by using Fourier series expansion, it is possible to extract the current fluctuation component in which the effects of noise on the d-axis current Id and q-axis current Iq are suppressed. This stabilizes the value of the current differential value, making it possible to improve the accuracy of calculating the inductance voltage.

また本実施形態では、電流変動抽出器35は、互いに周期の異なる2以上の電流変動成分を抽出する。例えばシングルロータリー圧縮機を運転する場合、負荷トルクはモータMの機械角位相θmと同じ周期で振動する。この場合、トルク制御を行うとd軸電流Id及びq軸電流Iqには、機械角位相θmと同じ周期で変動する1次の電流変動成分や、機械角位相θmの2倍の周期で変動する2次の電流変動成分等の高次の電流変動成分が発生する。電流変動抽出器35は、d軸電流Id及びq軸電流Iqの各々から、1次の電流変動成分や高次の電流変動成分を抽出する。これらの電流変動成分を用いることで、インダクタンス電圧の算出精度を向上することが可能となる。 In addition, in this embodiment, the current fluctuation extractor 35 extracts two or more current fluctuation components with different periods. For example, when operating a single rotary compressor, the load torque oscillates with the same period as the mechanical angle phase θm of the motor M. In this case, when torque control is performed, higher-order current fluctuation components are generated in the d-axis current Id and the q-axis current Iq, such as a first-order current fluctuation component that fluctuates with the same period as the mechanical angle phase θm, and a second-order current fluctuation component that fluctuates with twice the period of the mechanical angle phase θm. The current fluctuation extractor 35 extracts the first-order current fluctuation component and higher-order current fluctuation component from each of the d-axis current Id and the q-axis current Iq. Using these current fluctuation components makes it possible to improve the accuracy of calculating the inductance voltage.

本実施形態では、電流変動抽出器35は、モータ電流(d軸電流Id及びq軸電流Iq)をフーリエ級数展開することで、モータ電流(d軸電流Id及びq軸電流Iq)の1次の電流変動成分及び2次の電流変動成分を抽出する。例えばロータ位置の推定に用いる電流変動成分の種類が多いほどロータ位置の推定精度が向上するが、一方で処理時間が長くなる。そこで、1次及び2次の電流変動成分までを用いることで、位置推定の高精度化と処理時間の短縮を両立することが可能となる。 In this embodiment, the current fluctuation extractor 35 extracts the first-order and second-order current fluctuation components of the motor currents (d-axis current Id and q-axis current Iq) by expanding the motor currents (d-axis current Id and q-axis current Iq) into a Fourier series. For example, the more types of current fluctuation components used to estimate the rotor position, the more accurate the rotor position estimation will be, but the longer the processing time will be. Therefore, by using only the first-order and second-order current fluctuation components, it is possible to achieve both high accuracy in position estimation and reduced processing time.

以下では、電流変動成分の次数をn(n=1又は2)と記載する。またn次のd軸電流変動成分をΔIdnと記載し、n次のq軸電流変動成分をΔIqnと記載する。 In the following, the order of the current fluctuation component will be referred to as n (n = 1 or 2). The nth-order d-axis current fluctuation component will be referred to as ΔIdn, and the nth-order q-axis current fluctuation component will be referred to as ΔIqn.

まずn次のd軸電流変動成分ΔIdnを算出する方法について説明する。電流変動抽出器35は、n次のd軸電流変動成分ΔIdnをsin成分とcos成分とに分離して算出する。具体的には、電流変動抽出器35は、式(42.1)に従って、n次のd軸電流変動成分ΔIdnのsin成分Idn_sinを算出し、式(42.2)に従って、n次のd軸電流変動成分ΔIdnのcos成分Idn_cosを算出する。
First, a method for calculating the nth-order d-axis current fluctuation component ΔIdn will be described. The current fluctuation extractor 35 separates the nth-order d-axis current fluctuation component ΔIdn into a sine component and a cosine component. Specifically, the current fluctuation extractor 35 calculates the sine component Idn_sin of the nth-order d-axis current fluctuation component ΔIdn according to equation (42.1), and calculates the cosine component Idn_cos of the nth-order d-axis current fluctuation component ΔIdn according to equation (42.2).

式(42.1)及び式(42.2)は、n次のフーリエ係数を表す式である。n次の機械角位相θmnは、n=1の場合、1次の機械角位相θm1であり、n=2の場合、2次の機械角位相θm2である。またn次の機械角位相θmn(θm1又はθm2)は、図2を参照して説明した位置推定器32により算出される瞬時値である。n次のd軸電流変動成分ΔIdnのsin成分Idn_sin及びcos成分Idn_cosは、機械角周期ごとに算出される。これにより、ノイズや他の高調波成分を除去することができる。 Equations (42.1) and (42.2) represent the nth-order Fourier coefficients. The nth-order mechanical angle phase θmn is the first-order mechanical angle phase θm1 when n = 1, and is the second-order mechanical angle phase θm2 when n = 2. The nth-order mechanical angle phase θmn (θm1 or θm2) is an instantaneous value calculated by the position estimator 32 described with reference to Figure 2. The sine component Idn_sin and cosine component Idn_cos of the nth-order d-axis current fluctuation component ΔIdn are calculated for each mechanical angle cycle. This makes it possible to remove noise and other harmonic components.

電流変動抽出器35は、n次のd軸電流変動成分ΔIdnのsin成分Idn_sin及びcos成分Idn_cosを用いて、式(43.1)に従って、n次のd軸電流変動成分ΔIdnの振幅|ΔIdn|を算出し、式(43.2)に従って、n次のd軸電流変動成分ΔIdnの基準位相φdnを算出する。
The current fluctuation extractor 35 calculates the amplitude |ΔIdn| of the nth-order d-axis current fluctuation component ΔIdn according to equation (43.1) using the sine component Idn_sin and cosine component Idn_cos of the nth-order d-axis current fluctuation component ΔIdn, and calculates the reference phase φdn of the nth-order d-axis current fluctuation component ΔIdn according to equation (43.2).

n次のd軸電流変動成分ΔIdnは、式(43.1)の振幅|ΔIdn|及び式(43.2)の基準位相φdnを用いて、式(44)のように表される。
The n-th order d-axis current fluctuation component ΔIdn is expressed as in equation (44) using the amplitude |ΔIdn| of equation (43.1) and the reference phase φdn of equation (43.2).

式(44)に記載したn次の機械角位相θmnは、モータMの回転とともに変化する変数である。従って、n次のd軸電流変動成分ΔIdnの波形は、基準位相φdnを初期位相として、振幅|ΔIdn|で振動するsin波形となる。このように、n次のd軸電流変動成分ΔIdnを抽出する処理は、その波形を表すことが可能なパラメータ(振幅|ΔIdn|及び基準位相φdn)を算出する処理である。 The nth-order mechanical angle phase θmn written in equation (44) is a variable that changes with the rotation of the motor M. Therefore, the waveform of the nth-order d-axis current fluctuation component ΔIdn is a sine waveform that oscillates with an amplitude |ΔIdn|, with the reference phase φdn as the initial phase. In this way, the process of extracting the nth-order d-axis current fluctuation component ΔIdn is a process of calculating parameters (amplitude |ΔIdn| and reference phase φdn) that can represent that waveform.

次に、n次のq軸電流変動成分ΔIqnを算出する方法について説明する。n次のq軸電流変動成分ΔIqnの算出方法は、基本的にn次のd軸電流変動成分ΔIdnの算出方法と同様である。具体的には、電流変動抽出器35は、式(45.1)に従って、n次のq軸電流変動成分ΔIqnのsin成分Iqn_sinを算出し、式(45.2)に従って、n次のq軸電流変動成分ΔIqnのcos成分Iqn_cosを算出する。
Next, a method for calculating the nth-order q-axis current fluctuation component ΔIqn will be described. The method for calculating the nth-order q-axis current fluctuation component ΔIqn is basically the same as the method for calculating the nth-order d-axis current fluctuation component ΔIdn. Specifically, the current fluctuation extractor 35 calculates the sine component Iqn_sin of the nth-order q-axis current fluctuation component ΔIqn according to equation (45.1), and calculates the cosine component Iqn_cos of the nth-order q-axis current fluctuation component ΔIqn according to equation (45.2).

また電流変動抽出器35は、n次のq軸電流変動成分ΔIqnのsin成分Iqn_sin及びcos成分Iqn_cosを用いて、式(46.1)に従って、n次のq軸電流変動成分ΔIqnの振幅|ΔIqn|を算出し、式(46.2)に従って、n次のq軸電流変動成分ΔIqnの基準位相φqnを算出する。
In addition, the current fluctuation extractor 35 calculates the amplitude |ΔIqn| of the nth-order q-axis current fluctuation component ΔIqn according to equation (46.1) using the sine component Iqn_sin and cosine component Iqn_cos of the nth-order q-axis current fluctuation component ΔIqn, and calculates the reference phase φqn of the nth-order q-axis current fluctuation component ΔIqn according to equation (46.2).

n次のq軸電流変動成分ΔIqnは、式(46.1)の振幅|ΔIqn|及び式(46.2)の基準位相φqnを用いて、式(47)のように表される。
The n-th order q-axis current fluctuation component ΔIqn is expressed as in equation (47) using the amplitude |ΔIqn| of equation (46.1) and the reference phase φqn of equation (46.2).

式(47)に示すように、n次のq軸電流変動成分ΔIqnの波形は、基準位相φqnを初期位相として、振幅|ΔIqn|で振動するsin波形となる。このように、n次のq軸電流変動成分ΔIqnを抽出する処理は、その波形を表すことが可能なパラメータ(振幅|ΔIqn|及び基準位相φqn)を算出する処理である。 As shown in equation (47), the waveform of the nth-order q-axis current fluctuation component ΔIqn is a sine waveform that oscillates with an amplitude |ΔIqn|, with the reference phase φqn as the initial phase. In this way, the process of extracting the nth-order q-axis current fluctuation component ΔIqn is a process of calculating parameters (amplitude |ΔIqn| and reference phase φqn) that can represent that waveform.

電流変動抽出器35においてフーリエ級数展開により算出される電流変動成分を式(48.1)~式(48.4)に示す。式(48.1)は、1次のd軸電流変動成分ΔId1であり、式(48.2)は、2次のd軸電流変動成分ΔId2である。また式(48.3)は、1次のq軸電流変動成分ΔIq1であり、式(48.4)は、2次のq軸電流変動成分ΔIq2である。
The current fluctuation components calculated by the current fluctuation extractor 35 through Fourier series expansion are shown in equations (48.1) to (48.4). Equation (48.1) is the first-order d-axis current fluctuation component ΔId1, and equation (48.2) is the second-order d-axis current fluctuation component ΔId2. Equation (48.3) is the first-order q-axis current fluctuation component ΔIq1, and equation (48.4) is the second-order q-axis current fluctuation component ΔIq2.

電流変動抽出器35では、電流変動成分として、式(48.1)~式(48.4)の各式における振幅(|ΔId1|、|ΔId2|、|ΔIq1|、|ΔIq2|)と、基準位相(φd1、φd2、φq1、φq2)とがそれぞれ算出される。これらのパラメータは、インダクタンス電圧算出器36に出力される。 The current fluctuation extractor 35 calculates the amplitudes (|ΔId1|, |ΔId2|, |ΔIq1|, |ΔIq2|) and reference phases (φd1, φd2, φq1, φq2) in each of equations (48.1) to (48.4) as the current fluctuation components. These parameters are output to the inductance voltage calculator 36.

<インダクタンス電圧算出器の動作>
インダクタンス電圧算出器36は、モータMのインダクタンスと電流変動成分の微分値とに基づいて、電流変動成分により生じる誘起電圧であるインダクタンス電圧を算出する。ここで、インダクタンス電圧は、式(41)に示すp項電圧(p・Ld・Id及びp・Ld・Iq)である。従って、モータMのインダクタンスとしては、d軸インダクタンスLdが用いられる。
<Operation of the inductance voltage calculator>
The inductance voltage calculator 36 calculates the inductance voltage, which is an induced voltage generated by the current fluctuation component, based on the inductance of the motor M and the differential value of the current fluctuation component. Here, the inductance voltage is the p-term voltage (p·Ld·Id and p·Ld·Iq) shown in equation (41). Therefore, the d-axis inductance Ld is used as the inductance of the motor M.

また微分演算子"p"は演算対象となるパラメータの変動成分にのみ作用する(直流成分については微分値が0となる)。従って、p項電圧におけるd軸電流Id及びq軸電流Iqとしては、電流変動抽出器35により算出された電流変動成分(ΔId1、ΔId2、ΔIq1、ΔIq2)を用いることができる。 Furthermore, the differential operator "p" acts only on the fluctuation component of the parameter being calculated (the differential value for DC components is 0). Therefore, the current fluctuation components (ΔId1, ΔId2, ΔIq1, ΔIq2) calculated by the current fluctuation extractor 35 can be used as the d-axis current Id and q-axis current Iq in the p-term voltage.

ここで、d軸電流Idのうち1次の機械角位相θm1と相関のある電流成分を電流相関値Id1と記載し、2次の機械角位相θm2と相関のある電流成分を電流相関値Id2と記載する。電流相関値Id1は、1次のd軸電流変動成分ΔId1であり、電流相関値Id2は、2次のd軸電流変動成分ΔId2である。同様に、q軸電流Iqについても1次の機械角位相θm1と相関のある電流成分を電流相関値Iq1と記載し、2次の機械角位相θm2と相関のある電流成分を電流相関値Iq2と記載する。電流相関値Iq1は、1次のq軸電流変動成分ΔIq1であり、電流相関値Iq2は、2次のq軸電流変動成分ΔIq2である。 Here, the current component of the d-axis current Id that is correlated with the first-order mechanical angle phase θm1 is referred to as the current correlation value Id1, and the current component that is correlated with the second-order mechanical angle phase θm2 is referred to as the current correlation value Id2. The current correlation value Id1 is the first-order d-axis current fluctuation component ΔId1, and the current correlation value Id2 is the second-order d-axis current fluctuation component ΔId2. Similarly, the current component of the q-axis current Iq that is correlated with the first-order mechanical angle phase θm1 is referred to as the current correlation value Iq1, and the current component that is correlated with the second-order mechanical angle phase θm2 is referred to as the current correlation value Iq2. The current correlation value Iq1 is the first-order q-axis current fluctuation component ΔIq1, and the current correlation value Iq2 is the second-order q-axis current fluctuation component ΔIq2.

例えばd軸電流Idにおいて、1次の機械角位相θm1と同様の周期の電流変動によるインダクタンス電圧は、電流相関値Id1を用いて、式(49.1)~式(49.4)に従って算出される。 For example, for the d-axis current Id, the inductance voltage due to current fluctuations with a period similar to that of the primary mechanical angle phase θm1 is calculated using the current correlation value Id1 according to equations (49.1) to (49.4).

この場合、式(49.1)に示すように、p項電圧のd軸電流Idとして電流相関値Id1が用いられ、電流相関値Id1が時間微分される。式(49.2)では、電流相関値Id1の時間微分が1次の機械角位相θm1による微分に変換される。これに伴い1次の機械角位相θ1を時間微分する項(dθm1/dt)が生じるが、式(49.3)に示すように、この項は機械角推定角速度ωmで表される。また式(49.3)では、電流相関値Id1を1次のd軸電流変動成分ΔId1に置き換えている。 In this case, as shown in equation (49.1), the current correlation value Id1 is used as the d-axis current Id of the p-term voltage, and the current correlation value Id1 is time-differentiated. In equation (49.2), the time derivative of the current correlation value Id1 is converted into a derivative with respect to the first-order mechanical angle phase θm1. As a result, a term (dθm1/dt) that time-differentiates the first-order mechanical angle phase θ1 is generated, and as shown in equation (49.3), this term is expressed as the estimated mechanical angle angular velocity ωm. Furthermore, in equation (49.3), the current correlation value Id1 is replaced with the first-order d-axis current fluctuation component ΔId1.

上記した式(48.1)を式(49.3)に適用し、1次のd軸電流変動成分ΔId1を1次の機械角位相θm1で微分すると、式(49.4)が得られる。このように、d軸電流Idの1次成分に応じたインダクタンス電圧(p・Ld・Id1)は、機械角推定角速度ωm、d軸インダクタンスLd、振幅|ΔId1|、及び基準位相φd1を用いて算出することが可能となる。なお式(49.4)に記載した1次の機械角位相θm1は、モータMの回転とともに変化する変数である。従って式(49.4)に1次の機械角位相θm1の瞬時値を入力することで、任意のタイミングでのインダクタンス電圧(p・Ld・Id1)の値が算出される。 By applying the above equation (48.1) to equation (49.3) and differentiating the first-order d-axis current fluctuation component ΔId1 with respect to the first-order mechanical angle phase θm1, equation (49.4) is obtained. In this way, the inductance voltage (p·Ld·Id1) corresponding to the first-order component of the d-axis current Id can be calculated using the estimated mechanical angle angular velocity ωm, the d-axis inductance Ld, the amplitude |ΔId1|, and the reference phase φd1. Note that the first-order mechanical angle phase θm1 described in equation (49.4) is a variable that changes with the rotation of motor M. Therefore, by inputting the instantaneous value of the first-order mechanical angle phase θm1 into equation (49.4), the value of the inductance voltage (p·Ld·Id1) at any timing can be calculated.

q軸電流Iqの1次成分に応じたインダクタンス電圧(p・Ld・Iq1)も、上記の方法と同様に算出することができる。p・Ld・Iq1を式(50)に示す。
The inductance voltage (p·Ld·Iq1) corresponding to the primary component of the q-axis current Iq can also be calculated in the same manner as above. p·Ld·Iq1 is shown in equation (50).

またd軸電流Idの2次成分に応じたインダクタンス電圧(p・Ld・Id2)及びq軸電流Iqの2次成分に応じたインダクタンス電圧(p・Ld・Iq2)についても、同様に算出することができる。式(51)にp・Ld・Id2を示し、式(52)にp・Ld・Iq2を示す。
Similarly, the inductance voltage (p·Ld·Id2) corresponding to the second-order component of the d-axis current Id and the inductance voltage (p·Ld·Iq2) corresponding to the second-order component of the q-axis current Iq can be calculated. Equation (51) shows p·Ld·Id2, and equation (52) shows p·Ld·Iq2.

なお、インダクタンス電圧の2次成分を導出する過程で、2次の機械角位相θm2の時間微分(dθm2/dt)が出てくる。dθm2/dtの値は、式(53)に示すように1次の機械角位相θm1の時間微分の2倍であり、2ωmとなる。
In the process of deriving the second-order component of the inductance voltage, the time derivative (dθm2/dt) of the second-order mechanical angle phase θm2 is obtained. The value of dθm2/dt is twice the time derivative of the first-order mechanical angle phase θm1, or 2ωm, as shown in equation (53).

このように、インダクタンス電圧算出器36は、互いに周波数の異なる2以上の電流変動成分の各々について電流変動成分の微分値に基づいてインダクタンス電圧を算出する。本実施形態では、例えばd軸電流Id(又はq軸電流Iq)について1次のインダクタンス電圧及び2次のインダクタンス電圧が算出されるが、どちらもd軸電流Id(又はq軸電流Iq)の電流変動に応じて発生する誘起電圧である。 In this way, the inductance voltage calculator 36 calculates the inductance voltage for each of two or more current fluctuation components with different frequencies based on the differential value of the current fluctuation component. In this embodiment, for example, a primary inductance voltage and a secondary inductance voltage are calculated for the d-axis current Id (or the q-axis current Iq), and both are induced voltages that occur in response to current fluctuations in the d-axis current Id (or the q-axis current Iq).

d軸電流Id(又はq軸電流Iq)の電流変動に応じて発生する誘起電圧は、1次のインダクタンス電圧及び2次のインダクタンス電圧を加算した電圧として算出することができる。式(54)は、d軸電流Idの変動成分によるインダクタンス電圧p・Ld・Idであり、式(55)は、q軸電流Iqの変動成分によるインダクタンス電圧p・Ld・Iqである。
The induced voltage generated in response to current fluctuations in the d-axis current Id (or the q-axis current Iq) can be calculated as the sum of the primary inductance voltage and the secondary inductance voltage. Equation (54) represents the inductance voltage p Ld Id due to the fluctuation component of the d-axis current Id, and Equation (55) represents the inductance voltage p Ld Iq due to the fluctuation component of the q-axis current Iq.

このように、インダクタンス電圧算出器36は、互いに周波数の異なる2以上の電流変動成分ごとのインダクタンス電圧を合算した合算インダクタンス電圧(p・Ld・Id及びp・Ld・Iq)を算出する。これにより、1次の電流変動だけでなく高次の電流変動による誘起電圧を反映することが可能となり、インダクタンス電圧の算出精度が向上する。このインダクタンス電圧が、軸誤差Δθの演算に用いられる。 In this way, the inductance voltage calculator 36 calculates the combined inductance voltage (p·Ld·Id and p·Ld·Iq) by adding up the inductance voltages for two or more current fluctuation components with different frequencies. This makes it possible to reflect induced voltages caused by not only primary current fluctuations but also higher-order current fluctuations, improving the accuracy of inductance voltage calculations. This inductance voltage is used to calculate the axis error Δθ.

例えば、d軸電流変動により生じるインダクタンス電圧p・Ld・Idは、第1及び第2の機械角位相(θm1及びθm2)の瞬時値を式(49.4)及び式(51)に入力し、それらの値を式(54)に従って加算することで算出される。同様に、q軸電流変動により生じるインダクタンス電圧p・Ld・Iqは、第1及び第2の機械角位相(θm1及びθm2)の瞬時値を式(50)及び式(52)に入力し、それらの値を式(54)に従って加算することで算出される。算出された各インダクタンス電圧は、軸誤差演算器30に出力される。 For example, the inductance voltages p, Ld, and Id generated by d-axis current fluctuations are calculated by inputting the instantaneous values of the first and second mechanical angle phases (θm1 and θm2) into equations (49.4) and (51) and adding these values according to equation (54). Similarly, the inductance voltages p, Ld, and Iq generated by q-axis current fluctuations are calculated by inputting the instantaneous values of the first and second mechanical angle phases (θm1 and θm2) into equations (50) and (52) and adding these values according to equation (54). Each calculated inductance voltage is output to the axis error calculator 30.

<軸誤差演算器の動作>
軸誤差演算器30は、式(41)に示す過渡モデルにおける軸誤差算出式に従って、軸誤差Δθを算出する。これにより、トルク制御等において生じるd軸電流Id及びq軸電流Iqの周期的な電流変動に伴うインダクタンス電圧(p項電圧)を加味して軸誤差Δθを精度よく算出することが可能となる。
<Operation of the axis error calculator>
The axis error calculator 30 calculates the axis error Δθ in accordance with the axis error calculation formula in the transient model shown in formula (41). This makes it possible to accurately calculate the axis error Δθ by taking into account the inductance voltage (p-term voltage) that accompanies periodic current fluctuations in the d-axis current Id and q-axis current Iq that occur during torque control, etc.

例えば、インダクタンス電圧(p項電圧)以外の項については、Vd及びVqとして、d軸電圧指令値Vd*及びq軸電圧指令値Vq*が用いられ、Id及びIqとして、モータ電流の検出値であるd軸電流Id及びq軸電流Iqが用いられる。またインダクタンス電圧(p項電圧)には、インダクタンス電圧算出器36から出力されたd軸電流変動により生じるインダクタンス電圧p・Ld・Id及びq軸電流変動により生じるインダクタンス電圧p・Ld・Iqが用いられる。 For example, for terms other than the inductance voltage (p-term voltage), the d-axis voltage command value Vd* and the q-axis voltage command value Vq* are used as Vd and Vq, and the d-axis current Id and q-axis current Iq, which are detected values of the motor current, are used as Id and Iq. Furthermore, the inductance voltage (p-term voltage) uses the inductance voltage p·Ld·Id generated by d-axis current fluctuations and the inductance voltage p·Ld·Iq generated by q-axis current fluctuations output from the inductance voltage calculator 36.

これにより軸誤差Δθには、電流変動成分による誘起電圧(インダクタンス電圧)の作用が反映される。また軸誤差Δθはロータ位置(機械角位相θmや電気角位相θe)の推定処理に用いられる。このように、モータ制御装置100では、インダクタンス電圧に基づいてモータMのロータ位置が推定される。これにより、電流変動成分により生じる誘起電圧であるインダクタンス電圧を計算に入れてロータ位置を推定することが可能となり、ロータ位置の推定精度を向上することが可能となる。 As a result, the axis error Δθ reflects the effect of the induced voltage (inductance voltage) caused by the current fluctuation component. The axis error Δθ is also used in the estimation process of the rotor position (mechanical angle phase θm and electrical angle phase θe). In this way, the motor control device 100 estimates the rotor position of the motor M based on the inductance voltage. This makes it possible to estimate the rotor position by taking into account the inductance voltage, which is the induced voltage caused by the current fluctuation component, and improves the accuracy of the rotor position estimation.

また本実施形態では、インダクタンス電圧として、上記した式(54)及び式(55)に示す合算インダクタンス電圧が用いられる。すなわち、合算インダクタンス電圧に基づいてロータ位置が推定される。これにより、例えば負荷トルクの周波数以外の周波数成分による誘起電圧による影響を反映することが可能となり、ロータ位置の推定精度をより向上することが可能となる。 In addition, in this embodiment, the total inductance voltage shown in the above equations (54) and (55) is used as the inductance voltage. In other words, the rotor position is estimated based on the total inductance voltage. This makes it possible to reflect the influence of induced voltage due to frequency components other than the frequency of the load torque, for example, and further improves the accuracy of rotor position estimation.

<定常モデル及び過渡モデルでの動作結果>
以下では、式(40)に示す定常モデルを用いたモータ制御を比較例として、式(41)に示す本実施形態に係る過渡モデルを用いたモータ制御の動作結果と比較する。
<Operation results for steady-state and transient models>
In the following, motor control using the steady-state model shown in equation (40) will be compared as a comparative example with the operation results of motor control using the transient model according to this embodiment shown in equation (41).

図11は、比較例として挙げる定常モデル及び本実施形態に係る過渡モデルによるモータ制御時の測定データを示すグラフである。図11に示す各グラフの横軸は時間t[msec]である。ここでは、シングルロータリー圧縮機を運転するモータMの制御中に、定常モデルを用いたモータ制御から、過渡モデルを用いたモータ制御へと切り替えた際のデータが示されている。 Figure 11 is a graph showing measurement data during motor control using a steady-state model (a comparative example) and the transient model according to this embodiment. The horizontal axis of each graph shown in Figure 11 represents time t [msec]. This graph shows data obtained when switching from motor control using the steady-state model to motor control using the transient model during control of the motor M that operates a single rotary compressor.

定常モデルから過渡モデルへの切替タイミングは、t=8000msecで行った。また各データは、電圧飽和領域において電圧変動を抑制するトルク制御(電圧飽和領域電圧指令値生成器14bにより行われるトルク制御)を行っている最中に測定した。またこの測定は、定常モデルを用いたモータ制御時に見られる電流ピーク付近に生じる発振等をわかりやすく示すため、モータMに対して定格以上の負荷がかかる過負荷状態で行った。なお、過負荷状態でない通常の運転状態でも、定常モデルを用いた場合には、電流ピーク付近の発振等が発生する。 The timing for switching from the steady-state model to the transient model was t = 8000 msec. Each piece of data was measured during torque control (torque control performed by the voltage saturation region voltage command value generator 14b) that suppresses voltage fluctuations in the voltage saturation region. This measurement was also performed under an overload condition where a load above the rated capacity was applied to motor M in order to clearly demonstrate oscillations that occur near current peaks when the motor is controlled using the steady-state model. Even in normal operating conditions that are not overloaded, oscillations near current peaks occur when the steady-state model is used.

図11の上段左側のグラフは、機械角速度を示すグラフであり、モータMの機械角推定角速度ωm及び機械角速度指令値ωm*がプロットされている。グラフの縦軸は、回転速度[rps(rotation per second)]である。測定時の機械角速度指令値ωm*は、切替タイミングの前後で変更せず35rpsとした。 The graph on the top left of Figure 11 shows the mechanical angular velocity, plotting the estimated mechanical angular velocity ωm and mechanical angular velocity command value ωm* of motor M. The vertical axis of the graph represents rotational speed [rps (rotations per second)]. The mechanical angular velocity command value ωm* during measurement was unchanged before and after the switching timing, remaining at 35 rps.

図11の中段左側のグラフは、d軸電流及びq軸電流についてのグラフであり、電流指令値(d軸電流指令値Id*及びq軸電流指令値Iq*)と、電流検出値(d軸電流Id及びq軸電流Iq)とがプロットされている。グラフの縦軸は、電流値[A]である。 The graph on the left side of the middle row in Figure 11 is a graph for the d-axis current and q-axis current, plotting the current command values (d-axis current command value Id* and q-axis current command value Iq*) and the detected current values (d-axis current Id and q-axis current Iq). The vertical axis of the graph represents the current value [A].

図11の下段左側のグラフは、d軸電圧及びq軸電圧についてのグラフであり、電圧検出値(d軸電圧Vd及びq軸電圧Vq)がプロットされている。グラフの縦軸は、電圧値[V]である。 The graph on the bottom left of Figure 11 is a graph of the d-axis voltage and q-axis voltage, plotting the detected voltage values (d-axis voltage Vd and q-axis voltage Vq). The vertical axis of the graph represents the voltage value [V].

図11の上段右側のグラフは、出力電圧振幅Va及びDC電圧Vdcについてのグラフである。グラフの縦軸は電圧値[V]である。出力電圧振幅Va及びDC電圧Vdcのデータとしては、dq次元でのデータを用いている。dq次元での出力電圧振幅Vaは、d軸電圧Vd及びq軸電圧Vqを用いて、以下の式(56)により表される。
またdq次元でのDC電圧VdcをVdc_2φとし、静止座標上(uvw次元)でのDC電圧をVdc_3φとすると、Vdc_2φ及びVdc_3φの関係は、以下の式(57)により表される。
The graph on the upper right of Fig. 11 is a graph of the output voltage amplitude Va and the DC voltage Vdc. The vertical axis of the graph represents voltage [V]. Data in the dq dimension is used for the output voltage amplitude Va and the DC voltage Vdc. The output voltage amplitude Va in the dq dimension is expressed by the following equation (56) using the d-axis voltage Vd and the q-axis voltage Vq.
Furthermore, if the DC voltage Vdc in the dq dimension is Vdc_2φ and the DC voltage on the stationary coordinate system (uvw dimension) is Vdc_3φ, the relationship between Vdc_2φ and Vdc_3φ is expressed by the following equation (57).

図11の中段右側のグラフは、軸誤差Δθを示すグラフである。グラフの縦軸は、角度[deg]である。グラフの前半(t<8000msec)では、式(40)に従って軸誤差Δθを算出した。また、グラフの後半(t≧8000msec)では、式(41)に従って軸誤差Δθを算出した。ここでは、軸誤差Δθのデータとして、各式からの算出値を1msecの時定数をもつLPF(ローパスフィルタ)を用いて平滑化したデータをプロットしている。 The graph in the middle right of Figure 11 shows the axis error Δθ. The vertical axis of the graph represents angle [deg]. In the first half of the graph (t<8000 msec), the axis error Δθ was calculated according to equation (40). In the second half of the graph (t≧8000 msec), the axis error Δθ was calculated according to equation (41). Here, the axis error Δθ data is plotted after smoothing the values calculated from each equation using an LPF (low-pass filter) with a time constant of 1 msec.

図11の下段右側のグラフは、インバータ(IPM25)の消費電力Pinvを示すグラフである。グラフの縦軸は、電力[W]である。消費電力Pinvは、d軸電圧Vd及びq軸電圧Vqと、d軸電流Id及びq軸電流Iqとを用いて、以下の式(58)により表される。
ここでは、Pinvのデータとして、式(58)からの算出値を1000msecの時定数をもつLPFを用いて平滑化したデータをプロットしている。
The graph on the lower right side of Fig. 11 shows the power consumption Pinv of the inverter (IPM 25). The vertical axis of the graph represents power [W]. The power consumption Pinv is expressed by the following equation (58) using the d-axis voltage Vd, the q-axis voltage Vq, the d-axis current Id, and the q-axis current Iq.
Here, the data of Pinv is plotted by smoothing the calculated value from equation (58) using an LPF with a time constant of 1000 msec.

図12は、比較例として挙げる定常モデルによるモータ制御時の測定データを示すグラフである。図12には、図11に示すデータのうち切替タイミングt=8000msecよりも前の期間(0msec≦t≦100msec)における測定データが示されている。各グラフの配置は図11と同様である。 Figure 12 is a graph showing measurement data during motor control using a steady-state model, presented as a comparative example. Figure 12 shows measurement data from the period shown in Figure 11 prior to the switching timing t = 8000 msec (0 msec ≤ t ≤ 100 msec). The layout of each graph is the same as in Figure 11.

上記したように、シングルロータリー圧縮機の負荷トルクは、機械角周期で周期的に変動する。本測定では、このような負荷トルクの変動によって生じる回転速度の変動を抑制するためにトルク制御を行った。これにより、トルク制御を行わない場合と比べて機械角推定角速度ωmの振幅(変動幅)を抑制することができる。 As mentioned above, the load torque of a single rotary compressor fluctuates periodically with a mechanical angle cycle. In this measurement, torque control was performed to suppress fluctuations in rotation speed caused by such fluctuations in load torque. This makes it possible to suppress the amplitude (fluctuation range) of the estimated mechanical angle angular velocity ωm compared to when torque control is not performed.

例えば図12の上段左上のグラフでは、機械角推定角速度ωmが周期的に変動している。この変動の周期は、機械角周期と同様であり、機械角推定角速度ωmの周期的な変動は、シングルロータリー圧縮機の負荷トルクが周期的に変動するために生じたものと考えられる。本測定では、トルク制御を行うことで、機械角推定角速度ωmの高調波成分を除く変動幅は、機械角速度指令値ωm*に対して±4rps程度に抑制されている。なおトルク制御を行わない場合には、機械角推定角速度ωmの変動幅は、より大きくなる。 For example, in the graph in the upper left corner of the top row of Figure 12, the estimated mechanical angle angular velocity ωm fluctuates periodically. The period of this fluctuation is the same as the mechanical angle period, and it is thought that the periodic fluctuation of the estimated mechanical angle angular velocity ωm occurs due to the periodic fluctuation of the load torque of the single rotary compressor. In this measurement, by performing torque control, the fluctuation range of the estimated mechanical angle angular velocity ωm, excluding harmonic components, is suppressed to approximately ±4 rps relative to the mechanical angular velocity command value ωm*. Note that if torque control is not performed, the fluctuation range of the estimated mechanical angle angular velocity ωm would be larger.

トルク制御では、d軸電流指令値Id*及びq軸電流指令値Iq*が、モータMの回転速度(機械角推定角速度ωm)の変動を抑制するように調整される。この結果、図12の中段左側のグラフに示すように、d軸電流指令値Id*及びq軸電流指令値Iq*(点線グラフ)は、いずれも機械角周期で変動する。 In torque control, the d-axis current command value Id* and the q-axis current command value Iq* are adjusted to suppress fluctuations in the rotational speed (mechanical angle estimated angular velocity ωm) of the motor M. As a result, as shown in the graph in the middle left of Figure 12, both the d-axis current command value Id* and the q-axis current command value Iq* (dotted line graph) fluctuate with a mechanical angle period.

また、本測定は、電圧飽和領域において行われた。この場合、上記した電圧飽和領域電圧指令値生成器14bが動作し、出力電圧振幅VaがDC電圧Vdc以下となるように、d軸電流指令値Id*及びq軸電流指令値Iq*が調整される。例えば本測定の条件では、グラフに示すように、d軸電流指令値Id*は、モータMにトルクを発生させるq軸電流指令Iq*と同程度の幅で変動するように調整される結果となった。これに伴い、図12の下段左側のグラフに示すように、d軸電圧Vdも比較的大きく変動する結果となった。 This measurement was also performed in the voltage saturation region. In this case, the voltage saturation region voltage command value generator 14b described above operates, adjusting the d-axis current command value Id* and the q-axis current command value Iq* so that the output voltage amplitude Va is equal to or less than the DC voltage Vdc. For example, under the conditions of this measurement, as shown in the graph, the d-axis current command value Id* was adjusted to fluctuate over a range similar to that of the q-axis current command Iq* that generates torque in the motor M. Accordingly, as shown in the graph on the bottom left of Figure 12, the d-axis voltage Vd also fluctuated relatively greatly.

このようにd軸電圧Vd(d軸電流指令値Id*)を変動させて出力電圧振幅Vaの変動を抑制するトルク制御では、式(40)に示す定常モデルを用いて軸誤差Δθを推定した場合、電流ピーク付近に発振が見られる。例えば図12の中段左側のグラフでは、q軸電流指令値Iq*に比べて、検出値であるq軸電流Iqが電流ピーク付近で発振していることがわかる。同様に、d軸電流Idについても発振が生じており、d軸電流指令値Id*の波形とのずれも見られる。 In this way, torque control suppresses fluctuations in the output voltage amplitude Va by varying the d-axis voltage Vd (d-axis current command value Id*). When the axis error Δθ is estimated using the steady-state model shown in equation (40), oscillations are observed near the current peak. For example, the graph on the left side of the middle row of Figure 12 shows that the detected q-axis current Iq oscillates near the current peak compared to the q-axis current command value Iq*. Similarly, oscillations also occur in the d-axis current Id, and a deviation from the waveform of the d-axis current command value Id* is also observed.

図13は、本実施形態に係る過渡モデルによるモータ制御時の測定データを示すグラフである。図13には、図11に示すデータのうち切替タイミングt=8000msecよりも後の期間(15000msec≦t≦15100msec)における測定データが示されている。各グラフの配置は図11と同様である。 Figure 13 is a graph showing measurement data during motor control using the transient model according to this embodiment. Figure 13 shows measurement data from the data shown in Figure 11 for a period after the switching timing t = 8000 msec (15000 msec ≤ t ≤ 15100 msec). The layout of each graph is the same as in Figure 11.

図13の中段左側のグラフに示すように、過渡モデルによるモータ制御を行った場合、定常モデルを用いた場合(図12の中段左側のグラフ)と比べて、q軸電流Iqの電流ピーク付近での発振が低減されていることがわかる。またd軸電流についても発振を伴う波形の歪みが解消され、d軸電流指令値Id*との波形のずれが小さくなっている。 As shown in the graph in the middle left of Figure 13, when motor control is performed using the transient model, oscillations near the current peak of the q-axis current Iq are reduced compared to when the steady-state model is used (graph in the middle left of Figure 12). Furthermore, waveform distortion associated with oscillations in the d-axis current is eliminated, reducing the deviation of the waveform from the d-axis current command value Id*.

また図13の下段左側のグラフに示すように、q軸電流Iqの電流ピーク付近での発振が低減されたことで、電流ピーク付近におけるq軸電圧Vqの細かい振動も抑制される。またd軸電圧Vdは、定常モデルを用いた場合と同様に変動し、電圧飽和領域でのトルク制御が適正に維持されていることがわかる。 Furthermore, as shown in the graph on the lower left of Figure 13, the reduction in oscillation of the q-axis current Iq near the current peak also suppresses small vibrations in the q-axis voltage Vq near the current peak. Furthermore, the d-axis voltage Vd fluctuates in the same way as when the steady-state model is used, indicating that torque control in the voltage saturation region is maintained appropriately.

このように電流ピーク付近での発振が抑制されたのは、式(41)の過渡モデルを用いることで軸誤差Δθの推定精度が向上したためであると考えられる。例えば図13の中段右側のグラフを見ると、過渡モデルを用いて算出される軸誤差Δθは、定常モデルを用いた場合(図12の中段右側のグラフ)と比べて、値の変化幅が小さくなっている。例えば機械角周期で生じる谷型のピークの深さや、機械角周期よりも高周波数の変動成分の変動幅がいずれも抑制されている。このように、過渡モデルを用いることで、安定して軸誤差Δθを推定することが可能となる。 The reason why oscillations near the current peak are suppressed in this way is thought to be because the use of the transient model of equation (41) improves the accuracy of estimating the position error Δθ. For example, looking at the graph in the middle right of Figure 13, we can see that the position error Δθ calculated using the transient model has a smaller range of change in value compared to when the steady-state model is used (graph in the middle right of Figure 12). For example, the depth of the valley-shaped peaks that occur during the mechanical angle cycle and the range of fluctuations in the higher-frequency components than the mechanical angle cycle are both suppressed. In this way, using the transient model makes it possible to stably estimate the position error Δθ.

また図13の上段左側のグラフに示すように、過渡モデルを用いた場合も、機械角推定速度ωmの周期的な変動は、定常モデルを用いた場合(図12の上段左側のグラフ)と同等のレベルで抑制される。また機械角周期よりも高周波数の変動成分が抑制され、回転速度を安定して制御できていることがわかる。 Furthermore, as shown in the graph on the top left of Figure 13, when the transient model is used, the periodic fluctuations in the estimated mechanical angle speed ωm are suppressed to a level equivalent to that when the steady-state model is used (graph on the top left of Figure 12). It can also be seen that fluctuation components with frequencies higher than the mechanical angle period are suppressed, enabling stable control of the rotation speed.

さらに、電流ピーク付近での発振が抑制されることで、消費電力を少なくすることが可能となる。例えば、図11の下段右側のグラフを見ると、消費電力Pinvは、切替タイミングを境に減少し、最終的に一定のレベルで安定した。このように消費電力Pinvの挙動からも、モータMを安定して制御できていることがわかる。 Furthermore, by suppressing oscillations near the current peak, it is possible to reduce power consumption. For example, looking at the graph on the bottom right of Figure 11, power consumption Pinv decreases around the switching timing, and eventually stabilizes at a certain level. In this way, the behavior of power consumption Pinv also shows that motor M is being controlled stably.

以上、本実施形態に係るモータ制御装置100では、モータ電流(d軸電流Id及びq軸電流Iq)に含まれる周期的な変動成分である電流変動成分(d軸電流変動成分ΔId及びq軸電流変動成分ΔIq)に基づいてモータMのロータ位置が推定される。これにより、モータ電流(d軸電流Id及びq軸電流Iq)が周期的に変動する場合でもロータ位置を高精度に推定することが可能となる。 As described above, in the motor control device 100 according to this embodiment, the rotor position of the motor M is estimated based on the current fluctuation components (d-axis current fluctuation component ΔId and q-axis current fluctuation component ΔIq), which are periodic fluctuation components contained in the motor current (d-axis current Id and q-axis current Iq). This makes it possible to estimate the rotor position with high accuracy even when the motor current (d-axis current Id and q-axis current Iq) fluctuates periodically.

本実施形態では、軸誤差Δθの推定処理に、式(41)に示す過渡モデルの軸誤差算出式が用いられる。式(41)は、周期的な電流変動成分によって生じるインダクタンス電圧を考慮して軸誤差Δθを算出する式である。インダクタンス電圧を導入することで、モータ電流が周期的に変動する場合に、式(40)に示す定常モデルとして構築された拡張誘起電圧モデルのモデル誤差を低減することが可能となる。これにより、ロータ位置の推定精度を向上することが可能となる。 In this embodiment, the axis error calculation formula for the transient model shown in Equation (41) is used to estimate the axis error Δθ. Equation (41) is a formula for calculating the axis error Δθ by taking into account the inductance voltage generated by the periodic current fluctuation component. By introducing the inductance voltage, when the motor current fluctuates periodically, it is possible to reduce the model error of the extended induced voltage model constructed as a steady-state model shown in Equation (40). This makes it possible to improve the estimation accuracy of the rotor position.

このような作用により、例えばモータ電流が周期的に変動するトルク制御下において、電流ピーク付近での発振現象を抑制することが可能となる。これにより、モータMの消費電力を低減することが可能となる。また、発振現象を抑制することで、軸誤差Δθの推定値が安定し、ロータ位置を安定して推定することが可能となる。この結果、安定したモータ制御を実現することが可能となる。 This action makes it possible to suppress oscillations near current peaks, for example, under torque control where the motor current fluctuates periodically. This makes it possible to reduce the power consumption of the motor M. Furthermore, suppressing oscillations stabilizes the estimated value of the axis error Δθ, making it possible to stably estimate the rotor position. As a result, stable motor control can be achieved.

また本実施形態では、トルク制御下での電流変動の周期性に着目し、モータ電流をフーリエ級数展開すること(モータ電流のフーリエ係数を算出すること)で、電流変動成分が抽出される。この電流変動成分を微分することで、インダクタンス電圧(p項電圧)となる電流微分値が算出される。例えばフーリエ係数を用いずに、制御周期ごとに検出される電流変化から電流微分値を生成する方法では、電流ノイズによっては電流微分値が安定せず、制御が不安定化する可能性がある。これに対し、本実施形態では、フーリエ係数を用いることで、電流微分値を安定して算出することが可能となり、適切にインダクタンス電圧に応じたモデル誤差を抑制することが可能となる。 In addition, in this embodiment, focusing on the periodicity of current fluctuations under torque control, the motor current is expanded into a Fourier series (calculating the Fourier coefficients of the motor current) to extract the current fluctuation component. By differentiating this current fluctuation component, the current differential value, which becomes the inductance voltage (p-term voltage), is calculated. For example, in a method that generates the current differential value from the current change detected every control cycle without using Fourier coefficients, the current differential value may become unstable depending on current noise, which could cause control instability. In contrast, in this embodiment, the use of Fourier coefficients makes it possible to stably calculate the current differential value, making it possible to appropriately suppress model errors corresponding to the inductance voltage.

また本実施形態では、電流変動成分として、負荷トルクの周期と同じ周期で変動する1次の電流変動成分に加え、負荷トルクの2倍の周期で変動する2次の電流変動成分が抽出される。これにより1次のインダクタンス電圧だけでなく、2次のインダクタンス電圧も考慮して軸誤差Δθを精度よく推定することが可能となる。また抽出する電流変動成分の次数を2にとどめることで、演算負荷を不必要に増大させることなく、軸誤差Δθの推定精度を向上することが可能となる。 In addition, in this embodiment, in addition to the first-order current fluctuation component that fluctuates with the same period as the load torque, a second-order current fluctuation component that fluctuates with twice the period of the load torque is extracted as the current fluctuation component. This makes it possible to accurately estimate the position error Δθ by taking into account not only the first-order inductance voltage but also the second-order inductance voltage. Furthermore, by limiting the order of the extracted current fluctuation component to two, it is possible to improve the estimation accuracy of the position error Δθ without unnecessarily increasing the calculation load.

<その他の実施形態>
本発明は、以上説明した実施形態に限定されず、他の種々の実施形態を実現することができる。
<Other embodiments>
The present invention is not limited to the above-described embodiment, and various other embodiments can be realized.

<軸誤差算出方法の切替>
以下では、軸誤差Δθの算出方法を切り替える構成について説明する。
<Switching the axis error calculation method>
The following describes a configuration for switching the method for calculating the axis error Δθ.

上記した実施形態では、モータの制御領域が通常制御領域であるか電圧飽和領域であるかに係わらず、式(41)に示す過渡モデルの軸誤差算出式から軸誤差Δθを算出する方法について説明した。これに限定されず、通常制御領域と電圧飽和領域とで、軸誤差Δθの算出方法を切り替えてもよい。 In the above embodiment, a method for calculating the axis error Δθ from the axis error calculation formula for the transient model shown in equation (41) was described, regardless of whether the motor control region is the normal control region or the voltage saturation region. This is not limiting, and the method for calculating the axis error Δθ may be switched between the normal control region and the voltage saturation region.

例えば図1に示すモータ制御装置100では、制御切替判定部15により現在の制御領域が通常制御領域及び電圧飽和領域のいずれの領域であるかが判定された。この判定結果を用いて、軸誤差演算器30において軸誤差Δθの算出に用いる式を切り替えるようにしてもよい。このような構成では、通常制御領域であると判定された場合、式(40)を用いて軸誤差Δθが算出される。通常制御領域では、電圧飽和領域とは異なり出力電圧振幅を制限する必要はないため、例えばd軸電流指令値Id*の変動量も少なくなり、d軸電流Idの周期的な変動成分も小さくる。このため、式(40)を用いた場合でも十分な精度で軸誤差Δθを推定することができる。 For example, in the motor control device 100 shown in FIG. 1, the control switching determination unit 15 determines whether the current control region is the normal control region or the voltage saturation region. This determination result can be used to switch the formula used to calculate the axis error Δθ in the axis error calculator 30. In this configuration, if it is determined that the control region is the normal control region, the axis error Δθ is calculated using equation (40). In the normal control region, unlike the voltage saturation region, there is no need to limit the output voltage amplitude. Therefore, for example, the amount of fluctuation in the d-axis current command value Id* is small, and the periodic fluctuation component of the d-axis current Id is also small. For this reason, even when equation (40) is used, the axis error Δθ can be estimated with sufficient accuracy.

一方、電圧飽和領域であると判定された場合、式(41)を用いて軸誤差Δθが算出される。すなわち、モータの制御領域が電圧飽和領域である場合に、電流変動成分に基づいてロータ位置を推定するようにしてもよい。例えば電圧飽和領域では、上記した電圧飽和領域電圧指令値生成部14bの動作により、q軸電流指令値Iq*に加えてd軸電流指令値Id*の変動量も増大し、q軸電圧Iqとともにd軸電流Idの変動量も大きくなる。このため、周期的な電流変動に伴うインダクタンス電圧の作用が無視できなくなる。このような場合には、例えば式(41)の過渡モデルを用いることで、式(40)の定常モデルを用いる場合と比べて、ロータ位置を精度よく推定することができる。 On the other hand, if it is determined that the motor is in the voltage saturation region, the axis error Δθ is calculated using equation (41). That is, if the motor's control region is in the voltage saturation region, the rotor position may be estimated based on the current fluctuation component. For example, in the voltage saturation region, the operation of the voltage saturation region voltage command value generator 14b described above increases the fluctuations in the d-axis current command value Id* as well as the q-axis current command value Iq, and the fluctuations in the d-axis current Id become large along with the q-axis voltage Iq. As a result, the effect of the inductance voltage associated with periodic current fluctuations cannot be ignored. In such cases, for example, using the transient model of equation (41) allows for more accurate estimation of the rotor position than using the steady-state model of equation (40).

また上記した実施形態では、モータにかかる負荷トルクによる回転速度の変動を抑えるために、トルク制御を行う場合について説明した。図1に示すモータ制御装置100では、補正トルク生成器34から出力される変動トルク指令値ΔTが0でない場合(ΔT≠0)には、トルク制御が行われる。なお、変動トルク指令値ΔT=0の場合は、機械角速度指令値ωm*が実現されるように回転速度を制御する速度制御となる。 In the above-described embodiment, torque control is performed to suppress fluctuations in rotational speed due to the load torque applied to the motor. In the motor control device 100 shown in FIG. 1, torque control is performed when the torque fluctuation command value ΔT output from the correction torque generator 34 is not 0 (ΔT ≠ 0). Note that when the torque fluctuation command value ΔT = 0, speed control is performed to control the rotational speed so as to achieve the mechanical angular velocity command value ωm*.

例えば、回転速度の変動が許容される場合(例えば高速回転時に回転速度の変動が十分に小さい場合等)には、必ずしもトルク制御を行う必要はない。この場合、例えば変動トルク指令値ΔT=0として、速度制御が実行される。このように、モータ制御装置は、トルク制御のON及びOFFを切り替えることが可能なように構成されてもよい。このような構成では、トルク制御がOFFに設定された場合、式(40)を用いて軸誤差Δθが算出される。トルク制御を行わない場合には、例えばトルク制御を行う場合と比べてq軸電流指令値Iq*及びd軸電流指令値Id*の変動量も小さくなる。このため、式(40)を用いた場合でも十分な精度で軸誤差Δθを推定することができる。 For example, if fluctuations in rotation speed are acceptable (e.g., if fluctuations in rotation speed are sufficiently small during high-speed rotation), torque control is not necessarily required. In this case, speed control is performed, for example, with a fluctuating torque command value ΔT = 0. In this way, the motor control device may be configured to be able to switch torque control ON and OFF. In such a configuration, when torque control is set to OFF, the axis error Δθ is calculated using equation (40). When torque control is not performed, the amount of fluctuation in the q-axis current command value Iq* and the d-axis current command value Id* is smaller than when torque control is performed, for example. Therefore, even when equation (40) is used, the axis error Δθ can be estimated with sufficient accuracy.

一方、トルク制御がONに設定された場合、式(41)を用いて軸誤差Δθが算出される。すなわち、モータに対するトルク制御を行う場合に、電流変動成分に基づいてロータ位置を推定するようにしてもよい。例えばトルク制御時には、負荷トルクの周期的な変動に合わせて、q軸電流指令値Iq*及びd軸電流指令値Id*も周期的に変動させることになり、結果としてq軸電圧Iq及びd軸電流Idが周期的に変動する。つまりモータ電流に周期的な変動成分が生じやすくなる。このような場合には、例えば式(41)の過渡モデルを用いることで、式(40)の定常モデルを用いる場合と比べて、ロータ位置を精度よく推定することができる。 On the other hand, when torque control is set to ON, the axis error Δθ is calculated using equation (41). That is, when torque control is performed on the motor, the rotor position may be estimated based on the current fluctuation component. For example, during torque control, the q-axis current command value Iq* and the d-axis current command value Id* are also periodically varied in accordance with the periodic fluctuations in the load torque, resulting in periodic fluctuations in the q-axis voltage Iq and the d-axis current Id. In other words, periodic fluctuation components are more likely to occur in the motor current. In such cases, using the transient model of equation (41), for example, allows for more accurate estimation of the rotor position than using the steady-state model of equation (40).

上記の実施形態では、主にシングルロータリー圧縮機を運転する場合を例に挙げて説明した。この場合、機械角周期と同様の周期で負荷トルクが変動するため、機械角周期と同様の周期で変動する1次の電流変動成分や、その2倍の周期をもつ2次の電流変動成分がモータ制御に用いられた。本発明を適用可能な圧縮機の種類は限定されない。 In the above embodiment, the operation of a single rotary compressor has been mainly described as an example. In this case, the load torque fluctuates with a period similar to the mechanical angle period, so a first-order current fluctuation component that fluctuates with a period similar to the mechanical angle period and a second-order current fluctuation component with a period twice as long are used for motor control. There are no limitations on the type of compressor to which the present invention can be applied.

例えばツインロータリー圧縮機等が用いられてもよい。この場合、負荷トルクは機械角周期の2倍の周期で変動することになる。そこで、電流変動成分としては、機械角周期の2倍の周期で変動する2次の電流変動成分や、4倍の周期で変動する4次の電流変動成分等を抽出するようにしてもよい。このように、モータ制御装置により実行されるトルク制御の次数に応じた電流変動成分を抽出し、その電流微分値を用いることで、軸誤差Δθの推定精度を確実に向上することが可能となる。 For example, a twin rotary compressor or the like may be used. In this case, the load torque will fluctuate at a period twice the mechanical angle period. Therefore, the current fluctuation components may be extracted as second-order current fluctuation components that fluctuate at a period twice the mechanical angle period, or fourth-order current fluctuation components that fluctuate at a period four times the mechanical angle period. In this way, by extracting current fluctuation components according to the order of torque control performed by the motor control device and using their current derivative values, it is possible to reliably improve the estimation accuracy of the axis error Δθ.

上記では、モータ電流の電流変動成分からインダクタンス電圧を算出し、インダクタンス電圧を用いて式(41)から軸誤差Δθを算出する方法について説明した。例えばインダクタンス電圧を算出せずに、電流変動成分を用いて軸誤差Δθを調整するといった方法が用いられてもよい。例えば、電流変動成分の振幅や位相と対応する調整量を予め実験等により決定して、モータ制御に用いてもよい。この場合、電流変動成分の振幅や位相が算出され、算出結果に応じた調整量を用いて軸誤差Δθが逐次調整される。また例えば、電流変動成分の微分値に応じた調整量等が用いられてもよい。この他、電流変動成分に基づいてロータ位置を推定する方法は限定されない。 The above describes a method of calculating the inductance voltage from the current fluctuation component of the motor current and then using the inductance voltage to calculate the axis error Δθ from equation (41). For example, a method of adjusting the axis error Δθ using the current fluctuation component without calculating the inductance voltage may also be used. For example, an adjustment amount corresponding to the amplitude and phase of the current fluctuation component may be determined in advance through experiments or the like and used for motor control. In this case, the amplitude and phase of the current fluctuation component are calculated, and the axis error Δθ is successively adjusted using an adjustment amount according to the calculation result. Furthermore, for example, an adjustment amount according to the differential value of the current fluctuation component may also be used. Other methods for estimating the rotor position based on the current fluctuation component are not limited to these.

以上説明した本技術に係る特徴部分のうち、少なくとも2つの特徴部分を組み合わせることも可能である。すなわち各実施形態で説明した種々の特徴部分は、各実施形態の区別なく、任意に組み合わされてもよい。また上記で記載した種々の効果は、あくまで例示であって限定されるものではなく、また他の効果が発揮されてもよい。 It is also possible to combine at least two of the features of the present technology described above. In other words, the various features described in each embodiment may be combined in any way, regardless of the embodiment. Furthermore, the various effects described above are merely examples and are not limiting, and other effects may also be achieved.

M…モータ
25…IPM
28…3φ電流算出器
29…u,v,w/d-q変換器
35…電流変動抽出器
36…インダクタンス電圧算出器
30…軸誤差演算器
31…PLL制御器
32…位置推定器
33…1/Pn処理器
100…モータ制御装置
M...Motor 25...IPM
28... 3φ current calculator 29... u, v, w/dq converter 35... current fluctuation extractor 36... inductance voltage calculator 30... axis error calculator 31... PLL controller 32... position estimator 33... 1/Pn processor 100... motor control device

Claims (7)

モータに流れるモータ電流を検出する電流検出部と、
前記モータ電流をフーリエ級数展開することで、前記モータ電流の周期的な変動成分である電流変動成分を抽出する電流変動抽出部と、
前記電流変動成分に基づいて、前記モータのロータ位置を推定する位置推定部と
を具備するモータ制御装置。
a current detection unit that detects a motor current flowing through the motor;
a current fluctuation extraction unit that extracts a current fluctuation component that is a periodic fluctuation component of the motor current by expanding the motor current into a Fourier series ;
a position estimation unit that estimates a rotor position of the motor based on the current fluctuation component.
請求項1に記載のモータ制御装置であって、2. The motor control device according to claim 1,
前記電流変動抽出部は、前記モータ電流をフーリエ級数展開することで、前記モータに作用する負荷トルクの変動周期と同じ周期を持つ前記電流変動成分と、前記負荷トルクの変動周期の整数倍の周期を持つ前記電流変動成分とを抽出するThe current fluctuation extraction unit extracts the current fluctuation component having the same period as the fluctuation period of the load torque acting on the motor and the current fluctuation component having a period that is an integer multiple of the fluctuation period of the load torque by expanding the motor current into a Fourier series.
モータ制御装置。Motor control device.
請求項1に記載のモータ制御装置であって、さらに、
前記モータのインダクタンスと前記電流変動成分の微分値とに基づいて、前記電流変動成分により生じる誘起電圧であるインダクタンス電圧を算出するインダクタンス電圧算出部を具備し、
前記位置推定部は、前記インダクタンス電圧に基づいて前記ロータ位置を推定する
モータ制御装置。
2. The motor control device according to claim 1, further comprising:
an inductance voltage calculation unit that calculates an inductance voltage, which is an induced voltage generated by the current fluctuation component, based on the inductance of the motor and a differential value of the current fluctuation component;
The motor control device, wherein the position estimation unit estimates the rotor position based on the inductance voltage.
請求項に記載のモータ制御装置であって、
前記電流変動抽出部は、互いに周期の異なる2以上の電流変動成分を抽出し、
前記インダクタンス電圧算出部は、前記2以上の電流変動成分の各々について前記電流変動成分の微分値に基づいて前記インダクタンス電圧を算出し、前記2以上の電流変動成分ごとの前記インダクタンス電圧を合算した合算インダクタンス電圧を算出し、
前記位置推定部は、前記合算インダクタンス電圧に基づいて前記ロータ位置を推定する
モータ制御装置。
4. The motor control device according to claim 3 ,
the current fluctuation extraction unit extracts two or more current fluctuation components having different periods;
the inductance voltage calculation unit calculates the inductance voltage for each of the two or more current fluctuation components based on a differential value of the current fluctuation component, and calculates a total inductance voltage by summing the inductance voltages for each of the two or more current fluctuation components;
The motor control device, wherein the position estimation unit estimates the rotor position based on the total inductance voltage.
請求項に記載のモータ制御装置であって、
前記電流変動抽出部は、前記モータ電流をフーリエ級数展開することで、前記モータ電流の1次の電流変動成分及び2次の電流変動成分を抽出する
モータ制御装置。
5. The motor control device according to claim 4 ,
The motor control device, wherein the current fluctuation extraction unit extracts a first-order current fluctuation component and a second-order current fluctuation component of the motor current by expanding the motor current into a Fourier series.
請求項1に記載のモータ制御装置であって、
前記位置推定部は、前記モータに対するトルク制御を行う場合に、前記電流変動成分に基づいて前記ロータ位置を推定する
モータ制御装置。
2. The motor control device according to claim 1,
The motor control device, wherein the position estimator estimates the rotor position based on the current fluctuation component when performing torque control on the motor.
請求項1に記載のモータ制御装置であって、
前記位置推定部は、
前記モータの制御領域が電圧飽和領域である場合に、前記電流変動成分に基づいて前記ロータ位置を推定し、
前記モータの制御領域が前記電圧飽和領域に比べ前記モータの出力電圧振幅が小さくなる通常制御領域である場合に、前記電流変動成分を抽出することなく前記モータ電流に基づいて前記ロータ位置を推定する
モータ制御装置。
2. The motor control device according to claim 1,
The position estimation unit
When a control region of the motor is a voltage saturation region, the rotor position is estimated based on the current fluctuation component;
When the control region of the motor is a normal control region in which the output voltage amplitude of the motor is smaller than that of the voltage saturation region, the rotor position is estimated based on the motor current without extracting the current fluctuation component.
Motor control device.
JP2024051419A 2024-03-27 2024-03-27 Motor control device Active JP7818151B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2024051419A JP7818151B2 (en) 2024-03-27 2024-03-27 Motor control device
PCT/JP2025/011270 WO2025205521A1 (en) 2024-03-27 2025-03-24 Motor control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2024051419A JP7818151B2 (en) 2024-03-27 2024-03-27 Motor control device

Publications (2)

Publication Number Publication Date
JP2025150512A JP2025150512A (en) 2025-10-09
JP7818151B2 true JP7818151B2 (en) 2026-02-20

Family

ID=97217661

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2024051419A Active JP7818151B2 (en) 2024-03-27 2024-03-27 Motor control device

Country Status (2)

Country Link
JP (1) JP7818151B2 (en)
WO (1) WO2025205521A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014180148A (en) 2013-03-15 2014-09-25 Hitachi Appliances Inc Motor controller
JP2014212584A (en) 2013-04-17 2014-11-13 日立アプライアンス株式会社 Motor control device
WO2019073599A1 (en) 2017-10-13 2019-04-18 日立ジョンソンコントロールズ空調株式会社 Motor drive device, refrigeration cycle device equipped with same, and motor drive method
JP2021125898A (en) 2020-01-31 2021-08-30 株式会社富士通ゼネラル Motor control device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014180148A (en) 2013-03-15 2014-09-25 Hitachi Appliances Inc Motor controller
JP2014212584A (en) 2013-04-17 2014-11-13 日立アプライアンス株式会社 Motor control device
WO2019073599A1 (en) 2017-10-13 2019-04-18 日立ジョンソンコントロールズ空調株式会社 Motor drive device, refrigeration cycle device equipped with same, and motor drive method
JP2021125898A (en) 2020-01-31 2021-08-30 株式会社富士通ゼネラル Motor control device

Also Published As

Publication number Publication date
JP2025150512A (en) 2025-10-09
WO2025205521A1 (en) 2025-10-02

Similar Documents

Publication Publication Date Title
JP7225564B2 (en) motor controller
JP6852823B1 (en) Motor control device
JPWO2000014866A1 (en) AC motor control device
JP4715576B2 (en) Electric drive control device and electric drive control method
JP7020093B2 (en) Motor control device
JP7363524B2 (en) Sensorless motor control device
JP7852381B2 (en) Control method for a rotating electric machine, and control device for a rotating electric machine.
JP5104219B2 (en) Control device for permanent magnet type synchronous motor
JP7081274B2 (en) Motor control device
JP7818151B2 (en) Motor control device
JP2019118217A (en) Motor control device
JP2023051558A (en) Motor control device
JP7318547B2 (en) motor controller
JP7529463B2 (en) POWER CONVERSION DEVICE, POWER CONVERSION METHOD, AND PROGRAM
JP2023051559A (en) Motor control device
JP2012175776A (en) Motor controller and motor drive system
JP2010268567A (en) AC motor control device
WO2022195918A1 (en) Synchronous machine control device, synchronous machine control method, and electric vehicle
JP7616263B2 (en) Motor Control Device
JP7009861B2 (en) Motor control device
JP7740395B2 (en) Motor control device
JP7722110B2 (en) Motor control device
US20240333178A1 (en) Motor drive device
JP4383830B2 (en) Speed sensorless vector controller
JP2025040323A (en) Magnetic pole position estimation method and magnetic pole position estimation device for rotating electric machine

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20250220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250527

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20250716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250922

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: 20260106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20260119

R150 Certificate of patent or registration of utility model

Ref document number: 7818151

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150