(57)【特許請求の範囲】
【請求項１】
上アームと下アームにそれぞれスイッチング素子を有する上下一対のアームが複数組設けられ、ＰＷＭ（Pulse Width Modulation）信号による各スイッチング素子のＯＮ・ＯＦＦ動作に基づいてモータを駆動するインバータ回路と、
前記モータからインバータ回路を介して流れる電流を検出するためのシャント抵抗と、
前記シャント抵抗に流れる電流を検出する監視用の第１の電流検出回路と、
前記シャント抵抗に流れる電流を検出する制御用の第２の電流検出回路と、
前記第２の電流検出回路の出力から得られる電流値および前記モータに流す電流の目標値に基づいて、前記ＰＷＭ信号を生成する制御手段と、を備え、
前記制御手段は、前記インバータ回路が回生状態にある場合において、
前記第１の電流検出回路の出力に基づいて算出した監視用電流値に対し、前記シャント抵抗に流れるドリフト電流を補償するための第１のドリフト補償量、および、前記第２の電流検出回路の出力に基づいて算出した制御用電流値に対し、前記シャント抵抗に流れるドリフト電流を補償するための第２のドリフト補償量をそれぞれ演算し、
前記シャント抵抗にドリフト電流が流れたことを前記第１の電流検出回路により検出したときは、前記第１のドリフト補償量を補正し、
補正後の第１のドリフト補償量を用いて監視用電流値を算出するとともに、補正前の第２のドリフト補償量を用いて制御用電流値を算出し、
算出した監視用電流値と制御用電流値との差が閾値より大きい場合は、制御用電流値がゼロとなるように前記第２のドリフト補償量を補正することを特徴とするモータ駆動装置。
【請求項２】
請求項１に記載のモータ駆動装置において、
前記制御手段は、
前記インバータ回路が回生状態にある場合に、前記第１の電流検出回路の出力に基づいて、前記シャント抵抗に流れる電流の電流値がゼロか否かを判別し、
電流値がゼロでない場合は、前記第１のドリフト補償量を補正し、
電流値がゼロである場合は、前記第１のドリフト補償量を補正しないことを特徴とするモータ駆動装置。
【請求項３】
請求項１または請求項２に記載のモータ駆動装置において、
前記第１の電流検出回路による電流検出レンジが、前記第２の電流検出回路による電流検出レンジよりも広いことを特徴とするモータ駆動装置。
【請求項４】
請求項３に記載のモータ駆動装置において、
前記制御手段は、
前記インバータ回路が回生状態にある場合に、前記シャント抵抗に所定値以上の大電流が流れたことを、前記第１の電流検出回路の出力に基づいて検出したときは、前記スイッチング素子の少なくとも１つが短絡故障したと判定することを特徴とするモータ駆動装置。
【請求項５】
請求項１ないし請求項４のいずれかに記載のモータ駆動装置において、
前記シャント抵抗は単一の抵抗であり、このシャント抵抗の両端に生じる電圧が、前記第１の電流検出回路および前記第２の電流検出回路に共通に与えられることを特徴とするモータ駆動装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＷＭ（Pulse Width  Modulation：パルス幅変調）制御方式を用いたモータ駆動装置に関し、特に、電流検出用のシャント抵抗に流れるドリフト電流を補償するための技術に関する。
【背景技術】
【０００２】
車両の電動パワーステアリング装置においては、ハンドルの操舵トルクに応じた操舵補助力をステアリング機構に与えるために、ブラシレスモータなどの電動式モータが設けられる。このモータを駆動する装置として、ＰＷＭ制御方式によるモータ駆動装置が知られている。
【０００３】
一般に、ＰＷＭ制御方式のモータ駆動装置は、インバータ回路と、このインバータ回路を制御する制御部とを備えている。インバータ回路には、上アームと下アームにそれぞれスイッチング素子を有する上下一対のアームが複数組（３相モータの場合は３組）設けられている。また、制御部は、トルクセンサで検出された操舵トルクに応じてモータに流すべき電流の目標値を算出し、この目標値とモータに実際に流れる電流の値との偏差に基づいて、所定のデューティを持つＰＷＭ信号を生成する。そして、このＰＷＭ信号により、インバータ回路の各スイッチング素子のＯＮ・ＯＦＦ動作を制御し、これに応じてインバータ回路から出力される電圧によりモータを駆動する。
【０００４】
上記のようなモータ駆動装置において、モータに流れる電流は、シャント抵抗と呼ばれる電流検出用の抵抗を用いて検出される。ところで、インバータ回路における上段のスイッチング素子が全てＯＦＦとなる期間、または下段のスイッチング素子が全てＯＦＦとなる期間では、インバータ回路は回生状態にあって、理論上、シャント抵抗には電流が流れない。しかしながら、実際には温度やノイズ等の影響により、上記の期間でもシャント抵抗に電流が流れる場合がある。この電流をドリフト電流という。ドリフト電流は微少な電流ではあるが、本来検出電流値がゼロとなるべき期間で電流が流れることから、操舵補助力に影響し、運転者に操舵フィーリングの点で違和感を与えることになる。
【０００５】
そこで、ドリフト電流に基づく検出電流値を補償して、ドリフト電流が操舵補助力に影響しないようにする必要がある。下記の特許文献１には、ドリフト電流の補償に関する技術が記載されている。本文献では、モータに流れる電流をシャント抵抗により監視し、この抵抗を流れる瞬時電流が実質的にゼロとなるタイミングで、シャント抵抗の出力を測定し、実測定出力値と理想出力値との間のドリフト（オフセット）を補償するための信号を生成するようにしている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００１−９５２７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１の装置において、シャント抵抗に流れる電流を検出する回路が１つしか設けられない場合は、当該検出回路が故障すると、電流検出ができなくなってモータ制御が不可能となる。そこで、電流検出回路を２つ設けて２重化することにより、一方の電流検出回路が故障しても、他方の電流検出回路でモータ電流を検出可能とし、信頼性を向上させることが考えられる。
【０００８】
電流検出回路を２重化した場合、シャント抵抗にドリフト電流が流れたときは、双方の電流検出回路による電流検出値は同じ値となるべきであるが、実際には各電流検出回路の特性のばらつきにより、電流検出値にずれが生じる。また、シャント抵抗に流れるドリフト電流は温度により変動するので、時間と共に温度が上昇すると、各電流検出回路間で電流検出値のずれが増大し、モータ制御に支障が生じる。
【０００９】
本発明の課題とするところは、電流検出回路を２重化した場合でも適正な制御を行うことができるモータ駆動装置を提供することにある。
【課題を解決するための手段】
【００１０】
本発明に係るモータ駆動装置は、上アームと下アームにそれぞれスイッチング素子を有する上下一対のアームが複数組設けられ、ＰＷＭ（Pulse Width Modulation）信号による各スイッチング素子のＯＮ・ＯＦＦ動作に基づいてモータを駆動するインバータ回路と、モータからインバータ回路を介して流れる電流を検出するためのシャント抵抗と、シャント抵抗に流れる電流を検出する監視用の第１の電流検出回路と、シャント抵抗に流れる電流を検出する制御用の第２の電流検出回路と、第２の電流検出回路の出力から得られる電流値およびモータに流す電流の目標値に基づいて、ＰＷＭ信号を生成する制御手段とを備える。
【００１１】
制御手段は、インバータ回路が回生状態にある場合において、第１の電流検出回路の出力に基づいて算出した監視用電流値に対し、シャント抵抗に流れるドリフト電流を補償するための第１のドリフト補償量、および、第２の電流検出回路の出力に基づいて算出した制御用電流値に対し、シャント抵抗に流れるドリフト電流を補償するための第２のドリフト補償量をそれぞれ演算する。また、制御手段は、シャント抵抗にドリフト電流が流れたことを第１の電流検出回路により検出したときは、第１のドリフト補償量を補正し、補正後の第１のドリフト補償量を用いて監視用電流値を算出するとともに、補正前の第２のドリフト補償量を用いて制御用電流値を算出する。そして、算出した監視用電流値と制御用電流値との差が閾値より大きい場合は、制御用電流値がゼロとなるように第２のドリフト補償量を補正する。なお、ここでいうゼロとは、数値上のゼロだけでなく、誤差の範囲も含めた実質的なゼロを含む概念である（以下同様）。
【００１２】
本発明では、２つの電流検出回路の一方を監視用、他方を制御用として、制御用電流値を監視用電流値と比較し、制御用電流値が監視用電流値から所定量ずれた場合に、制御用電流値がゼロとなるように補償を行なう。その結果、回生時においてシャント抵抗にドリフト電流が流れても、制御用電流値がゼロに補償されるので、モータの挙動は影響を受けない。このため、例えば電動パワーステアリング装置において、ドリフト電流が操舵補助力に影響を与えることがないので、安定した操舵フィーリングが得られる。また、温度上昇によりドリフト電流が増大しても、制御用電流値と監視用電流値とのずれが大きくなると、制御用電流値に対する補償が実行されるので、補償された制御用電流値に基づいて適正な制御を行なうことができる。しかも、本発明では、各電流値の差が閾値より大きくなった場合にのみ、制御用電流値の補償が行なわれるので、ＰＷＭ信号生成の基礎となる制御用電流値が必要以上に変動することがない。このため、より安定した操舵フィーリングを維持することができる。
【００１３】
本発明の好ましい実施形態によれば、制御手段は、インバータ回路が回生状態にあるときに、第１の電流検出回路の出力に基づいて、シャント抵抗に流れる電流の電流値がゼロか否かを判別する。そして、電流値がゼロでない場合は、シャント抵抗にドリフト電流が流れているので、第１のドリフト補償量を補正する。一方、電流値がゼロである場合は、シャント抵抗にドリフト電流が流れていないため、第１のドリフト補償量を補正しない。
【００１４】
また、本発明の好ましい実施形態によれば、第１の電流検出回路による電流検出レンジが、第２の電流検出回路による電流検出レンジよりも広くなっている。
【００１５】
このようにすると、第１の電流検出回路が検出する電流の範囲を広く取れるので、第１の電流検出回路は、インバータ回路が回生状態にあるときに、監視用電流だけでなく、シャント抵抗に流れる所定値以上の大電流を検出することができる。これによって、スイッチング素子の少なくとも１つが短絡故障したと判定することが可能となる。
【００１６】
さらに、本発明の好ましい実施形態によれば、シャント抵抗は単一の抵抗であり、このシャント抵抗の両端に生じる電圧が、第１の電流検出回路および第２の電流検出回路に共通に与えられる。これにより、最小限のシャント抵抗を用いて電流検出を行なうことができる。
【発明の効果】
【００１７】
本発明によれば、電流検出回路を２重化した場合でも適正な制御を行うことができるモータ駆動装置を提供することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態に係るモータ駆動装置を示した図である。
【図２】各相のＰＷＭ信号を示した図である。
【図３】電流検出のタイミングを説明する図である。
【図４】通常電流検出時の電流経路を示した図である。
【図５】通常電流検出時の電流経路を示した図である。
【図６】上段回生時の電流経路を示した図である。
【図７】下段回生時の電流経路を示した図である。
【図８】ドリフト補償の手順を示したフローチャートである。
【図９】ドリフト補償量補正の手順を示したフローチャートである。
【図１０】電流検出レンジを説明する図である。
【図１１】下段回生時における短絡故障を説明する図である。
【図１２】短絡故障時のＰＷＭ信号とシャント電圧を示した図である。
【図１３】上段回生時における短絡故障を説明する図である。
【図１４】本発明の他の実施形態に係るモータ駆動装置を示した図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態につき、図面を参照しながら説明する。
【００２０】
図１は、単一のシャント抵抗を用いたＰＷＭ制御方式のモータ駆動装置の一例を示している。電源回路１は、整流回路や平滑回路等から構成され、出力端にコンデンサＣが接続されている。インバータ回路２は、上下一対のアームがＵ相、Ｖ相、Ｗ相に対応して３組設けられた３相ブリッジから構成されている。Ｕ相の上アームＡ１はスイッチング素子Ｑ１を有し、Ｕ相の下アームＡ２はスイッチング素子Ｑ２を有している。Ｖ相の上アームＡ３はスイッチング素子Ｑ３を有し、Ｖ相の下アームＡ４はスイッチング素子Ｑ４を有している。Ｗ相の上アームＡ５はスイッチング素子Ｑ５を有し、Ｗ相の下アームＡ６はスイッチング素子Ｑ６を有している。これらのスイッチング素子Ｑ１〜Ｑ６は、ＦＥＴ（Field Effect Transistor：電界効果トランジスタ）からなる。
【００２１】
モータＭは、例えば車両の電動パワーステアリング装置に用いられる３相ブラシレスモータである。モータＭに流れる電流を検出するためのシャント抵抗Ｒは、電源回路１とインバータ回路２との間に接続されている。シャント抵抗Ｒは単一の抵抗からなり、シャント抵抗Ｒの両端の電圧は、監視用電流検出回路５（第１の電流検出回路）と制御用電流検出回路６（第２の電流検出回路）に共通に与えられる。電流検出回路５、６は、シャント抵抗Ｒの両端の電圧を増幅し、演算制御部４へ出力する。演算制御部４は、ＣＰＵやメモリ等からなり、本発明における制御手段を構成する。この演算制御部４は、制御用電流検出回路６の出力から得られる制御用電流値と、操舵トルクを検出するトルクセンサ（図示省略）から与えられる検出トルク値から算出した目標電流値（モータＭに流す電流の目標値）との偏差に基づいて、各相のＰＷＭ信号のデューティを算出する。そして、このデューティと鋸歯状のキャリア信号とに基づいて生成した各相のＰＷＭ信号を、ドライバＩＣ３へ供給する。また、演算制御部４は、監視用電流検出回路５の出力から得られる監視用電流値と、制御用電流値との比較結果に基づいて、制御用電流値に対しドリフト補償を行う（詳細は後述）。ドライバＩＣ３は、スイッチング素子Ｑ１〜Ｑ６を個別にＯＮ・ＯＦＦさせるための各相のＰＷＭ信号を、各スイッチング素子Ｑ１〜Ｑ６のゲートへ出力する。このＰＷＭ信号に基づくスイッチング素子Ｑ１〜Ｑ６のＯＮ・ＯＦＦ動作により、インバータ回路２からモータＭへ３相電圧が供給され、モータＭが回転する。
【００２２】
図２は、ドライバＩＣ３からインバータ回路２へ与えられるＰＷＭ信号を示している。ここでは、Ｕ相をデューティが最も大きい最大相、Ｖ相をデューティが中間の中間相、Ｗ相をデューティが最も小さい最小相としている。Ｕ相の上段ＰＷＭ信号は、上アームＡ１のスイッチング素子Ｑ１に印加されるＰＷＭ信号であり、下段ＰＷＭ信号は、下アームＡ２のスイッチング素子Ｑ２に印加されるＰＷＭ信号である。Ｖ相の上段ＰＷＭ信号は、上アームＡ３のスイッチング素子Ｑ３に印加されるＰＷＭ信号であり、下段ＰＷＭ信号は、下アームＡ４のスイッチング素子Ｑ４に印加されるＰＷＭ信号である。Ｗ相の上段ＰＷＭ信号は、上アームＡ５のスイッチング素子Ｑ５に印加されるＰＷＭ信号であり、下段ＰＷＭ信号は、下アームＡ６のスイッチング素子Ｑ６に印加されるＰＷＭ信号である。なお、図中のτは、各アームにおける上下のスイッチング素子が同時にＯＮ状態となってインバータ回路２に短絡が生じるのを回避するためのデッドタイムである。
【００２３】
次に、モータＭに流れる電流を検出するタイミングにつき、図３を参照しながら説明する。図３に示されるように、ＰＷＭ信号の１周期においては、力行区間と回生区間（上段回生区間および下段回生区間）とが存在する。力行区間においては、デッドタイム区間を除いて、インバータ回路２の上アームのスイッチング素子（以下、「上段スイッチング素子」という）Ｑ１、Ｑ３、Ｑ５の少なくとも１つがＯＮ状態となり、下アームのスイッチング素子（以下、「下段スイッチング素子」という）Ｑ２、Ｑ４、Ｑ６の少なくとも１つがＯＮ状態となることにより、シャント抵抗Ｒにモータ電流が流れる。このため、シャント抵抗Ｒの両端には、図で示したシャント電圧が現れる。
【００２４】
一方、上段スイッチング素子Ｑ１、Ｑ３、Ｑ５がすべてＯＮ状態で、下段スイッチング素子Ｑ２、Ｑ４、Ｑ６がすべてＯＦＦ状態となる上段回生区間では、シャント抵抗Ｒにモータ電流が流れないので、シャント抵抗Ｒの両端には、シャント電圧が現れない。また、上段スイッチング素子Ｑ１、Ｑ３、Ｑ５がすべてＯＦＦ状態で、下段スイッチング素子Ｑ２、Ｑ４、Ｑ６がすべてＯＮ状態となる下段回生区間でも、シャント抵抗Ｒにモータ電流が流れないので、シャント抵抗Ｒの両端には、シャント電圧が現れない。
【００２５】
Ｔ１〜Ｔ４は、シャント抵抗Ｒに流れる電流（すなわちモータＭの電流）を検出するタイミングを示している。なお、ここでいうタイミングとは、電流検出が可能な時間幅をもった区間の概念である。タイミングＴ１、Ｔ２は力行区間における検出タイミングであって、これらはシャント抵抗Ｒにモータ電流が流れている状態での通常の電流検出タイミングである。タイミングＴ３、Ｔ４はそれぞれ上段回生区間、下段回生区間における検出タイミングであって、これらは理論上シャント抵抗Ｒに電流が流れていない状態での電流検出タイミングである。
【００２６】
図３のタイミングＴ１では、上段スイッチング素子Ｑ１、Ｑ３、Ｑ５がそれぞれＯＮ、ＯＦＦ、ＯＦＦで、下段スイッチング素子Ｑ２、Ｑ４、Ｑ６がそれぞれＯＦＦ、ＯＮ、ＯＮとなり、インバータ回路２には、図４に破線矢印で示した経路で電流が流れる。このとき、シャント抵抗Ｒに流れる電流はＵ相電流であり、タイミングＴ１でモータＭのＵ相電流が検出される。
【００２７】
図３のタイミングＴ２では、上段スイッチング素子Ｑ１、Ｑ３、Ｑ５がそれぞれＯＮ、ＯＮ、ＯＦＦで、下段スイッチング素子Ｑ２、Ｑ４、Ｑ６がそれぞれＯＦＦ、ＯＦＦ、ＯＮとなり、インバータ回路２には、図５に破線矢印で示した経路で電流が流れる。このとき、シャント抵抗Ｒに流れる電流はＷ相電流であり、タイミングＴ２でモータＭのＷ相電流が検出される。
【００２８】
Ｖ相電流については、Ｕ相電流とＷ相電流とから、計算により求められる。すなわち、Ｕ相電流値をＩｕ、Ｖ相電流値をＩｖ、Ｗ相電流値をＩｗとしたとき、これらの間には、キルヒホッフの法則に従い次の関係が成立する。
Ｉｕ＋Ｉｖ＋Ｉｗ＝０
したがって、Ｖ相電流値Ｉｖは、
Ｉｖ＝−（Ｉｕ＋Ｉｗ）
として算出することができる。
【００２９】
図３のタイミングＴ３では、上段スイッチング素子Ｑ１、Ｑ３、Ｑ５はすべてＯＮ、下段スイッチング素子Ｑ２、Ｑ４、Ｑ６はすべてＯＦＦとなり、インバータ回路２には、図６に破線矢印で示した経路で電流が流れる。このときの電流は、モータＭの巻線Ｌｕ、Ｌｖ、Ｌｗに蓄積された電気エネルギーの放出による回生電流であり、上段スイッチング素子Ｑ１、Ｑ３、Ｑ５を介して回流する。したがって、タイミングＴ３では理論上、シャント抵抗Ｒに電流は流れないはずである。しかしながら、先述のとおり、温度やノイズ等の影響によりシャント抵抗Ｒにドリフト電流が流れることがある。この場合、シャント抵抗Ｒの両端に電圧が発生するので、この電圧に基づいてドリフト電流が検出される。
【００３０】
図３のタイミングＴ４では、上段スイッチング素子Ｑ１、Ｑ３、Ｑ５はすべてＯＦＦ、下段スイッチング素子Ｑ２、Ｑ４、Ｑ６はすべてＯＮとなり、インバータ回路２には、図７に破線矢印で示した経路で電流が流れる。このときの電流は、モータＭの巻線Ｌｕ、Ｌｖ、Ｌｗに蓄積された電気エネルギーの放出による回生電流であり、下段スイッチング素子Ｑ２、Ｑ４、Ｑ６を介して回流する。したがって、タイミングＴ４でも理論上、シャント抵抗Ｒに電流は流れないはずであるが、前記と同様の理由でシャント抵抗Ｒにドリフト電流が流れることがある。この場合も、シャント抵抗Ｒの両端に電圧が発生するので、この電圧に基づいてドリフト電流が検出される。
【００３１】
次に、監視用電流検出回路５と制御用電流検出回路６の各出力に基づいて演算制御部４が行なうドリフト補償について説明する。
【００３２】
ドリフト補償は、インバータ回路２が回生状態にあるとき、すなわち理論上シャント抵抗Ｒに電流が流れない期間において、シャント抵抗Ｒに流れるドリフト電流により操舵補助力が影響を受けるのを回避するために行なう検出電流値の補正処理である。このドリフト補償を実行するにあたり、本実施形態では、監視用電流検出回路５の出力に基づき算出される監視用電流値に対してドリフト補償を行なう第１のドリフト補償量と、制御用電流検出回路６の出力に基づき算出される制御用電流値に対してドリフト補償を行なう第２のドリフト補償量とを用いる。
【００３３】
回生区間（図３のタイミングＴ３、Ｔ４）においては、監視用電流検出回路５によりシャント抵抗Ｒに流れる電流を監視する。そして、シャント抵抗Ｒにドリフト電流が流れたことが検出されると、まず、第１のドリフト補償量を補正値により補正し、補正したドリフト補償量を用いて監視用電流値を算出する。次に、補正前の第２のドリフト補償量を用いて制御用電流値を算出する。このときの監視用電流値は、補正後の補償量を用いて算出された目標値であり、制御用電流値は、補正前の補償量を用いて算出された現状値である。そこで、算出した監視用電流値と制御用電流値とを比較する。そして、比較の結果、両者の差（制御用電流値−監視用電流値）が閾値より大きい場合は、制御用電流値が監視用電流値から一定限度を超えてずれていると判断して、第２のドリフト補償量を補正する。この補正された第２のドリフト補償量により、制御用電流値はゼロに補償される。
【００３４】
一方、力行区間（図３のタイミングＴ１、Ｔ２）においては、監視用電流検出回路５の出力は無視され、制御用電流検出回路６の出力と、補正後の第２のドリフト補償量とに基づいて制御用電流値を演算し、この制御用電流値と目標電流値とを用いて、従来の方法により各相のＰＷＭ信号のデューティを算出する。
【００３５】
次に、図８のフローチャートを参照して、ドリフト補償の手順をさらに詳細に説明する。図８における各ステップは、演算制御部４を構成するＣＰＵにより実行される。電流検出が開始されると、最初にステップＳ１において、ドリフト補償量α、βの初期値が設定される。ここでは、αを第１のドリフト補償量とし、βを第２のドリフト補償量とする。α、βの初期値は、例えばゼロに設定される。
【００３６】
続いて、ステップＳ２において、電流検出区間が回生区間か力行区間かを判別する。この判別は、スイッチング素子Ｑ１〜Ｑ６のＯＮ・ＯＦＦパターンに基づいて行なう。
【００３７】
ステップＳ２での判別結果が力行区間であれば、ステップＳ８に移って、モータＭ（３相ブラシレスモータ）に対する各相ごとの制御用電流値を算出する。具体的には、まず、図３のタイミングＴ１において、制御用電流検出回路６が、シャント抵抗Ｒの両端の電圧を検出する。このとき検出される電圧は、Ｕ相電流に対応する電圧である。そして、この検出電圧に対する電流ゲインと、ドリフト補償量βとに基づき、Ｕ相の制御用電流値を、次式により求める。
制御用電流値＝（検出電圧×電流ゲイン）＋ドリフト補償量β
【００３８】
次に、図３のタイミングＴ２において、制御用電流検出回路６は再び、シャント抵抗Ｒの両端の電圧を検出する。このとき検出される電圧は、Ｗ相電流に対応する電圧である。そして、この検出電圧に基づき、上記の式により、Ｗ相の制御用電流値を同様に求める。また、Ｖ相の制御用電流値については、前述したキルヒホッフの法則に基づき、Ｕ相の制御用電流値とＷ相の制御用電流値とから、計算により求める。
【００３９】
以上のようにして、ステップＳ８で、Ｕ相・Ｖ相・Ｗ相のそれぞれの制御用電流値が算出されると、続いてステップＳ９へ進む。ステップＳ９では、各相ごとに、ステップＳ８で算出した制御用電流値と、検出トルク値から求めた目標電流値との偏差を演算する。
【００４０】
次に、ステップＳ１０において、ステップＳ９で算出された偏差に基づいて、各相ごとにＰＷＭ信号のデューティを演算し、Ｕ相・Ｖ相・Ｗ相のそれぞれのＰＷＭ信号を生成する。
【００４１】
ステップＳ９、Ｓ１０については、モータに対する通常のフィードバック制御の手法としてよく知られているので、詳細な説明を省略する。
【００４２】
一方、ステップＳ２での判別結果が回生区間であれば、ステップＳ３に移って、監視用電流値に対するドリフト補償量α（第１のドリフト補償量）を補正する。
【００４３】
図９は、ステップＳ３の具体的内容を示すフローチャートである。まず、ステップＳ１１において、ドリフト電流を検出するために、監視用電流検出回路５の出力から得られる検出電流値を０〔Ａ〕と比較する。その結果、検出電流値＝０〔Ａ〕であれば、ドリフト電流が流れておらず補正は不要と判断し、ドリフト補償量αを補正することなく処理を終了する。また、検出電流値≠０〔Ａ〕の場合は、ドリフト電流が流れており補正が必要と判断する。そして、検出電流値＜０〔Ａ〕であれば、ステップＳ１２において、現在のドリフト補償量αに補正値を加算し、加算結果を新たなドリフト補償量αとする。また、検出電流値＞０〔Ａ〕であれば、ステップＳ１３において、現在のドリフト補償量αから補正値を減算し、減算結果を新たなドリフト補償量αとする。ここで、ステップＳ１２、Ｓ１３における補正値は、あらかじめ定められた一定値である。ステップＳ１２、Ｓ１３の実行により、ドリフト電流が流れた場合にドリフト補償量αが更新される。なお、ステップＳ１２とステップＳ１３とでは、シャント抵抗Ｒに流れる電流の方向が逆となる。
【００４４】
ステップＳ３の処理が終わると、ステップＳ４に進み、補正されたドリフト補償量αを用いて、監視用電流値を演算する。具体的には、まず、図３のタイミングＴ３において、監視用電流検出回路５が、シャント抵抗Ｒの両端の電圧を検出する。このとき、制御用電流検出回路６も、シャント抵抗Ｒの両端の電圧を検出する。そして、監視用電流検出回路５の出力である検出電圧と、この検出電圧に対する電流ゲインと、ドリフト補償量αとに基づき、監視用電流値を次式により求める。
監視用電流値＝（検出電圧×電流ゲイン）＋ドリフト補償量α
上式において、（検出電圧×電流ゲイン）はステップＳ１１における検出電流値であり、ドリフト補償量αはステップＳ１２、Ｓ１３で演算された値である。
【００４５】
ここで、インバータ回路２は回生状態にあるので、シャント抵抗Ｒに各相のモータ電流は流れない。したがって、上記の監視用電流値は、特定の相の電流値を示しているのではなく、回生中に監視用電流検出回路５で検出される電流により決まる値を示している。
【００４６】
なお、上記の例では、タイミングＴ３において、監視用電流検出回路５および制御用電流検出回路６がそれぞれ電圧を検出したが、タイミングＴ４において、監視用電流検出回路５および制御用電流検出回路６がそれぞれ電圧を検出するようにしてもよい。
【００４７】
続いて、ステップＳ５に進んで、制御用電流値を演算する。ステップＳ４において、すでに制御用電流検出回路６が電圧を検出しているので、制御用電流値は、制御用電流検出回路６の出力である検出電圧と、この検出電圧に対する電流ゲインと、ドリフト補償量βとに基づき、
制御用電流値＝（検出電圧×電流ゲイン）＋ドリフト補償量β
により求められる。なお、ここでのドリフト補償量βは、後述するステップＳ７で補正される前の補償量（ステップＳ５の初回実行時は、ステップＳ１で設定された初期値）である。
【００４８】
ここでも、インバータ回路２は回生状態にあるので、上記の制御用電流値は、特定の相の電流値ではなく、回生中に制御用電流検出回路６で検出される電流により決まる値を示している。
【００４９】
次に、ステップＳ６において、ステップＳ４で算出した監視用電流値と、ステップＳ５で算出した制御用電流値とを比較し、両者の差（制御用電流値−監視用電流値）が所定の閾値より大きいか否かを判定する。判定の結果、上記差が閾値以下であれば（ステップＳ６：ＮＯ）、制御用電流値が監視用電流値からそれほどずれていないので、制御用電流値の補正は不要と判断して、ステップＳ７を実行せずにステップＳ２へ戻る。一方、上記差が閾値より大きければ（ステップＳ６：ＹＥＳ）、制御用電流値が監視用電流値から一定量を超えてずれているので、制御用電流値の補正が必要と判断して、ステップＳ７へ進む。
【００５０】
ステップＳ７では、制御用電流値に対するドリフト補償量βを補正する。この補正は、図９と同様の手順に従って行なわれる。すなわち、ステップＳ１１において、制御用電流検出回路６の出力から得られる検出電流値を０〔Ａ〕と比較し、検出電流値＜０〔Ａ〕であれば、ステップＳ１２において、現在のドリフト補償量βに補正値を加算し、加算結果を新たなドリフト補償量βとする。また、検出電流値＞０〔Ａ〕であれば、ステップＳ１３において、現在のドリフト補償量βから補正値を減算し、減算結果を新たなドリフト補償量βとする。この場合も、ステップＳ１２、Ｓ１３における補正値は、あらかじめ定められた一定値である。ステップＳ１２、Ｓ１３の実行により、ドリフト補償量βが更新される。
【００５１】
ステップＳ７の実行後は、ステップＳ２へ戻り、ステップＳ２〜Ｓ１０の処理が反復される。この過程で、ステップＳ３においてドリフト補償量αが再び更新される結果、ステップＳ４で新たな監視用電流値が算出される。そして、この新たな監視用電流値と、ステップＳ５において前回のステップＳ７のドリフト補償量βを用いて算出した制御用電流値とを、ステップＳ６で比較し、それらの差が閾値以上であれば、ステップＳ７でドリフト補償量βを更新する。このようにして、ステップＳ２〜Ｓ１０の反復によりドリフト補償量α、βを一定量ずつ更新してゆくことで、制御用電流値の監視用電流値からのずれが小さくなってゆき、やがて制御用電流値はゼロに至る。本実施形態においては、上記のようにドリフト補償量α、βを段階的に補正し、最終的に制御用電流値がゼロとなるようにしているので、ドリフト補償量の急激な変化によって制御用電流値が大きく変動することが回避される。その結果、モータ電流の急変が抑制され、安定した操舵フィーリングが維持される。
【００５２】
このように、本実施形態においては、回生区間にシャント抵抗Ｒを流れるドリフト電流を、監視用電流検出回路５で監視し（ステップＳ１１）、ドリフト電流を検出した場合は、一定量だけドリフト補償量αを補正し（ステップＳ１２、Ｓ１３）、監視用電流値を更新する（ステップＳ４）。そして、この監視用電流値と、制御用電流検出回路６の出力から得られる制御用電流値（ステップＳ５）とを比較し（ステップＳ６）、その差が閾値より大きい場合に、制御用電流値に対するドリフト補償量βを補正する（ステップＳ７）。この処理を繰り返すことにより、回生時にシャント抵抗Ｒにドリフト電流が流れても、制御用電流値が最終的にゼロに補償されるので、ドリフト電流が操舵補助力に影響を与えることがなく、安定した操舵フィーリングが得られる。
【００５３】
また、温度上昇によりドリフト電流が増大しても、制御用電流値と監視用電流値とのずれが大きくなると、制御用電流値に対する補償が実行されるので、補償された制御用電流値に基づいて適正な制御を行なうことができる。さらに、制御用電流値の補償は、制御用電流値と監視用電流値との差が閾値よりも大きくなった場合にのみ行なわれ、両者の差が閾値以下の場合は行なわれないので、ＰＷＭ信号生成の基礎となる制御用電流値が必要以上に変動することがない。このため、より安定した操舵フィーリングを維持することができる。
【００５４】
また、本実施形態においては、シャント抵抗Ｒは単一の抵抗であり、このシャント抵抗Ｒの両端の電圧が監視用電流検出回路５および制御用電流検出回路６に共通に与えられる。これにより、最小限のシャント抵抗を用いて電流検出を行なうことができる。
【００５５】
さらに、本実施形態においては、監視用電流検出回路５と制御用電流検出回路６とを設けて電流検出回路を２重化しているので、一方の電流検出回路が故障した場合でも、他方の電流検出回路を用いてシャント抵抗Ｒに流れる電流を検出することが可能である。したがって、最小限、単一の電流検出回路を用いた場合の電流検出機能を担保することができる。
【００５６】
ところで、本実施形態においては、監視用電流検出回路５の電流検出レンジと、制御用電流検出回路６の電流検出レンジとを異ならせている。図１０は、シャント抵抗Ｒに流れる電流と、電流検出回路５、６から出力される検出電圧との関係を表している。Ｘは監視用電流検出回路５の特性、Ｙは制御用電流検出回路６の特性である。これからわかるように、監視用電流検出回路５の電流検出レンジは、制御用電流検出回路６の電流検出レンジよりも広くなっている。
【００５７】
監視用電流検出回路５については、後述するように、短絡故障時にシャント抵抗Ｒに流れる大電流も検出する必要があることから、ゲインを低くして電流検出レンジを広く確保している。一方、制御用電流検出回路６については、電流検出の感度を高くして、フィードバック制御を精度良く行なう必要があることから、ゲインを高くして電流検出レンジを狭くしている。
【００５８】
図１１は、下段回生時における短絡故障を説明する図である。ここでは、上段のスイッチング素子Ｑ１が短絡故障した場合を例に挙げている。短絡故障には、素子自体の異常によりスイッチング素子がＯＮ状態のままとなる故障のほか、素子自体は正常であっても、ＰＷＭ信号を与えるドライバＩＣ３や演算制御部４が異常でＯＮ信号を出力し続けることにより、スイッチング素子がＯＮ状態のままとなる故障がある。下段回生時にスイッチング素子Ｑ１が短絡故障すると、図１１のように、スイッチング素子Ｑ１、Ｑ２が共にＯＮとなり、これらを介して、本来流れるはずのない電流が、短絡電流として破線矢印の経路でシャント抵抗Ｒに流れる。
【００５９】
図１２は、このときのＰＷＭ信号とシャント電圧を示した図である。ここでは、一点鎖線Ａで示すように、下段回生区間において最大相（Ｕ相）の上段ＰＷＭ信号がＯＮのままとなって、スイッチング素子Ｑ１が短絡故障している。この結果、一点鎖線Ｂで示すように、シャント抵抗Ｒの両端には、短絡電流に基づく大きな電圧が現れる。したがって、この電圧を監視用電流検出回路５により検出することで、スイッチング素子Ｑ１の短絡故障を検出することができる（スイッチング素子Ｑ３、Ｑ５が短絡故障した場合も同様）。この場合、演算制御部４は、シャント抵抗Ｒに流れる電流が所定値以上であれば、スイッチング素子Ｑ１、Ｑ３、Ｑ５の少なくとも１つが短絡故障したと判定する。
【００６０】
以上は、下段回生時における短絡故障の場合であったが、上段回生時における短絡故障の場合も同様のことが言える。図１３は、上段回生時における短絡故障を説明する図である。ここでは、下段のスイッチング素子Ｑ６が短絡故障した場合を例に挙げている。上段回生時にスイッチング素子Ｑ６が短絡故障すると、図１３のように、スイッチング素子Ｑ５、Ｑ６が共にＯＮとなり、これらを介して、本来流れるはずのない電流が、短絡電流として破線矢印の経路でシャント抵抗Ｒに流れる。この結果、シャント抵抗Ｒの両端には、短絡電流による大きな電圧が現れる。したがって、この電圧を監視用電流検出回路５により検出することで、スイッチング素子Ｑ６の短絡故障を検出することができる（スイッチング素子Ｑ２、Ｑ４が短絡故障した場合も同様）。この場合、演算制御部４は、シャント抵抗Ｒに流れる電流が所定値以上であれば、スイッチング素子Ｑ２、Ｑ４、Ｑ６の少なくとも１つが短絡故障したと判定する。
【００６１】
本発明では、以上述べた以外にも種々の実施形態を採用することができる。例えば、前記実施形態では、単一のシャント抵抗Ｒを用いたモータ駆動装置を例に挙げたが、図１４に示すように、各相の下アームにそれぞれシャント抵抗Ｒ１〜Ｒ３が設けられている場合にも、本発明を適用することができる。図１４では、図１と同一部分に同一符号を付し、図１のドライバＩＣ３と演算制御部４の図示は省略してある。図１４の実施形態においては、各シャント抵抗Ｒ１〜Ｒ３に流れる電流を、それぞれに対応した設けた監視用電流検出回路（図示省略）および制御用電流検出回路（図示省略）で検出する。但し、監視用電流検出回路によるドリフト電流の監視は、上段回生時のみに行なわれる。
【００６２】
また、前記実施形態では、ドリフト補償量α、βを段階的に補正し、最終的に制御用電流値がゼロとなるようにしたが、ドリフト電流が検出された場合に、制御用電流値を一挙にゼロに補償するようにしてもよい。この場合は、図９のステップＳ１２、Ｓ１３における補正値が、ステップＳ１１の検出電流値と０〔Ａ〕との差分に設定される。したがって、ドリフト補償量α、βは、ドリフト電流の電流値に応じて補正される。この結果、図８のステップＳ４の監視用電流値はゼロとなり、ステップＳ７を実行した後のステップＳ５の制御用電流値もゼロとなる。
【００６３】
また、前記実施形態では、上段回生区間と下段回生区間の両方において、監視用電流検出回路５によりシャント抵抗Ｒの電流を検出し、ドリフト補償を行なったが、上段回生区間と下段回生区間のいずれか一方のみにおいて、監視用電流検出回路５によりシャント抵抗Ｒの電流を検出し、ドリフト補償を行なってもよい。
【００６４】
また、前記実施形態では、監視用電流検出回路５の電流検出レンジを制御用電流検出回路６の電流検出レンジより広くしたが、両者の電流検出レンジが同じであってもよい。
【００６５】
また、前記実施形態では、Ｕ相が最大相、Ｖ相が中間相、Ｗ相が最小相である場合を例に挙げたが、これは一例であって、例えば、Ｕ相が最小相、Ｖ相が中間相、Ｗ相が最大相である場合や、Ｕ相が中間相、Ｖ相が最小相、Ｗ相が最大相である場合など、各相と最大相・中間相・最小相との組み合わせがどのような場合であっても、本発明を適用することができる。
【００６６】
また、前記実施形態では、スイッチング素子Ｑ１〜Ｑ６としてＦＥＴを使用したが、ＩＧＢＴ（絶縁ゲート型バイポーラモードトランジスタ）のような他のスイッチング素子を使用してもよい。
【００６７】
また、前記実施形態では、モータＭとして３相モータを例に挙げたが、本発明は、４相以上の多相モータを駆動する場合にも適用することができる。
【００６８】
また、前記実施形態では、モータとしてブラシレスモータを例に挙げたが、本発明は、誘導モータや同期モータなどを駆動する装置にも適用することができる。
【００６９】
さらに、前記実施形態では、車両の電動パワーステアリング装置に本発明を適用した例を挙げたが、本発明は、電動パワーステアリング装置に限らず、インバータ回路を備えたＰＷＭ制御方式のモータ駆動装置全般に適用することができる。
【符号の説明】
【００７０】
１  電源回路
２  インバータ回路
３  ドライバＩＣ
４  演算制御部（制御手段）
５  監視用電流検出回路（第１の電流検出回路）
６  制御用電流検出回路（第２の電流検出回路）
Ａ１〜Ａ６  アーム
Ｍ  モータ
Ｒ  シャント抵抗
Ｑ１〜Ｑ６  スイッチング素子
【図１】
0005591194.tif 000002
【図２】
0005591194.tif 000003
【図３】
0005591194.tif 000004
【図４】
0005591194.tif 000005
【図５】
0005591194.tif 000006
【図６】
0005591194.tif 000007
【図７】
0005591194.tif 000008
【図８】
0005591194.tif 000009
【図９】
0005591194.tif 000010
【図１０】
0005591194.tif 000011
【図１１】
0005591194.tif 000012
【図１２】
0005591194.tif 000013
【図１３】
0005591194.tif 000014
【図１４】
0005591194.tif 000015