以下、本発明の複数の実施形態について図面を参照して説明する。なお、各実施形態において実質的に同一の構成には同一の符号を付して説明を省略する。
(第1実施形態)
以下、第1実施形態について図1〜図9を参照して説明する。
図1に示すモータ制御システム1は、モータ2およびモータ2を駆動する電力変換器3から構成されている。モータ2は、例えば車両に搭載される3相交流モータである。電力変換器3は、インバータ主回路4、検出回路5〜10、駆動回路11〜16、制御回路17などを備えている。
インバータ主回路4は、例えば車載のバッテリである直流電源18から一対の直流電源線L1、L2を通じて供給される直流電圧を、U相、V相およびW相の3相の交流電圧に変換して出力する。インバータ主回路4のU相、V相およびW相、つまり3相の各出力端子は、モータ2の3相の端子にそれぞれ接続されている。
これにより、インバータ主回路4からモータ2に対し3相電流、つまり3つの相電流iU、iVおよびiWが供給され、モータ2が駆動される。この場合、3相電流の総和、つまり相電流iU、iVおよびiWの和はゼロとなる。すなわち、上記構成では、「iU+iV+iW=0」が成立している。インバータ主回路4は、直流電源線L1、L2間にそれぞれ接続された3相のハーフブリッジ回路4u、4vおよび4wを備えている。ハーフブリッジ回路4u、4vおよび4wは、モータ2に供給するための相電流iU、iVおよびiWを生成する。
ハーフブリッジ回路4uは、パワー素子19、20を備えている。ハーフブリッジ回路4uの上アームを構成するパワー素子19は、高電位側の電源線L1と、インバータ主回路4のU相の出力端子となるノードNuとの間に接続されている。ハーフブリッジ回路4uの下アームを構成するパワー素子20は、ノードNuと、低電位側の電源線L2との間に接続されている。
ハーフブリッジ回路4vは、パワー素子21、22を備えている。ハーフブリッジ回路4vの上アームを構成するパワー素子21は、電源線L1と、インバータ主回路4のV相の出力端子となるノードNvとの間に接続されている。ハーフブリッジ回路4vの下アームを構成するパワー素子22は、ノードNvと、電源線L2との間に接続されている。
ハーフブリッジ回路4wは、パワー素子23、24を備えている。ハーフブリッジ回路4wの上アームを構成するパワー素子23は、電源線L1と、インバータ主回路4のW相の出力端子となるノードNwとの間に接続されている。ハーフブリッジ回路4wの下アームを構成するパワー素子24は、ノードNwと、電源線L2との間に接続されている。
パワー素子19〜24は、ハーフブリッジ回路4u、4vおよび4wを構成するスイッチング素子であり、いずれもメインセル25およびセンスセル26を備えたNチャネル型のパワーMOSFETである。メインセル25は、インバータ主回路4からモータ2に対する通電を行うための主たる通電経路に介在している。
すなわち、上アームを構成するパワー素子19、21、23のメインセル25のドレインは電源線L1に接続され、そのソースはノードNu、Nv、Nwにそれぞれ接続されている。下アームを構成するパワー素子20、22、24のメインセル25のドレインはノードNu、Nv、Nwにそれぞれ接続され、そのソースは電源線L2に接続されている。
センスセル26は、メインセル25に流れる素子電流を検出するためのものであり、メインセル25に流れる電流に応じた電流が所定の分流比で流れる。なお、この分流比は、メインセル25およびセンスセル26のサイズ比などにより定まる。このような構成によれば、メインセル25に比較的大きな電流が流れる場合でも、その電流検出を容易に行うことができる。
メインセル25およびセンスセル26のゲートは、共通接続されており、その共通のゲートには、駆動回路11〜16の出力信号が与えられている。メインセル25およびセンスセル26の各ソースは、検出回路5〜10の入力端子にそれぞれ接続されている。検出回路10〜15は、センスセル26に流れる電流に基づいてパワー素子19〜24に流れる素子電流を検出する。したがって、本実施形態では、センスセル26および検出回路5〜10により、ハーフブリッジ回路4u、4v、4wの上アームおよび下アームに流れる電流を検出する電流検出部が構成されている。
検出回路5〜10は、パワー素子19〜24のセンスセル26に流れる電流を検出し、その検出値を表す電流検出信号Siを出力する。検出回路5〜10から出力される各電流検出信号Siは、制御回路17に与えられる。駆動回路11〜16は、制御回路17から与えられるゲート信号Sgに基づいて、パワー素子19〜24をスイッチング駆動する。
制御回路17には、検出回路5〜10から出力される電流検出信号Si、モータ2が有するロータの回転位置を検出する位置センサ27から出力される位置検出信号Sp、図示しない上位の制御器から与えられるトルク指令信号Stが入力されている。制御回路17は、電力変換器3の動作全般を制御するもので、インバータ主回路4の駆動を制御する機能、電流検出部の故障を検出する機能などを備えている。制御回路17の具体的な構成は、図2に示すようなものとなっている。
図2に示すように、制御回路17は、駆動制御部28および故障検出処理部29を備えている。駆動制御部28は、電流検出部の検出値に基づいてインバータ主回路4の動作を制御することによりモータ2の駆動を制御する。また、駆動制御部28は、モータ2のトルクを指令するトルク指令値を表すトルク指令信号Stに基づいてモータ2の駆動を制御する構成となっている。
具体的には、駆動制御部28は、電流検出信号Si、位置検出信号Spおよびトルク指令信号Stに基づいて、インバータ主回路4を駆動するためのゲート信号Sgを生成して出力する。これにより、モータ2に流れる電流およびモータ2が発生するトルクが、所望する値にフィードバック制御される。
故障検出処理部29は、複数のテストパターンおよび電流検出部の検出値を表す電流検出信号Siに基づいて電流検出部の故障を検出する故障検出処理を実行する。上述したテストパターンは、3相のハーフブリッジ回路4u、4v、4wについて相毎に上下アームのいずれかが選択されたものであり、例えば図3に示すようなものである。
この場合、テストパターンNo.1は、U相上アーム、V相上アームおよびW相上アームが選択されたパターンである。テストパターンNo.2は、U相上アーム、V相下アームおよびW相下アームが選択されたパターンである。テストパターンNo.3は、U相下アーム、V相上アームおよびW相下アームが選択されたパターンである。テストパターンNo.4は、U相下アーム、V相下アームおよびW相上アームが選択されたパターンである。
テストパターンNo.5は、U相下アーム、V相下アームおよびW相下アームが選択されたパターンである。テストパターンNo.6は、U相下アーム、V相上アームおよびW相上アームが選択されたパターンである。テストパターンNo.7は、U相上アーム、V相下アームおよびW相上アームが選択されたパターンである。テストパターンNo.8は、U相上アーム、V相上アームおよびW相下アームが選択されたパターンである。
このように、本実施形態における8つのテストパターンNo.1〜No.8は、選択可能なアームの組み合わせが過不足なく含まれるように設定されたものとなっている。なお、以下の説明では、テストパターンNo.1〜No.8のことを、それぞれテストパターン1〜8とも称す。
故障検出処理には、テストパターン1〜8のうち所定のテストパターンにおいて選択されたアームがオンする期間において、そのアームに対応した電流検出部の検出値を表す電流検出信号Siを用いて所定の判定演算を実行し、その判定演算の結果に基づいて、上記アームに対応した電流検出部に故障が生じているか否かを判定するテストパターン判定処理が含まれている。
このテストパターン判定処理における判定演算では、所定のテストパターンにおいて選択された3つのアームがオンする期間における、それら3つのアームに対応する電流検出部の検出値の和の絶対値が計算される。そして、テストパターン判定処理では、判定演算により計算された絶対値と所定の判定閾値とが比較され、その比較結果に基づいて上記3つのアームに対応する電流検出部に故障が生じているか否かが判定される。
前述したように、本実施形態では、3相電流の総和がゼロとなる構成になっている。そのため、電流検出部が正常であれば、各テストパターンにおいて選択された3つのアームがオンする期間における、それら3つのアームに対応する電流検出部の検出値の和の絶対値は、ゼロとなる。したがって、判定演算により計算された絶対値がゼロであるか否かにより、電流検出部に故障が生じているか否かを判定することができる。
ただし、電流検出に関する構成における各種の誤差の影響により、電流検出部が正常である場合でも、上記検出値の和の絶対値が完全にゼロにならないことも考えられる。そのため、本実施形態では、上記判定閾値は、このような誤差の影響により誤判定が生じないような値、例えばゼロよりも所定のマージン分だけ大きい値に設定されている。
図3には、各テストパターン1〜8と、上記テストパターン判定処理における判定対象とが対応付けられている。すなわち、テストパターン1を用いたテストパターン判定処理では、U相上アーム、V相上アームおよびW相上アームに対応した電流検出部の故障判定(評価)が行われる。テストパターン2を用いたテストパターン判定処理では、U相上アーム、V相下アームおよびW相下アームに対応した電流検出部の故障判定が行われる。
テストパターン3を用いたテストパターン判定処理では、U相下アーム、V相上アームおよびW相下アームに対応した電流検出部の故障判定が行われる。テストパターン4を用いたテストパターン判定処理では、U相下アーム、V相下アームおよびW相上アームに対応した電流検出部の故障判定が行われる。テストパターン5を用いたテストパターン判定処理では、U相下アーム、V相下アームおよびW相下アームに対応した電流検出部の故障判定が行われる。
テストパターン6を用いたテストパターン判定処理では、U相下アーム、V相上アームおよびW相上アームに対応した電流検出部の故障判定が行われる。テストパターン7を用いたテストパターン判定処理では、U相上アーム、V相下アームおよびW相上アームに対応した電流検出部の故障判定が行われる。テストパターン8を用いたテストパターン判定処理では、U相上アーム、V相上アームおよびW相下アームに対応した電流検出部の故障判定が行われる。
上述したようなテストパターン判定処理による判定結果は、例えば図4に示すようなテーブル(以下、TP判定結果テーブルとも呼ぶ)として記憶される。なお、図4に示すテーブルは、例えば制御回路17が備えるメモリ上に確保された記憶領域に記憶されている。図4に示すテーブルでは、テストパターン1〜8のそれぞれに対応する判定結果として、「正常」、「故障」または「未評価」が記憶される。
ここで、正常は、対応するテストパターンを用いて行われたテストパターン判定処理において故障判定が不成立となったことを意味するものであり、例えば「1」で表される。故障は、対応するテストパターンを用いて行われたテストパターン判定処理において故障判定が成立したことを意味するものであり、例えば「−1」で表される。未評価は、対応するテストパターンを用いたテストパターン判定処理が未実施であることを意味するものであり、例えば「0」で表される。
図4に示す例では、テストパターン1、2を用いて行われたテストパターン判定処理において故障判定が不成立となったこと、テストパターン3〜6を用いて行われたテストパターン判定処理において故障判定が成立したこと、および、テストパターン7、8を用いたテストパターン判定処理が未実施であること、を示す内容となっている。
また、故障検出処理には、テストパターン判定処理が実行された結果、少なくとも1つのテストパターンについて故障判定が成立した場合、その結果に基づいて電流検出部の故障を検出する最終故障判定処理が含まれている。そして、この最終故障判定処理には、テストパターン判定処理が実行された結果、2つ以上のテストパターンについて故障判定が成立した場合、それらの結果に基づいて故障している電流検出部を特定する処理が含まれる。また、最終故障判定処理には、テストパターン判定処理が実行された結果、2つ以上のテストパターンについて故障判定が不成立となった場合、それらの結果に基づいて正常である電流検出部を特定する処理が含まれる。
故障検出処理部29は、上述したような内容の故障検出処理を実行することにより電流検出部の故障判定を行い、その判定結果を表す故障情報を、駆動制御部28および図示しない上位の制御器へと出力する。この故障情報は、例えば図5に示すようなテーブル(以下、故障情報テーブルとも呼ぶ)として構成されている。なお、図5に示すテーブルは、例えば制御回路17が備えるメモリ上に確保された記憶領域に記憶されている。
図5に示すテーブルでは、U相、V相およびW相の上下アームのそれぞれに対応する6つの電流検出部についての故障情報として、「正常」、「故障」または「未評価」が記憶される。ここで、正常は、対応する電流検出部が正常であることが特定されたことを意味するものであり、例えば「1」で表される。
故障は、対応する電流検出部が故障であることが特定されたことを意味するものであり、例えば「−1」で表される。未評価は、対応する電流検出部が正常または故障であることが特定されていないことを意味するものであり、例えば「0」で表される。図5に示す例では、U相上アーム、V相上アーム、V相下アーム、W相上アームおよびW相下アームに対応する各電流検出部が「正常」であり、U相下アームに対応する電流検出部が「故障」であることを示す故障情報となっている。
次に、上記構成の作用について説明する。
[1]故障検出処理の全体の流れ
故障検出処理部29は、ゲート信号Sgが反転したタイミングにおいて、図6に示すような内容の故障検出処理を実行する。ただし、ゲート信号Sgの反転直後は、パワー素子19〜24がスイッチング過渡状態となるために生じるノイズなどの影響により電流検出信号Siが安定せず、電流検出の精度が低下するおそれがある。そこで、故障検出処理部29は、ゲート信号Sgが反転したタイミングから例えば数マイクロ秒などの所定時間が経過した後のタイミングで故障検出処理を実行するとよい。
図6に示すように、故障検出処理が開始された後、最初に実行されるステップS100では、ハーフブリッジ回路4u、4v、4wの各アームを構成するパワー素子19〜24の駆動状況に応じて判定対象(評価対象)とするテストパターンが決定される。具体的には、ステップS100では、各相の上下アームのうち、ゲートONしている、つまりオン駆動されているアームの組み合わせと、選択されているアームの組み合わせが一致するテストパターンが、判定対象とするテストパターンとして決定される。
ステップS100の実行後は、ステップS200に進み、決定されたテストパターンが使用可能であるか否かが判断される。この場合、「評価禁止」に設定されていないテストパターンが使用可能なテストパターンとなる。なお、「評価禁止」は、そのテストパターンを用いたテストパターン判定処理の実行禁止を意味するものである。詳細は後述するが、最終故障判定処理において、故障が確定となった電流検出部に対応したアームを含むテストパターンが、「評価禁止」に設定されるようになっている。
このように、本実施形態では、最終故障判定処理が実行された結果、所定の電流検出部の故障が検出された場合、それ以降に実行されるテストパターン判定処理では、その故障が検出された電流検出部に対応したアームが選択されたテストパターンについて判定対象から除外されるようになっている。
ここで、決定されたテストパターンが「評価禁止」に設定されたものである場合、ステップS200で「NO」となり、そのまま処理が終了となる。一方、決定されたテストパターンが「評価禁止」に設定されたものでない場合、ステップS200で「YES」となり、ステップS300に進む。ステップS300では、決定されたテストパターンにより選択されている3つのアームに対応した電流検出部から出力される電流検出信号Si、つまり電流検出部による電流の検出値が読み込まれる。
ステップS300の実行後は、ステップS400に進み、前述したテストパターン判定処理が実行される。なお、テストパターン判定処理の具体的な内容については後述する。ステップS400の実行後は、ステップS500に進む。ステップS500では、全てのテストパターンの評価が完了したか否か、つまりテストパターン1〜8の全てについてテストパターン判定処理が実行されたか否かが判断される。なお、この判断は、TP判定結果テーブルに基づいて行われる。
テストパターン1〜8のうち少なくとも1つが未評価である場合、つまりTP判定結果テーブルに「未評価」が記憶されている箇所が1つでもある場合、ステップS500で「NO」となり、そのまま処理が終了となる。一方、テストパターン1〜8の全てが評価済みである場合、つまりTP判定結果テーブルに「未評価」が記憶されている箇所がない場合、ステップS500で「YES」となり、ステップS600に進む。
ステップS600では、前述した最終故障判定処理が実行される。このように、本実施形態では、最終故障判定処理は、8つのテストパターン1〜8の全てについてテストパターン判定処理が実行された後に実行されるようになっている。なお、最終故障判定処理の具体的な内容については後述する。
ステップS600の実行後は、ステップS700に進む。ステップS700では、使用可能なテストパターン、つまり評価可能なテストパターンの故障判定が初期化される。具体的には、ステップS700では、TP判定結果テーブルの各値が「未評価」となるように初期化が行われる。ただし、「評価禁止」に設定されたテストパターンの値については初期化されず、そのままの値、つまり「故障」が維持される。
[2]テストパターン判定処理の内容
本実施形態のテストパターン判定処理は、図7に示すような内容の処理となっている。まず、ステップS401では、ステップS300で読み込まれた3つの電流検出値の和が判定閾値以下であるか否かが判断される。すなわち、ステップS401では、本テストパターン判定処理での判定対象となるテストパターン(以下、現在のテストパターンと呼ぶ)において選択された3つのアームに対応する電流検出部の検出値の和、つまり3相電流の総和の絶対値が判定閾値以下であるか否かが判断される。
3相電流の総和の絶対値が判定閾値以下である場合、ステップS401で「YES」となり、ステップS402に進む。ステップS402では、TP判定結果テーブルにおける現在のテストパターンの判定結果として「正常」が記憶される。一方、3相電流の総和の絶対値が判定閾値より大きい場合、ステップS401で「NO」となり、ステップS403に進む。ステップS403では、TP判定結果テーブルにおける現在のテストパターンの判定結果として「故障」が記憶される。ステップS402またはS403の実行後、テストパターン判定処理が終了となる。
[3]最終故障判定処理の内容
本実施形態の最終故障判定処理は、図8および図9に示すような内容の処理となっている。この場合、図8において丸印の中に「1」を付した箇所から、図9において丸印の中に「1」を付した箇所へと繋がるようになっている。
まず、ステップS601では、使用可能なテストパターンの全てが正常判定であるか否かが判断される。すなわち、ステップS601では、TP判定結果テーブルにおいて、使用可能なテストパターンの全てに「正常」が記憶されているか否かが判断される。ここで、「評価禁止」に設定されたテストパターンを除くテストパターンの全てに「正常」が記憶されている場合、ステップS601で「YES」となり、ステップS602に進む。
ステップS602では、故障情報テーブルにおいて「故障」と記憶されていない全てのアームに対し、「正常」が記憶される。なお、本実施形態では、ステップS601、S602は、テストパターン判定処理が実行された結果、全てのテストパターンについて故障判定が不成立となった場合、全ての電流検出部が正常であることを検出する処理に相当する。一方、「評価禁止」に設定されたテストパターンを除くテストパターンの少なくとも1つに「正常」以外の値が記憶されている場合、ステップS601で「NO」となり、ステップS603に進む。
ステップS603〜S607は、U相上アームに対応した電流検出部が故障しているか否かを判定するための処理である。そのため、ここでは、U相上アームが選択されたテストパターン1、2、7および8の評価結果に基づいて、U相上アームに対応した電流検出部が故障しているか、あるいは正常であるかが判定される。なお、図3に示したように、テストパターン1、2、7および8は、いずれも「U相上アーム」が選択されたパターンとなっている。
まず、ステップS603では、テストパターン1、2、7および8の全てが故障判定であるか否かが判断される。すなわち、ステップS603では、TP判定結果テーブルにおいて、テストパターン1、2、7および8の全てに「故障」が記憶されているか否かが判断される。
ここで、テストパターン1、2、7および8の全てに「故障」が記憶されている場合、ステップS603で「YES」となり、ステップS604に進む。ステップS604では、故障情報テーブルにおいてU相上アームに「故障」が記憶される。ステップS604の実行後は、ステップS605に進み、テストパターン1、2、7および8が評価禁止に設定される。
一方、テストパターン1、2、7および8の少なくとも1つに「故障」以外の値が記憶されている場合、ステップS603で「NO」となり、ステップS606に進む。ステップS606では、テストパターン1、2、7および8の全てが正常判定であるか否かが判断される。すなわち、ステップS606では、TP判定結果テーブルにおいて、テストパターン1、2、7および8の全てに「正常」が記憶されているか否かが判断される。
ここで、テストパターン1、2、7および8の全てに「正常」が記憶されている場合、ステップS606で「YES」となり、ステップS607に進む。ステップS607では、故障情報テーブルにおいてU相上アームに「正常」が記憶される。一方、テストパターン1、2、7および8の少なくとも1つに「正常」以外の値が記憶されている場合、ステップS606で「NO」となり、ステップS608に進む。なお、ステップS605またはS607の実行後もステップS608に進む。
ステップS608〜S612は、U相下アームに対応した電流検出部が故障しているか否かを判定するための処理である。そのため、ここでは、U相下アームが選択されたテストパターン3、4、5および6の評価結果に基づいて、U相下アームに対応した電流検出部が故障しているか、あるいは正常であるかが判定される。なお、図3に示したように、テストパターン3、4、5および6は、いずれも「U相下アーム」が選択されたパターンとなっている。
まず、ステップS608では、テストパターン3、4、5および6の全てが故障判定であるか否かが判断される。すなわち、ステップS608では、TP判定結果テーブルにおいて、テストパターン3、4、5および6の全てに「故障」が記憶されているか否かが判断される。
ここで、テストパターン3、4、5および6の全てに「故障」が記憶されている場合、ステップS608で「YES」となり、ステップS609に進む。ステップS609では、故障情報テーブルにおいてU相下アームに「故障」が記憶される。ステップS609の実行後は、ステップS610に進み、テストパターン3、4、5および6が評価禁止に設定される。
一方、テストパターン3、4、5および6の少なくとも1つに「故障」以外の値が記憶されている場合、ステップS608で「NO」となり、ステップS611に進む。ステップS611では、テストパターン3、4、5および6の全てが正常判定であるか否かが判断される。すなわち、ステップS611では、TP判定結果テーブルにおいて、テストパターン3、4、5および6の全てに「正常」が記憶されているか否かが判断される。
ここで、テストパターン3、4、5および6の全てに「正常」が記憶されている場合、ステップS611で「YES」となり、ステップS612に進む。ステップS612では、故障情報テーブルにおいてU相下アームに「正常」が記憶される。一方、テストパターン3、4、5および6の少なくとも1つに「正常」以外の値が記憶されている場合、ステップS611で「NO」となり、ステップS613に進む。なお、ステップS610またはS612の実行後もステップS613に進む。
ステップS613〜S617は、V相上アームに対応した電流検出部が故障しているか否かを判定するための処理である。そのため、ここでは、V相上アームが選択されたテストパターン1、3、6および8の評価結果に基づいて、V相上アームに対応した電流検出部が故障しているか、あるいは正常であるかが判定される。なお、図3に示したように、テストパターン1、3、6および8は、いずれも「V相上アーム」が選択されたパターンとなっている。
まず、ステップS613では、テストパターン1、3、6および8の全てが故障判定であるか否かが判断される。すなわち、ステップS613では、TP判定結果テーブルにおいて、テストパターン1、3、6および8の全てに「故障」が記憶されているか否かが判断される。
ここで、テストパターン1、3、6および8の全てに「故障」が記憶されている場合、ステップS613で「YES」となり、ステップS614に進む。ステップS614では、故障情報テーブルにおいてV相上アームに「故障」が記憶される。ステップS614の実行後は、ステップS615に進み、テストパターン1、3、6および8が評価禁止に設定される。
一方、テストパターン1、3、6および8の少なくとも1つに「故障」以外の値が記憶されている場合、ステップS613で「NO」となり、ステップS616に進む。ステップS616では、テストパターン1、3、6および8の全てが正常判定であるか否かが判断される。すなわち、ステップS616では、TP判定結果テーブルにおいて、テストパターン1、3、6および8の全てに「正常」が記憶されているか否かが判断される。
ここで、テストパターン1、3、6および8の全てに「正常」が記憶されている場合、ステップS616で「YES」となり、ステップS617に進む。ステップS617では、故障情報テーブルにおいてV相上アームに「正常」が記憶される。一方、テストパターン1、3、6および8の少なくとも1つに「正常」以外の値が記憶されている場合、ステップS616で「NO」となり、ステップS618に進む。なお、ステップS615またはS617の実行後もステップS608に進む。
ステップS618〜S622は、V相下アームに対応した電流検出部が故障しているか否かを判定するための処理である。そのため、ここでは、V相下アームが選択されたテストパターン2、4、5および7の評価結果に基づいて、V相下アームに対応した電流検出部が故障しているか、あるいは正常であるかが判定される。なお、図3に示したように、テストパターン2、4、5および7は、いずれも「V相下アーム」が選択されたパターンとなっている。
まず、ステップS618では、テストパターン2、4、5および7の全てが故障判定であるか否かが判断される。すなわち、ステップS618では、TP判定結果テーブルにおいて、テストパターン2、4、5および7の全てに「故障」が記憶されているか否かが判断される。
ここで、テストパターン2、4、5および7の全てに「故障」が記憶されている場合、ステップS618で「YES」となり、ステップS619に進む。ステップS619では、故障情報テーブルにおいてV相下アームに「故障」が記憶される。ステップS619の実行後は、ステップS620に進み、テストパターン2、4、5および7が評価禁止に設定される。
一方、テストパターン2、4、5および7の少なくとも1つに「故障」以外の値が記憶されている場合、ステップS618で「NO」となり、ステップS621に進む。ステップS621では、テストパターン2、4、5および7の全てが正常判定であるか否かが判断される。すなわち、ステップS621では、TP判定結果テーブルにおいて、テストパターン2、4、5および7の全てに「正常」が記憶されているか否かが判断される。
ここで、テストパターン2、4、5および7の全てに「正常」が記憶されている場合、ステップS621で「YES」となり、ステップS622に進む。ステップS622では、故障情報テーブルにおいてV相下アームに「正常」が記憶される。一方、テストパターン2、4、5および7の少なくとも1つに「正常」以外の値が記憶されている場合、ステップS621で「NO」となり、ステップS623に進む。なお、ステップS620またはS622の実行後もステップS623に進む。
ステップS623〜S627は、W相上アームに対応した電流検出部が故障しているか否かを判定するための処理である。そのため、ここでは、W相上アームが選択されたテストパターン1、4、6および7の評価結果に基づいて、W相上アームに対応した電流検出部が故障しているか、あるいは正常であるかが判定される。なお、図3に示したように、テストパターン1、4、6および7は、いずれも「V相上アーム」が選択されたパターンとなっている。
まず、ステップS623では、テストパターン1、4、6および7の全てが故障判定であるか否かが判断される。すなわち、ステップS623では、TP判定結果テーブルにおいて、テストパターン1、4、6および7の全てに「故障」が記憶されているか否かが判断される。
ここで、テストパターン1、4、6および7の全てに「故障」が記憶されている場合、ステップS623で「YES」となり、ステップS624に進む。ステップS624では、故障情報テーブルにおいてW相上アームに「故障」が記憶される。ステップS624の実行後は、ステップS625に進み、テストパターン1、4、6および7が評価禁止に設定される。
一方、テストパターン1、4、6および7の少なくとも1つに「故障」以外の値が記憶されている場合、ステップS623で「NO」となり、ステップS626に進む。ステップS626では、テストパターン1、4、6および7の全てが正常判定であるか否かが判断される。すなわち、ステップS626では、TP判定結果テーブルにおいて、テストパターン1、4、6および7の全てに「正常」が記憶されているか否かが判断される。
ここで、テストパターン1、4、6および7の全てに「正常」が記憶されている場合、ステップS626で「YES」となり、ステップS627に進む。ステップS627では、故障情報テーブルにおいてW相上アームに「正常」が記憶される。一方、テストパターン1、4、6および7の少なくとも1つに「正常」以外の値が記憶されている場合、ステップS626で「NO」となり、ステップS628に進む。なお、ステップS625またはS627の実行後もステップS628に進む。
ステップS628〜S632は、W相下アームに対応した電流検出部が故障しているか否かを判定するための処理である。そのため、ここでは、W相下アームが選択されたテストパターン2、3、5および8の評価結果に基づいて、W相下アームに対応した電流検出部が故障しているか、あるいは正常であるかが判定される。なお、図3に示したように、テストパターン2、3、5および8は、いずれも「W相下アーム」が選択されたパターンとなっている。
まず、ステップS628では、テストパターン2、3、5および8の全てが故障判定であるか否かが判断される。すなわち、ステップS628では、TP判定結果テーブルにおいて、テストパターン2、3、5および8の全てに「故障」が記憶されているか否かが判断される。
ここで、テストパターン2、3、5および8の全てに「故障」が記憶されている場合、ステップS628で「YES」となり、ステップS629に進む。ステップS629では、故障情報テーブルにおいてW相下アームに「故障」が記憶される。ステップS629の実行後は、ステップS630に進み、テストパターン2、3、5および8が評価禁止に設定される。
一方、テストパターン2、3、5および8の少なくとも1つに「故障」以外の値が記憶されている場合、ステップS628で「NO」となり、ステップS631に進む。ステップS631では、テストパターン2、3、5および8の全てが正常判定であるか否かが判断される。すなわち、ステップS631では、TP判定結果テーブルにおいて、テストパターン2、3、5および8の全てに「正常」が記憶されているか否かが判断される。
ここで、テストパターン2、3、5および8の全てに「正常」が記憶されている場合、ステップS631で「YES」となり、ステップS632に進む。ステップS632では、故障情報テーブルにおいてW相下アームに「正常」が記憶される。一方、テストパターン2、3、5および8の少なくとも1つに「正常」以外の値が記憶されている場合、ステップS631で「NO」となり、処理が終了となる。なお、ステップS630またはS632の実行後も処理が終了となる。
なお、本実施形態では、テストパターン1、2、7および8の組み合わせがU相上アームに対応した電流検出部の故障または正常を特定するためのテストパターンの組み合わせに相当する。また、テストパターン3、4、5および6の組み合わせがU相下アームに対応した電流検出部の故障または正常を特定するためのテストパターンの組み合わせに相当する。また、テストパターン1、3、6および8の組み合わせがV相上アームに対応した電流検出部の故障または正常を特定するためのテストパターンの組み合わせに相当する。また、テストパターン2、4、5および7の組み合わせがV相下アームに対応した電流検出部の故障または正常を特定するためのテストパターンの組み合わせに相当する。
また、テストパターン1、4、6および7の組み合わせがW相上アームに対応した電流検出部の故障または正常を特定するためのテストパターンの組み合わせに相当する。また、テストパターン2、3、5および8の組み合わせがW相下アームに対応した電流検出部の故障または正常を特定するためのテストパターンの組み合わせに相当する。
以上説明した本実施形態によれば、次のような効果が得られる。
故障検出処理部29は、3相のハーフブリッジ回路4u、4v、4wの各相について相毎に上下アームのいずれかが選択された8つのテストパターン1〜8および電流検出部の検出値を表す電流検出信号Siに基づいて電流検出部の故障を検出する故障検出処理を実行するようになっている。そして、故障検出処理には、テストパターン判定処理および最終故障判定処理が含まれる。テストパターン判定処理は、所定のテストパターンにおいて選択されたアームがオンする期間におけるアームに対応する電流検出部の検出値を用いて所定の判定演算を実行し、判定演算の結果に基づいてアームに対応する電流検出部に故障が生じているか否かを判定する処理となっている。最終故障判定処理は、テストパターン判定処理が実行された結果、少なくとも1つのテストパターンについて故障判定が成立した場合、その結果に基づいて電流検出部の故障を検出する処理となっている。
上記構成によれば、ハーフブリッジ回路4u、4v、4wを構成する6つのアームのそれぞれに対応して設けられる複数の電流検出部のいずれかに故障が生じた場合には、駆動制御部28によるモータ2の駆動制御の影響を受けることなく、その故障を検出することができる。なお、上記構成では、1つのテストパターンについて故障判定が成立した場合、そのテストパターンにおいて選択されたアームに対応して設けられる電流検出部のいずれかが故障したことを特定することができる。また、上記構成では、2つ以上のテストパターンについて故障判定が成立した場合、それらテストパターンの全てにおいて選択されたアームに対応して設けられる電流検出部のいずれかが故障したことを特定することができる。
このように、上記構成によれば、電流検出部の故障が検出された場合、その故障した電流検出部を特定することができるため、故障検出後も、駆動制御部28は、故障したことが特定された電流検出部を除く電流検出部の検出値を用いてモータ2の駆動制御を継続することができる。さらに、上記構成によれば、故障検出後も、故障したことが特定された電流検出部に対応するアームが選択されたテストパターンを除くテストパターンを用いてテストパターン判定処理を実行することにより、電流検出部の更なる故障を検出することができる。したがって、上記構成によれば、複数の電流検出部のうち所定の電流検出部の故障を検出した後、モータ2の制御を継続しつつ、さらに別の電流検出部の故障を検出することができるという優れた効果が得られる。
本実施形態の最終故障判定処理では、所定のアームが選択された全てのテストパターンについて故障判定が成立した場合、そのアームに対応した電流検出部が故障したことが特定されるようになっている。例えば、U相上アームが選択された全てのテストパターン1、2、7および8について故障判定が成立した場合、U相上アームに対応した電流検出部が故障したことが特定される、といった具合である。このようにすれば、故障している電流検出部を確実に特定することができる。
なお、最終故障判定処理は、テストパターン判定処理が実行された結果、2つ以上のテストパターンについて故障判定が成立した場合、それらの結果に基づいて故障している電流検出部を特定する処理を含むようにしてもよい。例えば、U相上アームが選択された2つのテストパターン1、2について故障判定が成立した場合、U相上アームに対応した電流検出部が故障したことが特定されるようにしてもよい。このように変更してもよい理由は次の通りである。
すなわち、テストパターン1、2について故障判定が成立した場合、U相上アームに対応した電流検出部が故障しているケースだけでなく、V相上アームおよびW相上アームのそれぞれに対応した各電流検出部の少なくとも一方とV相下アームおよびW相下アームのそれぞれに対応した各電流検出部の少なくとも一方とが故障しているケースも考えられる。しかし、センスセル26を用いた電流検出方式を採用した本実施形態の電流検出部は、そもそも故障する確率、つまり故障率が比較的低いため、本実施形態の構成において、同時期に複数の電流検出部の故障が発生する可能性は極めて低い。そのため、上述した2つのケースのうち、後者のケースを除外したとしても大きな問題は生じることはない。したがって、所定のアームが選択された2つ以上のテストパターンについて故障判定が成立した場合、それらの結果に基づいて故障している電流検出部を特定することが可能となる。
本実施形態の最終故障判定処理では、所定のアームが選択された全てのテストパターンについて故障判定が不成立となった場合、そのアームに対応した電流検出部が正常であることが特定されるようになっている。例えば、U相上アームが選択された全てのテストパターン1、2、7および8について故障判定が不成立であった場合、U相上アームに対応した電流検出部が正常であることが特定される、といった具合である。このようにすれば、正常である電流検出部を確実に特定することができる。
なお、最終故障判定処理は、テストパターン判定処理が実行された結果、2つ以上のテストパターンについて故障判定が不成立であった場合、それらの結果に基づいて正常である電流検出部を特定する処理を含むようにしてもよい。例えば、U相上アームが選択された2つのテストパターン1、2について故障判定が不成立であった場合、U相上アームに対応した電流検出部が正常であることが特定されるようにしてもよい。
本実施形態では、所定の電流検出部の故障または正常を特定するためのテストパターンの組み合わせは、他の電流検出部の故障または正常を特定するためのテストパターンの組み合わせとは異なるとともに、当該組み合わせに包含されていない。そして、最終故障判定処理が実行された結果、所定の電流検出部の故障が検出された場合、それ以降に実行されるテストパターン判定処理では、その故障が検出された電流検出部に対応したアームが選択されたテストパターンは判定対象から除外されるようになっている。このようにすれば、1つの電流検出部の故障が検出された後も、それ以前と同様の故障検出処理が継続して実行されることにより、電流検出部の更なる故障を検出するとともに、その故障した電流検出部を特定することができる。なお、本実施形態によれば、最大で、電流検出部の故障を2つまで検出することが可能となる。
例えば、W相下アームに対応した電流検出部が故障し、その故障が検出されると、テストパターン2、3、5および8は「評価禁止」に設定され、それ以降に実行されるテストパターン判定処理における判定対象から除外される。したがって、それ以降に実行される故障判定処理では、4つのテストパターン1、4、6および7だけが用いられることになるが、テストパターン1、4、6および7では、W相下アームを除く5つのアームの全てが選択されている。そのため、これら4つのテストパターン1、4、6および7を用いて故障判定処理が行われることにより、残りの5つのアームのそれぞれに対応した電流検出部の故障を検出するとともに、その故障した電流検出部を特定することができる。
本実施形態の故障検出処理で用いられる8つのテストパターン1〜8は、選択可能なアームの組み合わせが過不足なく含まれるように設定されている。このようにすれば、6つのアームの駆動状態、つまり駆動制御部28によるモータ2の駆動制御の影響を受けることなく、電流検出部の故障を検出することができる。
本実施形態の故障検出処理において、最終故障判定処理は、8つのテストパターン1〜8の全てについてテストパターン判定処理が実行された後に実行されるようになっている。このようにすれば、全てのテストパターン1〜8の評価結果が出揃った状態で最終故障判定処理が実行されることになるため、電流検出部の故障判定について誤判定の発生頻度が低く抑えられ、その結果、故障検出の精度を高めることができる。
本実施形態の故障検出処理には、テストパターン判定処理が実行された結果、全てのテストパターン1〜8について故障判定が不成立となった場合、全ての電流検出部が正常であることを検出する処理(以下、正常判定処理と呼ぶ)が含まれており、その正常判定処理は、最終故障判定処理の最初に実行されるようになっている。前述したように、本実施形態の電流検出部の故障率は比較的低い。そのため、最終故障判定処理の最初に正常判定処理を実施するようにしておけば、全ての電流検出部が正常である限り、その正常判定処理以降の処理は実行されることがない。したがって、このような構成によれば、通常動作中における制御回路17の処理負荷を軽減することができるという効果が得られる。
(第2実施形態)
以下、第2実施形態について図10を参照して説明する。
第2実施形態では、故障検出処理の内容が第1実施形態と異なっている。なお、モータ制御システム1の構成は、第1実施形態と共通する。
故障検出処理には、テストパターンのそれぞれについてテストパターン判定処理を実行したか否かを表す判定履歴を記憶する処理が含まれている。なお、この場合、TP判定結果テーブルへの記録内容が判定履歴を表すことになる。すなわち、TP判定結果テーブルに「正常」または「故障」が記憶されている場合、テストパターン判定処理が実行済みであることを表す判定履歴が記憶された状態に相当する。
また、TP判定結果テーブルに「未評価」が記憶されている場合、テストパターン判定処理が実行されていないことを表す判定履歴が記憶された状態に相当する。したがって、図7に示したステップS402およびS403が、判定履歴を記憶する処理に相当する。また、この場合、故障判定処理におけるステップS700は、最終故障判定処理の実行後に、上述した判定履歴を全て初期化する処理に相当する。
本実施形態の故障検出処理では、テストパターン判定処理が実行済みであることを表す判定履歴が記憶されたテストパターンについては、テストパターン判定処理が再度実行されないようになっている。以下、このような本実施形態の故障判定処理について、図10を参照して説明する。
図10に示すように、本実施形態の故障検出処理では、第1実施形態の故障検出処理に対し、ステップS250が追加されている点が異なる。ステップS250は、決定されたテストパターンが使用可能である場合、つまりステップS200で「YES」となった場合に実行される。ステップS250では、決定されたテストパターンが既にテストパターン判定処理を実行したものであるか否か、つまり判定済みであるか否かが判断される。
このような判断は、前述したように、TP判定結果テーブルへの記録内容に基づいて行われる。ここで、決定されたテストパターンがTP判定結果テーブルに「正常」または「故障」が記憶されたものである場合、ステップS250で「YES」となり、そのまま処理が終了となる。一方、決定されたテストパターンがTP判定結果テーブルに「未評価」が記憶されたものである場合、ステップS250で「NO」となり、ステップS300に進む。ステップS300以降の処理は、第1実施形態と同様であるため、説明を省略する。
上記したように、本実施形態の故障検出処理では、所定のテストパターンを用いたテストパターン判定処理が実行されると、その後、最終故障判定処理が実行されるまでの間は、同じテストパターンを用いたテストパターン判定処理が実行されることはない。したがって、本実施形態によれば、同一のテストパターンを用いたテストパターン判定処理が重複して実行されることがなくなり、その分だけ、制御回路17の処理負荷が軽減されるという効果が得られる。
(第3実施形態)
以下、第3実施形態について図11および図12を参照して説明する。
第3実施形態では、故障検出処理の内容が第1実施形態と異なっている。なお、モータ制御システム1の構成は、第1実施形態と共通する。
上記各実施形態の故障検出処理では、テストパターン1〜8の全てについてテストパターン判定処理が実行された後に最終故障判定処理が実行されるようになっていた。ここで、テストパターン1〜8は、選択可能なアームの組み合わせが過不足なく含まれるように設定されている。そのため、上記各実施形態の故障判定処理では、全てのテストパターン1〜8に対するテストパターン判定処理が実行されて、それらの評価結果が出揃うまでには、少なくともモータ制御の1周期に相当する期間を要することになる。
このようなことから、上記各実施形態の故障検出処理では、最終故障検出処理が実行されて、電流検出部が故障しているか否かが最終的に判断されるまでに比較的長い時間を要することとなり、故障検出の応答性の面で改善の余地があった。そこで、本実施形態では、故障検出の応答性を一層良好にするため、次のような工夫が加えられている。
すなわち、図11に示すように、U相、V相およびW相の交流電圧を指令する電圧指令値(以下、交流電圧指令値とも呼ぶ)の1周期は、各相の大小関係に基づいて6つの領域1〜6に分けることができる。なお、電圧指令値は、駆動制御部28において、電流検出信号Si、位置検出信号Spおよびトルク指令信号Stなどに基づいて生成されるものであり、その1周期は3相の交流電圧指令値の1周期に相当する。
図11における三角波は、周知のPWM変調技術である三角波比較PWM法によってパワー素子19〜24をON/OFFするために用いられるものである。そして、パワー素子19〜24のON/OFFは、電圧指令値と三角波の大小関係で決定される。具体的には、電圧指令値が三角波を上回る期間には、上アームのパワー素子(19、21、23)がONするとともに、下アームのパワー素子(20、22、24)がOFFする。また、電圧指令値が三角波を下回る期間には、下アームのパワー素子(20、22、24)がONするとともに、上アームのパワー素子(19、21、23)がOFFする。
各領域において取り得る、つまりオンしているアームの組み合わせから決定されるテストパターンは、図11に示すようなものとなる。すなわち、領域1ではテストパターン1、8、3および5、領域2ではテストパターン1、6、3および5、領域3ではテストパターン1、6、4および5、領域4ではテストパターン1、7、4および5、領域5ではテストパターン1、7、2および5、領域6ではテストパターン1、8、2および5が取り得るテストパターンとなる。
ここで、領域1〜6と取り得るテストパターンとには、次のような特徴的な関係が存在する。まず、1つ目の特徴的な関係は「電圧指令値の1周期で全てのテストパターンが出現すること」である。そして、2つ目の特徴的な関係は、「領域が切り替わると、直前の領域で取り得るテストパターンの集合から1つだけテストパターンが切り替わること」である。本実施形態の故障検出処理では、このような特徴的な関係をうまく利用し、故障検出の応答性を一層良好にすることを可能としている。以下、本実施形態の故障検出処理について、図12を参照して説明する。
図12に示すように、本実施形態の故障検出処理では、第1実施形態の故障検出処理に対し、ステップS10およびS20が追加されている点、ステップS700が省かれている点などが異なる。この場合、故障検出処理が開始されると、最初にステップS10が実行される。
ステップS10では、3相の電圧指令値の大小関係の変化に基づいて、領域が変化したか否か、つまり領域が遷移したか否かが判断される。ここで、領域が遷移した場合、ステップS10で「YES」となり、ステップS20が実行されたうえでステップS100に進む。一方、領域が遷移していない場合、ステップS10で「NO」となり、ステップS20が実行されることなくステップS100に進む。
ステップS20では、遷移後の領域、つまり現在の領域で取り得るテストパターンであり、且つ評価可能なテストパターンの故障判定が初期化される。具体的には、ステップS20では、遷移後の領域で取り得るテストパターンについて、TP判定結果テーブルの各値が「未評価」となるように初期化が行われる。ただし、「評価禁止」に設定されたテストパターンの値については初期化されず、そのままの値、つまり「故障」が維持される。
このようなステップS20は、領域が遷移した際に遷移後の領域においてオン駆動され得るアームの組み合わせが選択されたテストパターンについての判定履歴を初期化する処理に相当する。本実施形態では、ステップS10およびS20が追加されたことにより、領域が遷移する度、つまりモータ制御の1/6周期毎に、遷移後の領域で取り得るテストパターンの判定履歴が初期化されるようになっている。そのため、本実施形態では、最終故障判定処理の実行後に判定履歴を初期化する必要がなく、ステップS700が省かれている。したがって、本実施形態では、ステップS600の実行後、処理が終了となる。
上記したように、本実施形態の故障検出処理では、ステップS10およびS20が追加されたことにより、領域が遷移する度に遷移後の領域で取り得るテストパターンの判定履歴が初期されるようになっている。これにより、例えば領域6から領域1へ遷移した際、領域1で取り得るテストパターン1、8、3および5の判定履歴だけが初期化され、その他のテストパターン2、4、6および7の判定履歴は初期化されずに維持される。
その後、ステップS100〜S500の処理が実行されることにより、領域1で取り得るテストパターン1、8、3および5についての新たな判定結果(評価結果)が取得される。そして、ステップS600の最終故障判定処理では、領域1で取り得るテストパターン1、8、3および5の新たな判定結果と、その他のテストパターン2、4、6および7の1周期前に取得された古い判定結果とを用いて、各電流検出部についての最終的な故障判定が実行される。
このような本実施形態の故障検出処理によれば、3相交流電圧指令値の1/6周期毎に、各電流検出部についての最終的な故障判定が実行されることになる。そのため、本実施形態によれば、上記各実施形態に比べ、電流検出部が故障しているか否かが最終的に判断されるまでに要する時間が短縮されるため、故障検出の応答性を高めることができるという効果が得られる。
(第4実施形態)
以下、第4実施形態について図13〜図16を参照して説明する。
第4実施形態では、故障検出処理の内容が第1実施形態と異なっている。なお、モータ制御システム1の構成は、第1実施形態と共通する。
本実施形態のテストパターンは、3相のハーフブリッジ回路4u、4v、4wの2相について相毎に上下アームのいずれかが選択されたものであり、例えば図13に示すようなものとなっている。この場合、テストパターンNo.1は、U相上アームおよびV相下アームが選択されたパターンである。テストパターンNo.2は、U相上アームおよびW相下アームが選択されたパターンである。テストパターンNo.3は、V相上アームおよびW相下アームが選択されたパターンである。テストパターンNo.4は、U相下アームおよびV相上アームが選択されたパターンである。
テストパターンNo.5は、U相下アームおよびW相上アームが選択されたパターンである。テストパターンNo.6は、V相下アームおよびW相上アームが選択されたパターンである。テストパターンNo.7は、U相上アームおよびV相上アームが選択されたパターンである。テストパターンNo.8は、U相上アームおよびW相上アームが選択されたパターンである。
テストパターンNo.9は、V相上アームおよびW相上アームが選択されたパターンである。テストパターンNo.10は、U相下アームおよびV相下アームが選択されたパターンである。テストパターンNo.11は、U相下アームおよびW相下アームが選択されたパターンである。テストパターンNo.12は、V相下アームおよびW相下アームが選択されたパターンである。
このように、本実施形態における12のテストパターンNo.1〜No.12は、選択可能なアームの組み合わせが過不足なく含まれるように設定されたものとなっている。なお、以下の説明では、テストパターンNo.1〜No.12のことを、それぞれテストパターン1〜12とも称す。
図13には、各テストパターン1〜12と、テストパターン判定処理における判定対象とが対応付けられている。すなわち、テストパターン1を用いたテストパターン判定処理では、U相上アームおよびV相下アームに対応した電流検出部の故障判定(評価)が行われる。テストパターン2を用いたテストパターン判定処理では、U相上アームおよびW相下アームに対応した電流検出部の故障判定が行われる。テストパターン3を用いたテストパターン判定処理では、V相上アームおよびW相下アームに対応した電流検出部の故障判定が行われる。テストパターン4を用いたテストパターン判定処理では、U相下アームおよびV相上アームに対応した電流検出部の故障判定が行われる。
テストパターン5を用いたテストパターン判定処理では、U相下アームおよびW相上アームに対応した電流検出部の故障判定が行われる。テストパターン6を用いたテストパターン判定処理では、V相下アームおよびW相上アームに対応した電流検出部の故障判定が行われる。テストパターン7を用いたテストパターン判定処理では、U相上アームおよびV相上アームに対応した電流検出部の故障判定が行われる。テストパターン8を用いたテストパターン判定処理では、U相上アームおよびW相上アームに対応した電流検出部の故障判定が行われる。
テストパターン9を用いたテストパターン判定処理では、V相上アームおよびW相上アームに対応した電流検出部の故障判定が行われる。テストパターン10を用いたテストパターン判定処理では、U相下アームおよびV相下アームに対応した電流検出部の故障判定が行われる。テストパターン11を用いたテストパターン判定処理では、U相下アームおよびW相下アームに対応した電流検出部の故障判定が行われる。テストパターン12を用いたテストパターン判定処理では、V相下アームおよびW相下アームに対応した電流検出部の故障判定が行われる。
上述したようなテストパターン判定処理による判定結果は、例えば図14に示すようなテーブル(以下、TP判定結果テーブルとも呼ぶ)として記憶される。なお、図14に示すテーブルは、例えば制御回路17が備えるメモリ上に確保された記憶領域に記憶されている。図14に示すテーブルでは、テストパターン1〜12のそれぞれに対応する判定結果として、「正常」、「故障」または「未評価」が記憶される。なお、これらの各値は、第1実施形態のTP判定結果テーブルの各値と同様の内容を表している。
図14に示す例では、テストパターン1、2を用いて行われたテストパターン判定処理において故障判定が不成立となったこと、テストパターン3〜6を用いて行われたテストパターン判定処理において故障判定が成立したこと、および、テストパターン7〜12を用いたテストパターン判定処理が未実施であること、を示す内容となっている。
図15に示すように、ハーフブリッジ回路4u、4v、4wの各アームのオン駆動の組み合わせは8通りである。本実施形態では、それらの各組み合わせの1つに対して実施可能なテストパターンが3通りずつ存在することとなる。例えば、U相上アーム、V相下アームおよびW相下アームがオン駆動される場合、実施可能となる(取り得る)テストパターンはテストパターン1、2および12となる。
本実施形態のテストパターン判定処理では、判定演算として、テストパターン1〜12において選択された2つのアームがオンする期間における2つのアームに対応する電流検出部の検出値に基づいて他の1つのアームに流れる電流を推定し、2つのアームに流れる電流の検出値および1つのアームに流れる電流の推定値を用いてdq変換することによりd軸電流値およびq軸電流値を計算する。そして、本実施形態のテストパターン判定処理では、d軸電流値の変化量およびq軸電流値の各変化量と所定の判定閾値とを比較し、それらの比較結果に基づいて2つのアームに対応する電流検出部に故障が生じているか否かを判定するようになっている。
このような本実施形態のテストパターン判定処理の具体的な内容について、図16を参照して説明する。図16に示すように、ステップS441では、現在のテストパターンにおいて選択された2つのアームに対応する電流検出部の検出値、つまりステップS300で読み込まれた2つの電流検出値を用いて、他の1つのアームに流れる電流が推定される。
前述したように、本実施形態の構成では、各電流検出部などに故障が生じていなければ、3相電流の総和がゼロとなる構成になっている。したがって、他の1つのアームに流れる電流は、検出された2つの電流検出値の符号を反転するとともに、それらを加算した値となる。例えば、U相電流の検出値iUおよびV相電流の検出値iVからW相電流を推定する場合、W相電流の推定値iWは、下記(1)式により表される。
iW=−iU−iV …(1)
本実施形態では、上述したようにして他の1つのアームに流れる電流を推定するため、取得された3相電流の総和の絶対値は必ずゼロになる。したがって、本実施形態では、第1実施形態などと同様の手法、つまり3相電流の総和の絶対値と判定閾値とを比較する手法を採用することができない。そこで、本実施形態では、次のような故障判定手法が用いられる。
すなわち、ステップS442では、3相の電流値iu、iv、iwと電気角θとを用いてdq変換することによりd軸電流値idおよびq軸電流値iqが求められる。電気角θは、位置検出信号Spにモータ2の極対数を掛け算することにより求めることができる。d軸電流値idおよびq軸電流値iqは、下記(2)式により表される。
d軸電流値idおよびq軸電流値iqは、特に、トルク指令値(d軸電流指令値、q軸電流指令値)を表すトルク指令信号Stに大きな変化が無い状態が続いている場合、大きく変化することはない。なぜなら、駆動制御部28は、d軸電流値idおよびq軸電流値iqが、それぞれd軸電流指令値およびq軸電流指令値に一致するように、モータ2の駆動をフィードバック制御(ベクトル制御)しているからである。
このような点に着目し、ステップS443では、トルク指令信号Stが所定時間以上変化していないか否かが判断される。なお、所定時間は、例えばステップ応答時間などに設定することができる。また、トルク指令信号Stが変化しているか否かは、前回取得されたトルク指令信号Stが表すトルク指令値(前回値)と今回取得されたトルク指令信号Stが表すトルク指令値(今回値)との差から判断することができる。
ここで、トルク指令信号Stに変化が無い状態が所定時間以上続いている場合、ステップS443で「YES」となり、ステップS444〜S446の処理が行われる。一方、トルク指令信号Stに変化が無い状態が所定時間以上続いていない場合、ステップS444〜S446の処理が行われることなく、ステップS447に進む。
ステップS444では、d軸電流値idの変化量が所定の判定閾値Td未満であるか否かが判断されるとともに、q軸電流値iqの変化量が所定の判定閾値Tq未満であるか否かが判断される。なお、d軸電流値idおよびq軸電流値iqの各変化量は、それらの前回値と今回値との差の絶対値として求めることができる。
電流検出に関する構成における各種の誤差の影響により、電流検出部が正常である場合でも、上記変化量が完全にゼロにならないことも考えられる。そのため、本実施形態では、判定閾値Td、Tqは、このような誤差の影響により誤判定が生じないような値、例えばゼロよりも所定のマージン分だけ大きい値に設定されている。
ここで、d軸電流値idの変化量が判定閾値Td未満であり且つq軸電流値iqの変化量が判定閾値Tq未満である場合、ステップS444で「YES」となり、ステップS445に進む。ステップS445は、図7に示したステップS402と同様の処理であり、TP判定結果テーブルにおける現在のテストパターンの判定結果として「正常」が記憶される。
一方、d軸電流値idの変化量およびq軸電流値iqの変化量のうち、少なくとも一方が判定閾値Td、Tq以上である場合、ステップS444で「NO」となり、ステップS446に進む。ステップS446は、図7に示したステップS403と同様の処理であり、TP判定結果テーブルにおける現在のテストパターンの判定結果として「故障」が記憶される。
ステップS445またはS446の実行後は、ステップS447に進む。ステップS447では、今回のテストパターン判定処理にて取得されたトルク指令信号Stが表すトルク指令値と、今回のテストパターン判定処理にて求められたd軸電流値idおよびq軸電流値iqとが前回値として記憶される。ここで記憶された各前回値は、次回実行されるテストパターン判定処理において使用されることになる。
図示は省略するが、本実施形態の最終故障判定処理は、図8および図9に示した第1実施形態の最終故障判定処理に対し、テストパターンが変更されている点などを考慮した変更を加えた内容となっている。
以上説明した本実施形態によっても、第1実施形態と同様の効果が得られる。さらに、本実施形態の故障検出処理では、2相の電流の検出値を用いて電流検出部の故障判定が行われるため、1つの相の上下アームに対応した2つの電流検出部が故障した場合でも、残りの2相に対応した電流検出部を用いてシステムの制御が継続されるとともに、さらなる故障の検出を行うことができるため、システムの信頼性が一層向上する効果が得られる。
なお、図16に示したステップS443は、判定閾値Td、Tqの設定によっては、省略することもできる。なぜなら、d軸電流値idおよびq軸電流値iqの変化量は、通常の制御状態においては、極端に大きな値とはならないが、電流検出部に故障が生じるなどの異常が発生した異常状態においては、極端に大きな値となる可能性が高い。そこで、判定閾値Td、Tqとして、通常の制御状態における変化量の上限値に所定のマージンを加えた値を設定するとともに、ステップS443を省けば、トルク指令値(トルク指令信号St)に変化が無い期間に限らず、常に故障判定を行うことが可能となる。
なお、本実施形態のテストパターン判定処理では、d軸電流値idの変化量およびq軸電流値iqの変化量のうち少なくとも一方と所定の判定閾値とを比較し、その比較結果に基づいて2つのアームに対応する電流検出部に故障が生じているか否かを判定すればよい。具体的には、図16に示したステップS444では、d軸電流値idおよびq軸電流値iqのうち一方だけを用いた判定に変更してもよい。このようにすれば、d軸電流値idおよびq軸電流値iqの双方を用いた判定に比べ、判定の精度が若干低下するものの、制御回路17における演算負荷(処理負荷)が軽減されるという効果が得られる。
(第5実施形態)
以下、第5実施形態について図17および図18を参照して説明する。
第5実施形態では、テストパターン判定処理の内容が第1実施形態と異なっている。なお、モータ制御システム1の構成は、第1実施形態と共通する。
本実施形態のテストパターン判定処理では、同一のテストパターンに対して判定演算が複数回実行され、それら複数回の判定演算の結果の平均値、より具体的には移動平均に基づいて判定が行われるようになっている。このような本実施形態のテストパターン判定処理は、具体的には図17に示すような内容の処理となっている。
まず、ステップS451では、本テストパターン判定処理での判定対象となるテストパターン(以下、現在のテストパターンと呼ぶ)において選択された3つのアームに対応する電流検出部の検出値の和、つまり3相電流の総和の絶対値が計算される。ステップS452では、ステップS451で計算された値が、現在のテストパターンに割り付けられたキューに格納される。
上記キューの動作について図18を参照して説明する。本実施形態では、テストパターン1〜8毎に8段のシフトレジスタが容易されており、8個の値が格納されるようになっている。例えば、現在のテストパターンがテストパターン1である場合、テストパターン1に割り付けられたシフトレジスタを1つ右にシフトして最も古い値が削除され、空きができたレジスタ(図18における左端のキュー)にステップS451で計算された最新の値が格納されることになる。
ステップS453では、キューの全てのレジスタに値が格納されているか否かが判断される。このような判断は、例えばステップS452の処理の実行回数をカウントし、そのカウント値がシフトレジスタの数(=8)以上となったか否かに基づいて行うことができる。ここで、キューの全てのレジスタに値が格納されている場合、ステップS435で「YES」となり、ステップS454に進む。一方、キューの全てのレジスタのうち、少なくとも1つのレジスタに値が格納されていない場合、ステップS453で「NO」となり、そのまま処理が終了となる。
ステップS454では、現在のテストパターンに割り付けられたキュー内のデータ(値)の平均値が算出される。ステップS454の実行後はステップS455に進み、ステップS454で算出された平均値が、所定の判定閾値以下であるか否かが判断される。この場合、判定閾値は、第1実施形態における判定閾値と同様に設定することができる。
平均値が判定閾値以下である場合、ステップS455で「YES」となり、ステップS456に進む。ステップS456は、図7に示したステップS402と同様の処理であり、TP判定結果テーブルにおける現在のテストパターンの判定結果として「正常」が記憶される。
一方、平均値が判定閾値より大きい場合、ステップS455で「NO」となり、ステップS457に進む。ステップS457は、図7に示したステップS403と同様の処理であり、TP判定結果テーブルにおける現在のテストパターンの判定結果として「故障」が記憶される。ステップS456またはS457の実行後、テストパターン判定処理が終了となる。
以上説明した本実施形態によっても、第1実施形態と同様の効果が得られる。さらに、本実施形態のテストパターン判定処理では、3相電流の総和の絶対値を計算した後、直ちに判定閾値との比較判定を行うのではなく、移動平均(単純移動平均)を取り、その値と判定閾値とを比較することにより、故障判定を行うようになっている。このようにすれば、例えばノイズなどの影響により3相電流の総和の絶対値が突発的(一時的)に異常値となった場合に、誤って電流検出部が故障していると判定されることがなくなる。つまり、本実施形態によれば、電流検出部の故障判定について、誤判定の発生を低く抑えることができるという効果が得られる。
(第6実施形態)
以下、第6実施形態について図19〜図21を参照して説明する。
第6実施形態では、テストパターン判定処理の内容が第1実施形態と異なっている。なお、モータ制御システム1の構成は、第1実施形態と共通する。
図19に示すように、第1実施形態などで用いられているテストパターン1〜8には、3相のハーフブリッジ回路4u、4v、4wを構成する6つのアームの全てが含まれる特定の組み合わせ(ペア)が存在する。具体的には、テストパターン1および5、テストパターン2および6、テストパターン3および7、テストパターン4および8が、6つのアームの全てが含まれる組み合わせに該当する。以下、これらのテストパターンの組み合わせ(ペア)のことを、特定のテストパターンペアとも呼ぶ。
このような特定のテストパターンペアについて、双方の評価結果(判定結果)が「正常」である場合、6つのアームに対応する電流検出部の全てが正常であると言える。このような点に着目し、本実施形態の故障検出処理には、正常時における制御回路17などにおける処理負荷を軽減するための工夫が加えられている。
すなわち、本実施形態の故障検出処理には、テストパターン判定処理が実行された結果、特定のテストパターンペアについて故障判定が不成立となった場合、全ての電流検出部が正常であることを検出する処理が含まれている。以下、本実施形態の故障処理の具体的な内容について図20を参照して説明する。
図20に示すように、本実施形態の故障検出処理では、第1実施形態の故障検出処理に対し、ステップS460、S470およびS480が追加されている。ステップS460は、ステップS400の実行後に実行されるようになっている。ステップS460では、4つの特定のテストパターンペアのうち少なくとも1つについて評価が完了したか否かが判断される。
ここで、特定のテストパターンペアのいずれについても評価が完了していない場合、ステップS460で「NO」となり、そのまま処理が終了となる。一方、特定のテストパターンペアの少なくともいずれか1つについて評価が完了している場合、ステップS460で「YES」となり、ステップS470に進む。ステップS470では、評価が完了したテストパターンペアの全てが正常判定であるか否かが判断される。なお、このような判断は、TP判定結果テーブルを用いて行うことができる。
ここで、評価が完了したテストパターンペアの少なくとも1つに「正常」以外の値が記憶されている場合、ステップS470で「NO」となり、ステップS500に進む。一方、評価が完了したテストパターンペアの全てに「正常」が記憶されている場合、ステップS470で「YES」となり、ステップS480に進む。ステップS480は、図8に示したステップS602と同様の処理であり、故障情報テーブルにおいて「故障」と記憶されていない全てのアームに対し、「正常」が記憶される。ステップS480の実行後は、ステップS700に進む。
本実施形態では、故障検出処理について上述した変更が加えられたことにより、最終故障判定処理についても変更が加えられている。すなわち、図21に示すように、本実施形態の最終故障判定処理では、第1実施形態の最終故障判定処理に対し、ステップS601およびS602が省かれている。この場合、最終故障判定処理が開始されると、最初にステップS603が実行されることになる。
以上説明した本実施形態によっても、第1実施形態と同様の効果が得られる。さらに、本実施形態の故障検出処理では、6つのアームの全てが含まれる特定のテストパターンペアについて双方の評価結果が「正常」である場合、全ての電流検出部が正常であることを検出するようになっている。このような構成によれば、電流検出部に故障が生じていない正常には、使用する(テストパターン判定処理を実行する)テストパターンの数を最小で2つにまで減らすことが可能となり、正常時における制御回路17などの処理負荷を一層軽減することができるという効果が得られる。
(その他の実施形態)
なお、本発明は上記し且つ図面に記載した各実施形態に限定されるものではなく、その要旨を逸脱しない範囲で任意に変形、組み合わせ、あるいは拡張することができる。
上記各実施形態で示した数値などは例示であり、それに限定されるものではない。
本発明は、上記各実施形態において説明したモータ駆動システム1に用いられる電力変換器3に限らず、3相交流モータを駆動する電力変換器全般に適用することができる。
検出回路5〜10は、ハーフブリッジ回路4u、4v、4wの上アームおよび下アームに流れる電流を検出する構成であればよく、その具体的な構成は適宜変更可能である。
ハーフブリッジ回路4u、4v、4wを構成するスイッチング素子としては、パワーMOSFETであるパワー素子19〜24に限らずともよく、例えばIGBTなど、種々のパワー素子、つまりパワーデバイスを用いることができる。
本開示は、実施例に準拠して記述されたが、本開示は当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、さらには、それらに一要素のみ、それ以上、あるいはそれ以下、を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に入るものである。