(57)【要約】  デッドタイム中のインバータ出力電圧変動を適切に補償することができるモータ制御装置を提供する。  上アームと下アームを構成するスイッチング素子を有するインバータにより直流電圧を交流電圧に変換し、モータに印加することでモータの電流を電流目標値となるように制御するモータ制御装置であって、上アームと下アームのスイッチング毎のデッドタイム中のインバータ出力電圧変動を、デッドタイム補償電圧で補償するデッドタイム補償部２０を備え、デッドタイム補償部２０は、モータ電流の基本波の半周期におけるデッドタイム中のモータ電流の極性を決定する入力パラメータを取得し、その入力パラメータの大きさに応じてデッドタイム補償電圧を変化させる。
2016125559.tif 000002
【特許請求の範囲】
【請求項１】
上アームと下アームを構成するスイッチング素子を有するインバータにより直流電圧を交流電圧に変換し、モータに印加することで前記モータの電流を電流目標値となるように制御するモータ制御装置であって、
前記上アームと前記下アームのスイッチング毎のデッドタイム中のインバータ出力電圧変動を、デッドタイム補償電圧で補償するデッドタイム補償部を備え、
前記デッドタイム補償部は、
モータ電流の基本波の半周期における前記デッドタイム中の前記モータ電流の極性を決定するパラメータを取得し、
前記パラメータの大きさに応じて前記デッドタイム補償電圧を変化させる、モータ制御装置。
【請求項２】
請求項１に記載のモータ制御装置において、
前記デッドタイム補償電圧は、
前記電流目標値に基づいて求められる前記モータ電流の基本波の極性、スイッチング周期に対する前記デッドタイムの割合、および、前記直流電圧の大きさに基づいて設定されるベース補償電圧と、
前記取得されたパラメータの大きさ、および、前記デッドタイム補償電圧の大きさを前記ベース補償電圧とした状態における前記インバータ出力電圧変動と前記ベース補償電圧との差分、に基づいて設定される可変係数と、の積であるモータ制御装置。
【請求項３】
請求項２に記載のモータ制御装置において、
前記差分は、前記モータ電流を制御するために前記モータに印加される電圧に基づいて算出されるモータ制御装置。
【請求項４】
請求項１に記載のモータ制御装置において、
前記モータ電流の基本波の半周期における前記デッドタイム中の前記モータ電流の極性が、前記モータ電流の基本波の極性と等しくなっている第１の時間および異なっている第２の時間をそれぞれ計測する計測部を備え、
前記デッドタイム補償電圧は、
前記電流目標値に基づいて求められる前記モータ電流の基本波の極性、スイッチング周期に対する前記デッドタイムの割合、および、前記直流電圧の大きさに基づいて設定されるベース補償電圧と、
前記取得されたパラメータの大きさ、および、前記デッドタイム補償電圧の大きさを前記ベース補償電圧とした状態における前記第１の時間と前記第２の時間との差分、に基づいて設定される可変係数と、の積であるモータ制御装置。
【請求項５】
請求項２乃至４のいずれか一項に記載のモータ制御装置において、
前記パラメータの複数の大きさのそれぞれに対して、予め前記可変係数がそれぞれ設定されており、
前記デッドタイム補償部は、前記予め設定された複数の可変係数から前記取得されたパラメータの大きさに対応する可変係数を選択し、前記ベース補償電圧と前記選択された可変係数との積を前記デッドタイム補償電圧に設定する、モータ制御装置。
【請求項６】
請求項５に記載のモータ制御装置において、
前記デッドタイム補償部は、
前記差分に基づいて設定される可変係数をモータ駆動中に算出し、
モータ駆動中に取得される前記パラメータに対応して予め設定されている可変係数を、前記算出した可変係数で置き換える、モータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インバータ回路におけるデッドタイム中の出力電圧変動を補償するモータ制御装置に関するものである。
【背景技術】
【０００２】
インバータでスイッチングを行うことにより交流電圧を生成し、それをモータに印加してモータ電流を制御する技術が知られている。そのようなインバータにおいては、上下アーム短絡を防止するために、上下アームを同時にオフするデッドタイムを設けている。このデッドタイム中にインバータ出力電圧変動が発生するが、特許文献１には、そのようなインバータ出力電圧変動を補償する技術が記載されている。【０００３】
特許文献１には、dq軸電流指令およびモータの回転角に基づきモータ電流の基本波の位相を算出し、その位相に基づきデッドタイム中のモータ電流の極性を推定し、メモリに記憶されたデッドタイム補償電圧をフィードフォワード制御方式で出力する構成が記載されている。【０００４】
また、特許文献２には、モータ電流の平均値または基本波の値と高周波のリップルのピーク値の極性に基づいて、デッドタイム補償の有無を判定する技術が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１−６０２６４号公報
【特許文献２】特開平９−３０８２６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１においては、モータ電流の基本波の振幅が小さくなるに従い、モータ電流に含まれる高周波によって、モータ電流の基本波の位相に関わらずモータ電流の極性が変化する。そのため、デッドタイム補償に用いるモータ電流の極性の推定値と実際のモータ電流の極性が一時的に異なることで、デッドタイム補償電圧が正しく求められず、過補償となる問題があった。【０００７】
特許文献２においては、モータ電流の絶対値が小さい時に、高周波のリップルのピーク値によってデッドタイム補償は停止されるため、デッドタイム補償が過補償となることは回避できる。しかし、補償の停止中に発生するデッドタイム中のインバータ出力電圧変動が補償されないため、モータ電流の絶対値が小さい状態と等価であるモータ電流の基本波の振幅が小さい状態が継続した際に問題となる可能性がある。例えば、デッドタイム補償の停止により補償されないインバータ出力電圧変動が、本来の狙いではないフィードバック補償器により補償されることで、フィードバック補償器が本来の狙い通りに動作せずに、モータ電流の基本波の振幅を小さい状態から大きい状態に制御する際の過渡特性に影響を及ぼす。
【課題を解決するための手段】
【０００８】
請求項１に係る発明は、上アームと下アームを構成するスイッチング素子を有するインバータにより直流電圧を交流電圧に変換し、モータに印加することで前記モータの電流を電流目標値となるように制御するモータ制御装置であって、前記上アームと前記下アームのスイッチング毎のデッドタイム中のインバータ出力電圧変動を、デッドタイム補償電圧で補償するデッドタイム補償部を備え、前記デッドタイム補償部は、モータ電流の基本波の半周期における前記デッドタイム中の前記モータ電流の極性を決定するパラメータを取得し、前記パラメータの大きさに応じて前記デッドタイム補償電圧を変化させる。
【発明の効果】
【０００９】
本発明によれば、モータ電流の基本波の極性とデッドタイム中のモータ電流の極性とが異なる状態が発生した場合でも、適切にデッドタイム中のインバータ出力電圧変動を補償することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明に係るモータ制御装置の第１の実施の形態を示すブロック図である。
【図２】図２は、デッドタイム補償部の詳細を示すブロック図である。
【図３】図３は、Gain_Vdtマップの一例を示す図である。
【図４】図４は、差分電圧を説明する図である。
【図５】図５は、積分項電圧を説明する図である。
【図６】図６は、dq座標上における差分電圧を説明する図である。
【図７】図７は、第１の実施の形態におけるデッドタイム補償電圧を説明する図である。
【図８】図８は、第２の実施の形態を説明する図である。
【発明を実施するための形態】
【００１１】
以下、図を参照して本発明を実施するための形態について説明する。
−第１の実施の形態−
図１は、本発明に係るモータ制御装置の第１の実施の形態を説明するブロック図である。図１に示す制御部１０は本実施形態のモータ制御装置に対応するものであり、図１はモータシステムに適用した場合を示す。直流電源３０の電圧はＰＷＭインバータ４０によって三相交流電圧Vu，Vv，Vwに変換され、モータ５０に印加される。ＰＷＭインバータ４０は、制御部１０から入力されるＰＷＭ信号D'u，D'v，D'wに基づいて三相交流電圧Vu，Vv，Vwを生成する。このＰＷＭ信号D'u，D'v，D'wによって、モータ５０に流れる三相モータ電流が制御される。
【００１２】
制御部１０は、電流指令算出部１，電流制御部２，三相変換部３，ＰＷＭ変換部４，微分部５，dq軸変換部６およびデッドタイム補償部２０を備えている。
【００１３】
電流指令算出部１は、外部から与えられたトルク指令値T*と、微分部５で算出されたモータ５０の回転速度ωと、直流電源３０の電圧HVとから、d軸電流目標値Id*およびq軸電流目標値Iq*を算出する。なお、トルク指令値T*は、モータ５０の出力トルクを指示する信号である。
【００１４】
電流制御部２は、電流指令算出部１からのd軸電流目標値Id*およびq軸電流目標値Iq*と後述するd軸電流値Idおよびq軸電流値Iqとの偏差に基づいて、フィードバック制御に関する比例項と積分項を演算する。その結果は、d軸電圧指令値Vd*およびq軸電圧指令値Vq*として出力される。なお、dq軸電圧指令値Vd*，Vq*の算出には、必要に応じて非干渉制御を適用してもよい。
【００１５】
三相変換部３は、モータ５０の回転子位相θに基づき、入力されたd軸電圧指令値Vd*およびq軸電圧指令値Vq*を、三相電圧指令値であるＵ相電圧指令値Vu*、Ｖ相電圧指令値Vv*およびＷ相電圧指令値Vw*へ変換する。なお、モータ５０の回転子位相θは、図示していないレゾルバやエンコーダなどの位置検出器を用いて検出される。
【００１６】
ＰＷＭ変換部４は、デッドタイム補償部２０が出力するデッドタイム補償加算後三相電圧指令値V'u，V'v，V'wからＵ相のパルス幅D'u、Ｖ相パルス幅D'v、Ｗ相のパルス幅D'wを算出し、ＰＷＭ信号として出力する。なお、デッドタイム補償部２０の詳細は後述する。微分部５は、回転子位相θを微分することによって、モータ５０の回転子角速度ωを算出する。
【００１７】
dq軸変換部６は、図示していない電流センサによって検出した三相のモータ電流iu、iv、iwを、回転子位相θに基づいてd軸電流値Id、q軸電流値Iqへ変換する。なお、三相のモータ電流iu、iv、iwは、基本波とＰＷＭスイッチングによる高周波のリップルを含んでいる。
【００１８】
次に、本実施形態の特徴であるデッドタイム補償部２０について詳細を説明する。図２に示すように、デッドタイム補償部２０は、電流位相算出部２１、ベース補償電圧算出部２２、可変ゲイン算出部２３を備えている。デッドタイム補償部２０では、三相電圧指令値V*u，V*v，V*wに対してデッドタイム補償電圧Vdtu，Vdtv，Vdtwを加算することで、デッドタイム補償加算後三相電圧指令値V'u，V'v，V'wが算出される。
【００１９】
電流位相算出部２１は、回転子位相θとdq軸電流目標値Id*,Iq*とから三相モータ電流の基本波の位相を三相分算出する。例えば、Ｕ相の誘起電圧のゼロクロスの立下り点をdq軸座標の０度とし、q軸をＵ相の誘起電圧方向、d軸をq軸に垂直とした場合、回転子位相θにdq軸電流目標値Id*,Iq*から生成される電流ベクトルの位相を加算することで、Ｕ相電流の基本波の位相が求められる。そして、そこから１２０度および２４０度ずらした値が、それぞれＶ相電流およびＷ相電流の基本波の位相となる。
【００２０】
ベース補償電圧算出部２２は、上述の基本波の位相の他に図２で示される入力パラメータから次式（１）に基づき、ベース補償電圧の大きさを算出する。そして、その極性が各相モータ電流の基本波と同極性となるように三相分のベース補償電圧を算出する。なお、式（１）において、HVは直流電源３０の電圧値［Ｖ］、Tdはデッドタイム［ｓ］、fsはＰＷＭキャリア周波数［Ｈｚ］である。
（ベース補償電圧の大きさ）＝HV×Td×fs      …（１）
【００２１】
キャリア１周期におけるデッドタイム中のインバータ出力電圧変動の平均値の大きさは式（１）で表され、その極性はモータ電流の極性と逆になる。各相モータ電流の基本波の極性は、各相モータ電流の基本波の位相が０〜１０８度の間では正となり、１８０〜３６０度の間では負となる。
【００２２】
このように求められたベース補償電圧は、モータ電流の基本波の極性とデッドタイム中のモータ電流の極性とが一致していることを前提に算出されている。そのため、実際にモータ電流の基本波の極性とデッドタイム中のモータ電流の極性とが一致している場合には、デッドタイム中のインバータ出力電圧変動を誤差なく補償することができる。
【００２３】
しかし、デッドタイム中のモータ電流の極性がモータ電流の基本波の極性と一致しない状況が発生した場合には、上述のベース補償電圧とデッドタイム中のインバータ出力電圧変動との間に誤差が発生することになる。そこで、本実施の形態のデッドタイム補償部２０では、そのような誤差が生じないように、可変ゲイン算出部２３で算出されたGain_Vdtをベース補償電圧算出部２２から出力されたベース補償電圧に乗算することで、ベース補償電圧を可変とするようにした。
【００２４】
ここでは、可変ゲイン算出部２３の詳細を説明する前に、上述した誤差の発生について図４，５を参照して説明する。従来のデッドタイム補償では、デッドタイム中のインバータ出力電圧変動を補償するため、モータ電流の基本波のゼロクロス付近を除き補償電圧の大きさはモータ電流半周期渡り常に一定とし、極性はモータ電流の基本波と同極性とする。そして、モータ電流基本波のゼロクロス付近ではその補償量を小さくする、または、補償を停止するとしていた。これは、デッドタイム中のインバータ出力電圧変動がデッドタイム中のモータ電流の極性に依存するためである。
【００２５】
しかし、図４の（ａ）に示すように、モータ電流の基本波Ｌ１の振幅が小さく、モータ電流Ｌ２の高周波成分によるリップル振幅が大きい場合には、ベース補償電圧が適切に算出されないという問題が発生する。それは、デッドタイム中のモータ電流Ｌ２の極性が基本波Ｌ１の極性と同じ場合と異なる場合とでは、補償すべき電圧値が異なるからである。図４の（ａ）に示す例の最初の半周期を見ると、符号Ｒで示した部分はモータ電流Ｌ２の極性が基本波Ｌ１の極性と逆になっている。
【００２６】
図４の（ａ）に示すモータ電流の場合に、デッドタイム中のインバータ出力電圧変動を基本波Ｌ１の半周期にわたって平均した値（図４の（ｂ）を参照）と、デッドタイム補償電圧を半周期にわたって平均した値（図４の（ｃ）を参照）との間には、図４の（ｄ）に示すような差分電圧が発生する。すなわち、ベース補償電圧算出部２２から出力されたベース補償電圧をそのまま使用すると、図４の（ａ）のような場合には、デッドタイム中のインバータ出力電圧変動を適切に補償することができない。
【００２７】
従来、このような定常的な差分電圧は、例えば図５のように、モータ電流を電流指令値に制御するためのフィードバック制御の積分項電圧により補償されていた。図５の（ａ）に示すモータ電流Ｌ２の場合、矢印Ｔで示す時刻を過ぎると基本波Ｌ１の振幅が増加し始める。その結果、モータ電流Ｌ２に高周波成分によるリップルが含まれていても、時刻０から見て１．５周期以降は、デッドタイム中のモータ電流Ｌ２の極性と基本波Ｌ１の極性とが同じになる。そのため、図５の（ｂ）に示すように、１．５周期以降は、差分電圧がゼロとなる。
【００２８】
図５の（ｃ）は積分項電圧を示したものである。図５の（ｂ）のように差分電圧が生じた場合、図５の（ｃ）に示すような積分項電圧が図１の電流制御部２で算出され、差分電圧が小さくなるようにフィードバック制御される。しかし、この差分電圧は、モータ電流の基本波の振幅が高周波成分の振幅よりも大きくなるにつれて解消される。そのため、符号Ａ１，Ａ２で示す領域のように、モータ電流の基本波の振幅変化に積分項電圧の変化が追い付けない場合には、積分項電圧がモータ電流の応答性を悪化させる要因となる。
【００２９】
図５の（ｂ）のようにはじめ差分電圧が発生している状態では、積分項電圧がこれを補償している。電流目標値が大きくなりフィードバック制御の比例項がある一定までモータ電流の基本波の振幅を大きくすると、差分電圧はほぼ０［Ｖ］となるが、積分項電圧が蓄積した状態からすぐに適切な値に変化できない。そのため、モータ電流の基本波がある一定以上の値になってから、期待通りの時定数でモータ電流が応答しないことになる。
【００３０】
本実施の形態では、可変ゲイン算出部２３を導入することによって、デッドタイム中のモータ電流の極性を決定するモータ電流の高周波のリップル振幅の大きさと、基本波の振幅の大きさとに基づいて、デッドタイム補償電圧Vdtu，Vdtv，Vdtwを可変とした。その結果、差分電圧が低減され、高精度なデッドタイム補償が可能となる。
【００３１】
（可変ゲイン算出部２３の詳細説明）
可変ゲイン算出部２３は、Gain_Vdt（＝０〜１）を決定するためのGain_Vdtマップを有している。Gain_Vdtマップには、図２に示した入力パラメータの種々の値に対応付けられたGain_Vdtがマップ化されている。可変ゲイン算出部２３は、入力パラメータの値に応じたGain_Vdtを出力する。
【００３２】
後述するように、これらの入力パラメータはモータ電流の高周波のリップルの振幅を決定する要因であり、これらの値とモータ電流の基本波の振幅によりデッドタイム中の電流極性が決定される。そして、複数セットの入力パラメータに対する複数のGain_Vdtを比較した場合、デッドタイム中の電流極性が基本波の極性と同極性となる割合がより高い入力パラメータセット程、Gain_Vdtの値は１により近くなる。さらに、図５の（ｃ）の５番目の半周期のように、デッドタイム中の電流極性が全て基本波と同極性になると、Gain_Vdt＝１となる。逆に、デッドタイム中の電流極性が基本波の極性と逆極性となる割合がより高い入力パラメータセット程、Gain_Vdtの値は−１により近くなり、デッドタイム中の電流極性が全て基本波と逆極性になる場合には、Gain_Vdt＝−１となる。また、デッドタイム中の電流極性が基本波と同極性となる割合と、逆極性となる割合とが等しい場合には、Gain_Vdt＝０となる。すなわち、Gain_Vdtは−１〜＋１の値に設定される。
【００３３】
このように、可変ゲイン算出部２３では、デッドタイム中におけるモータ電流の極性を決定する要因となる入力パラメータに対応したGain_Vdtが、Gain_Vdtマップから選択される。そして、選択されたGain_Vdtとベース補償電圧とを乗算したものが、デッドタイム補償電圧Vdtu，Vdtv，Vdtwとして三相電圧指令値V*u，V*v，V*wに加算される。すなわち、デッドタイム補償電圧Vdtu，Vdtv，Vdtwは、入力パラメータに応じて変化する可変量とされる。
【００３４】
（入力パラメータの説明）
モータ電流の半周期におけるデッドタイム中のモータ電流の極性を決定する要因である入力パラメータは、次式（２）に示すモータ電圧とモータ電流との関係式から導かれる。式（２）において、Vd，Vqはdq軸モータ電圧、ωはモータ回転数、Ld，Lqはdq軸モータインダクタンス、Rはモータ相抵抗、Id，Iqはdq軸モータ電流、Ψaはモータ鎖交磁束、sは微分演算子である。
【数１】
2016125559.tif 000003
【００３５】
式（２）はモータ電流とモータ電圧との関係をdq軸座標で表現したものであり、時間領域で表される両者の関係をラプラス変換により複素数領域で表している。式（２）から、d軸モータ電流Idは、電圧成分である［Vd＋Lq×ω×Iq(誘起電圧成分)］をモータ相抵抗Rで除算した値であり、時定数Ld/Rで変化することが判る。また、q軸モータ電流Iqは、電圧成分である［Vq−Ld×ω×Id(誘起電圧成分)−ω×Ψa(誘起電圧成分)］をモータ相抵抗Rで除算した値であり、時定数Lq/Rで変化することが判る。
【００３６】
式（２）において、dq軸モータ電圧Vd，Vqは、三相ＰＷＭとしてモータ５０に印加された電圧をdq軸座標に変換したパルス状の電圧である。これがdq軸モータ電流Id、Iqに高周波のリップルを発生させ、dq軸モータ電流Id，Iqを三相変換したモータ５０の各相電流iu、iv、iwにも高周波のリップルを発生させる結果となる。高周波のリプルの振幅は、このパルス状電圧の幅と高さにより決定される。パルスの幅はdq軸モータ電圧Vd，Vqの実効値の大きさとキャリア周波数fsに依存し、パルスの高さは直流電源３０の電圧値HVに依存する。
【００３７】
このように、式（２）に記載のパラメータと上述の直流電源電圧HVとキャリア周波数fsがモータ電流の高周波のリップルの振幅を決定する要因であり、これらの値とモータ電流の基本波の振幅によりデッドタイム中の電流極性が決定される。
【００３８】
式（２）のdq軸モータ電流Id、Iqおよびdq軸モータ電圧Vd，Vqは、dq軸電流目標値Id*，Iq*およびdq軸電圧指令値Vd*，Vq*と等価である。dq軸電圧指令値Vd*，Vq*は、dq軸電流目標値Id*，Iq*と式（２）の誘起電圧成分から決定される。モータ電流の基本波は、dq軸電流目標値Id*，Iq*に依存する。そのため、以下に示すパラメータをデッドタイム中の極性を決定する要因、つまり可変ゲイン算出部２３の入力パラメータとすればよい。
（P1）モータ回転数ω
（P2）dq軸電流目標値Id*，Iq*
（P3）電源電圧HV
（P4）キャリア周波数fs
（P5）モータ特性Ld，Lq，R，Ψa
【００３９】
なお、dq軸モータ電流Id、Iqはdq軸電流目標値Id*，Iq*と等価であるとしたが、両者には過渡的には差異があるため、dq軸電流目標値Id*，Iq*に過渡的な差異を解消するためのフィルタをかけた値を用いても良い。
【００４０】
また、dq軸電流目標値Id*，Iq*は、トルク指令値T*、モータ回転数ωおよび電源電圧HVから決定されるため、dq軸電流目標値Id*，Iq*の代わりにトルク指令値T*を入力パラメータとしても良い。その場合も、dq軸電流目標値Id*，Iq*の場合と同様に、トルク指令値T*にフィルタをかけた値を用いても良い。なお、図２に示す例では、トルク指令値Tr*を入力パラメータとして使用している。
【００４１】
（Gain_Vdtマップの各要素の算出方法）
次に、図３に示したGain_Vdtマップの各要素（Gain_Vdt）の算出方法について説明する。まず、Gain_Vdt＝１に設定し、ベース補償電圧がデッドタイム補償電圧Vdtu，Vdtv，Vdtwとして三相電圧指令値Vu*，Vv*，Vw*に乗算される状態とする。そして、上述した入力パラメータのセットを、モータ５０の電流を制御する上で起こり得る種々の運転状態における値に順に固定し、各値に対するモータ電流制御に必要な状態量（dq軸電圧指令値Vd*，Vq*、dq軸モータ電圧Vd，Vq、ベース補償電圧）を取得する。
【００４２】
インバータ出力電圧変動とベース補償電圧の間に差分電圧がない状態（基本波に対して逆極性となるようなリップル電流が無い状態）では、dq軸電圧指令値Vd*，Vq*は式（２）をVd，Vqについて定常状態において解いた値と等しくなる。すなわち、dq軸電圧指令値Vd*，Vq*はデッドタイム補償ブロック２０で補償分だけ大きく（または小さく）されるが、ＰＷＭ変換部４でＰＷＭ変換する際にデッドタイムが設定されるため、最終的にモータ５０に印加される際にはデッドタイムによる電圧変動によって補償分が相殺される。その結果、モータ５０にはdq軸電圧指令値Vd*，Vq*と等しいVd, Vqが印加されることになる。
【００４３】
一方、差分電圧がある状態では、差分電圧がdq軸電圧指令値Vd*，Vq*に含まれることになる。すなわち、デッドタイム補償電圧Vdtu，Vdtv，Vdtwの大きさがデッドタイムによる電圧変動と異なり差分電圧が発生する場合には、モータ５０に印加されるdq軸モータ電圧Vd，Vqは、その差分電圧に相当する分だけdq軸電圧指令値Vd*，Vq*と異なっている。フィードバック制御ではdq軸モータ電流Id、Iqがdq軸電流目標値Id*，Iq*となるように制御しているので、差分電圧がdq軸電圧指令値Vd*，Vq*に影響している。そのため、次式（３）により差分電圧の大きさを求めることができる。
差分電圧の大きさ =√{(Vd*−Vd)^2＋(Vq*−Vq)^2}      …（３）
【００４４】
式（３）において、Vd，Vqは前述した式（２）を、次式（４）のように定常状態において解いた値である。
Vd＝(Id(s)×R)−(Lq×ω×Iq(s))
Vq＝(Iq(s)×R)＋(Ld×ω×Id(s)) ＋(ω×Ψa)      …（４）
【００４５】
図４の(d)に示すように、差分電圧はモータ電流の基本波の半周期毎に極性が変わるが、図６に示すdq座標軸ではdq軸電流目標値Id*，Iq*と同一方向（同位相）に発生する直流の電圧成分となり、その大きさはモータ電流の半周期に渡り差分電圧を平均した値と略等しくなる。本運転状態では、モータ電流をdq軸電流目標値Id*，Iq*に制御するためには、図６のようなdq軸モータ電圧Vd，Vqをモータに印加する必要がある。
【００４６】
一方、電流制御部２の出力は、図６に示すVd*，Vq* なる。これは、ベース補償電圧の状態では、 デッドタイム補償部２０においてdq軸電圧指令値Vd*，Vq*に差分電圧が加算されて出力されているのと等価になるためである。
【００４７】
よって、本運転状態における「ベース補償電圧×（１−Gain_Vdt）」の大きさが式（３）で求められる差分電圧の大きさと等しくなるように、Gain_Vdtマップの要素を求めればよい。この場合、Gain_Vdt＝１−（差分電圧）／（ベース補償電圧）と表される。例えば、差分電圧＝０の場合には、Gain_Vdt＝１となる。また、差分電圧＞０の場合には、Gain_Vdt＜１となる。種々の運転状態に対応する入力パラメータのセットを与えて上述のようにGain_Vdtを取得することで、図３のGain_Vdtマップの各要素が得られる。
【００４８】
なお、入力パラメータの値を変化させたときにモータ電流の基本波の振幅が大きくなると、Gain_Vdtが1に近づく。そのため、差分電圧を十分に低減できる範囲おいてGain_Vdtマップの要素を求めればよい。
【００４９】
電流制御部２において式（４）のωが含まれる誘起電圧成分にあたる電圧を非干渉制御で補償し、Gain_Vdtマップの要素を求める範囲では式（４）のId(s)×R及びIｑ(s)×Rが差分電圧に対して無視できるほど小さい場合には、次式（５）から差分電圧の大きさを求めても良い。この場合、dq座標軸の積分項電圧を観測すればよい。これは、差分電圧が積分項の電圧によって補償されるためである。積分項電圧は図１の電流制御部２において得られる。
（差分電圧の大きさ）=√(d軸積分項^2＋q軸積分項^2)      …（５）
【００５０】
なお、Gain_Vdtマップの要素をモータ電流の基本波の半周期毎に複数回計測し、計測結果を平均し、最終的なGain_Vdtマップの要素としても良い。こうすることでGain_Vdtの精度を向上させることができる。また、各パラメータを変化させる間隔は、モータ５０の電流を制御する上で取り得る値の中で、差分電圧を十分に低減できるGain_VdtをGain_Vdtマップから算出できる間隔とすれば良い。
【００５１】
Gain_Vdtマップの要素を予め算出しておいて、それらをGain_Vdtマップとして可変ゲイン算出部２３に記憶しておくことが可能である。
【００５２】
また、予めGain_Vdtマップを用意する代わりに、モータ使用時に、モータの電流を制御する過程で発生した状態についてその都度Gain_Vdtマップの要素を算出し、その値を記憶させるようにしてGain_Vdtマップを形成するようにしても良い。種々の運転状態におけるGain_Vdtの算出を繰り返すことによって、最終的に起こりえるすべての状態についてのGain_Vdtマップの要素が記憶される。
【００５３】
例えば、Gain_Vdtマップの各要素の初期値を１としておく。モータ使用中にある入力パラメータとなると、その入力パラメータに対して上述のようなGain_Vdtの算出処理が行われる。その算出結果（Gain_Vdt）をその入力パラメータに対応するGain_Vdtマップの要素として記憶する。
【００５４】
さらに、予めGain_Vdtマップが用意されている場合においても、上述のようにモータ使用時に得られるGain_Vdtで、あらかじめ記憶されているGain_Vdtを書き換えるようにしても良い。
【００５５】
具体的に説明すると、例えば、Gain_Vdtマップの所定入力パラメータに対応する要素（予め設定されているGain_Vdt）をG1とする。このG1を用いた場合の差分電圧が差分電圧≠０であった場合には、「ベース補償電圧×（G1−G2）＝差分電圧」の式からG2を算出する。このG2が新たに得られた要素であり、G1の代わりにG2を記憶させる。もちろん差分電圧＝０であった場合にはG2＝G1となり、Gain_Vdtマップの所定入力パラメータに対応する要素は一定に保たれる。
【００５６】
例えば、入力パラメータの一つであるモータ特性（Ld，Lq，R，Ψa）が、経年変化したような場合には、上述のようにモータ使用時にGain_Vdtを書き換えることにより、精度向上を図ることができる。なお、モータ使用時にGain_Vdtを算出する構成の場合、図２の可変ゲイン算出部２３において、dq軸電圧指令値Vd*，Vq*とVd，Vqに基づく、またはdq軸積分項に基づくGain_Vdtマップの要素を演算および記憶が随時行われる。
【００５７】
なお、デッドタイム中の極性を決定する要因の中で、モータ電流の半周期におけるデッドタイム中のモータ電流の極性変化に与える影響が小さく、それらを考慮しなくても差分電圧を十分に低減できるGain_Vdtを算出できる場合は、それらの要因は可変ゲイン算出部２３の入力パラメータから削除しても良い。
【００５８】
Gain_Vdtによりベース補償電圧を可変にした結果を図７に示す。図７の（ｃ）のようにデッドタイム補償電圧Vdtu，Vdtv，Vdtwが可変となるため、（ｂ）に示すデッドタイム中のインバータ出力電圧変動と、（ｃ）に示すデッドタイム補償電圧Vdtu，Vdtv，Vdtwとの間の差分（電流半周期平均値）は略ゼロとなる。
【００５９】
なお、上述した実施形態では、可変ゲイン算出部２３においてGain_VdtはGain_Vdtマップより出力されるとしたが、入力パラメータの変化と上述のGain_Vdtマップの要素の算出結果の関係が計算式で表現可能な部分は計算式としても良い。また、モータ電流基本波の位相によってデッドタイム補償電圧Vdtu，Vdtv，Vdtwの大きさを可変にする公知例（例えば、モータ電流の基本波のゼロクロス点で可変にする技術）と組み合わせることで、電流基本波半周期におけるより適切なデッドタイム補償電圧Vdtu，Vdtv，Vdtwを算出できる可能性がある。
【００６０】
−第２の実施の形態−
以下に説明する第２の実施の形態は、第１の実施の形態に対してGain_Vdtマップの要素の算出方法が違うだけで、他の構成は同じである。本実施の形態では、モータ電流の基本波の半周期にわたってデッドタイム中のモータ電流の極性を検出し、基本波と同極性の場合の時間と、基本波と逆極性の時間とに基づいて、Gain_Vdtマップの各要素を算出するようにした。
【００６１】
Gain_Vdtマップの各要素の算出にあたっては、まずGain_Vdt＝１に設定してベース補償電圧を出力した状態で、入力パラメータをモータの電流を制御する上で起こりえる運転状態の値にそれぞれ固定する。そして、モータ電流の基本波の各半周期において、デッドタイム中のモータ電流極性が基本波の極性と同じ場合の時間をTdt_same、異なる場合の時間を Tdt_diffとして、それぞれ計測する。Gain_Vdtは計測結果に基づき次式（６）により算出される。
（Gain_Vdt）＝(Tdt_same− Tdt_diff)／(Tdt_same＋ Tdt_diff)  …（６）
【００６２】
すなわち、モータ電流の基本波の半周期における「総デッドタイム＝Tdt_same＋Tdt_diff」に対して、モータ電流の基本波の極性とデッドタイム中のモータ電流の極性が全て同極性の場合（Tdt_diff＝０の場合）はGain_Vdt＝１とする。また、半分同じ場合（Tdt_same＝Tdt_diffの場合）には、Gain_Vdt＝０とする。さらに、全て同じでない場合（Tdt_same＝０の場合）はGain_Vdt＝−１とする。
【００６３】
Tdt_same及びTdt_diffの計測には図８で示すように、デッドタイム中のモータ電流の極性に応じて値が変化するカウンタを使用することができる。例えば、デッドタイム中のモータ電流の極性が正の場にインクリメントするカウンタと、負の場合でインクリメントするカウンタをそれぞれ設ける。そして、各カウンタのカウンタ値から、モータ電流の基本波の半周期に亘るTdt_sameとTdt_diffとをそれぞれ求める。半周期毎にカウンタ値をクリアすることで、Gain_Vdtを求めることができる。
【００６４】
また、モータの電流を制御する過程で発生した状態についてその都度Gain_Vdtマップの要素を算出し、その値を記憶することを繰り返す。その結果、起こり得るすべての状態についてのGain_Vdtが取得される。この場合、可変ゲイン算出部２３において、Tdt_same及びTdt_diffの計測とGain_Vdtの演算および記憶が随時行われる。その他、上記以外のGain_Vdtの算出に関する事項は実施形態１の場合と同様である。
【００６５】
以上説明した実施の形態では、図２，７に示したように、デッドタイム補償部２０は、モータ電流Ｌ２の基本波Ｌ１の半周期におけるデッドタイム中のモータ電流Ｌ２の極性を決定する入力パラメータを取得し、入力パラメータの大きさに応じてデッドタイム補償電圧Vdtu，Vdtv，Vdtwを変化させるようにした。入力パラメータとしては、電源電圧HV、モータ５０の運転状態を表すモータ回転数ω、dq軸電流目標値Id*，Iq*、キャリア周波数fs、モータ特性に関係するdq軸モータインダクタンスLd，Lq、モータ相抵抗R、モータ鎖交磁束Ψaがある。
【００６６】
その結果、デッドタイム中の極性を決定する要因に応じてデッドタイム補償電圧が可変とされ、モータ電流の基本波の半周期において、モータ電流の高周波のリップル振幅に対して基本波の振幅が小さく、モータ電流の基本波の極性がデッドタイム中のモータ電流の極性と異なる状態が発生した場合でも、適切にデッドタイム中のインバータ出力電圧変動を補償することが可能となる。
【００６７】
例えば、図２に示すように、デッドタイム補償電圧は、ベース補償電圧とGain_Vdt（可変係数）との積で表される。ベース補償電圧は、電流目標値に基づいて求められるモータ電流の基本波の極性、スイッチング周期に対するデッドタイムの割合、および直流電圧の大きさに基づいて設定される。また、Gain_Vdt（可変係数）は、取得されたパラメータの大きさ、および、デッドタイム補償電圧の大きさをベース補償電圧とした状態における、インバータ出力電圧変動と前記ベース補償電圧との差分に基づいて設定される。
【００６８】
差分は、式（３）のようにモータ電流を制御するためにモータ５０に印加される電圧（Vd，Vq）に基づいて算出しても良いし、式（５）のように積分項電圧に基づいて算出しても良い。いずれの場合も、従来のモータ制御装置に対する追加のハードウェアは不要となる。
【００６９】
また、図８に示すように、Gain_Vdt（可変係数）を、デッドタイム中のモータ電流Ｌ２の極性が基本波Ｌ１の極性と等しくなっている第１の時間としてのTdt_sameと、異なっている第２の時間としてのTdt_diffとの差分に基づいて設定しても良い。
【００７０】
また、入力パラメータの種々の大きさとGain_Vdtとの対応関係を表すGain_Vdtマップを予め用意しておき、取得した入力パラメータの大きさに対応するGain_VdtをGain_Vdtマップから選択するような構成としても良い。
【００７１】
さらに、予め要素が設定されたGain_Vdtマップを備える構成において、差分に基づいて設定されるGain_Vdtをモータ駆動中に算出し、Gain_Vdtマップの予め設定されているGain_Vdtを算出されたGain_Vdtで置き換えるようにしても良い。それにより、デッドタイム補償の精度向上を図ることができる。
【００７２】
なお、本発明は上記した各実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、置換をすることが可能である。
【符号の説明】
【００７３】
１…電流指令算出部、２…電流制御部、３…三相変換部、４…ＰＷＭ変換部、５…微分部、６…dq軸変換部、１０…制御部、２０…デッドタイム補償部、２１…電流位相算出部、２２…ベース補償電圧算出部、２３…可変ゲイン算出部、３０…直流電源、４０…ＰＷＭインバータ、５０…モータ
【図１】
2016125559.tif 000004
【図２】
2016125559.tif 000005
【図３】
2016125559.tif 000006
【図４】
2016125559.tif 000007
【図５】
2016125559.tif 000008
【図６】
2016125559.tif 000009
【図７】
2016125559.tif 000010
【図８】
2016125559.tif 000011
【国際調査報告】
2016125559.tif 000012
2016125559.tif 000013
2016125559.tif 000014
2016125559.tif 000015