(57)【要約】【課題】少なくとも（Ｎ−１）相の電流検出を可能にして、１相の電流検出系が故障又は検出不可能状態、異常となった場合においても、他相の電流検出値を用いて当該故障相の電流値を具体的な手段によって推定し、制御を継続できるようにしたモータの制御方法及び制御装置を提供する。【解決手段】電流指令値と電流検出値の差分に基づいて電圧指令値を演算し、前記電圧指令値としてＰＷＭ制御するモータ制御方法において、電流検出系の故障又は検出不可能状態を検出し、前記故障又は検出不可能状態が検出されたとき、前記故障相又は検出不可能状態相以外の前記電流検出値を用いて前記故障相又は検出不可能状態相の電流推定値を求め、前記電流推定値を用いて前記モータの制御を継続する。【選択図】図１
2007330077.tif 000002
【特許請求の範囲】
【請求項１】
電流指令値と電流検出値の差分に基づいて電圧指令値を演算し、前記電圧指令値としてＰＷＭ制御するモータ制御方法において、電流検出系の故障又は検出不可能状態を検出し、前記故障又は検出不可能状態が検出されたとき、前記故障相又は検出不可能状態相以外の前記電流検出値を用いて前記故障相又は検出不可能状態相の電流推定値を求め、前記電流推定値を用いて前記モータの制御を継続するようにしたことを特徴とするモータ制御方法。
【請求項２】
前記モータがＮ（２以上の整数）相であり、少なくとも（Ｎ−１）相の電流検出が可能となっている請求項１に記載のモータ制御方法。
【請求項３】
前記電圧指令値を制限して後に前記ＰＷＭ制御するようになっている請求項１又は２に記載のモータ制御方法。
【請求項４】
前記電流検出系の故障又は検出不可能状態を、前記電圧指令値、前記電流推定値と前記電流検出値の誤差に基づいて検出する請求項１乃至３のいずれかに記載のモータ制御方法。
【請求項５】
請求項１乃至４に記載のモータ制御方法を車両の電動パワーステアリングに適用したことを特徴とする電動パワーステアリングの制御方法。
【請求項６】
電流指令値と電流検出値の差分に基づいて電圧指令値１を演算し、前記電圧指令値１としてＰＷＭ制御するモータ制御装置において、前記電圧指令値１及び前記電流検出値に基づいて電流推定値を求める電流推定部と、前記電流推定値及び前記電流検出値により電流検出系の故障又は検出不可能状態を検出してフィードバック電流検出値を出力する電流切替部とを具備し、前記フィードバック電流検出値を前記差分用電流検出値とし、前記故障又は検出不可能状態が検出されたとき、前記故障相又は検出不可能状態相以外の前記電流検出値を用いて前記故障相又は検出不可能状態相の電流推定値を求め、前記電流推定値を用いて前記モータの制御を継続するようにしたことを特徴とするモータ制御装置。
【請求項７】
前記電圧指令値を制限する電圧指令値制限部が設けられ、電圧指令値制限部からの電圧指令値２を前記電流推定部に入力するようになっている請求項６に記載のモータ制御装置。
【請求項８】
前記モータがＮ（２以上の整数）相であり、少なくとも（Ｎ−１）相の電流検出が可能となっている請求項６又は７に記載のモータ制御装置。
【請求項９】
操舵トルク及び車速に基づいて電流指令値を演算し、前記電流指令値に基づき、ハンドル操舵に補助力を付与するＮ（２以上の整数）相モータを電圧指令値のＰＷＭで制御する電動パワーステアリング装置の制御装置において、前記電圧指令値及び前記モータの電流検出値に基づいて電流推定値を求める電流推定部と、前記電流推定部からの電流推定値及び前記電流検出値に基づいてフィードバック電流とを切替える電流切替部とを具備し、電流検出系の故障又は検出不可能状態が検出されたとき、前記故障相又は検出不可能状態相以外の前記電流検出値を用いて前記故障相又は検出不可能状態相の電流推定値を求め、前記電流推定値を用いて前記モータの制御を継続するようにしたことを特徴とする電動パワーステアリング装置の制御装置。
【請求項１０】
前記電圧指令値を制限する電圧指令値制限部が設けられ、電圧指令値制限部からの制限電圧指令値を前記電流推定部に入力するようになっている請求項９に記載の電動パワーステアリング装置の制御装置。
【請求項１１】
前記モータがＮ（２以上の整数）相であり、少なくとも（Ｎ−１）相の電流検出が可能となっている請求項９又は１０に記載の電動パワーステアリング装置の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はモータ制御方法及び制御装置に関し、特に１つの電流検出系が故障や異常を生じた場合でも継続して制御可能とした信頼性の高いモータ制御方法及び制御装置であり、電動パワーステアリングの制御に最適である。
【背景技術】
【０００２】
モータの制御として、例えば車両のステアリング装置をモータの回転力で補助負荷付勢の制御を行う電動パワーステアリング装置がある。電動パワーステアリング装置は、モータの駆動力を減速機を介してギア又はベルト等の伝達機構により、ステアリングシャフト或いはラック軸に補助負荷付勢するようになっている。かかる従来の電動パワーステアリング装置は、アシストトルク（操舵補助トルク）を正確に発生させるため、モータ電流のフィードバック制御を行っている。フィードバック制御は、電流制御値とモータ電流検出値との差が小さくなるようにモータ印加電圧を調整するものであり、モータ印加電圧の調整は、一般的にＰＷＭ（パルス幅変調）制御のデュ−ティ比の調整で行っている。
【０００３】
ここで、電動パワーステアリング装置の一般的な構成を図１１に示して説明すると、操向ハンドル１のコラム軸２は減速ギア３、ユニバーサルジョイント４Ａ及び４Ｂ、ピニオンラック機構５を経て操向車輪のタイロッド６に連結されている。コラム軸２には、操向ハンドル１の操舵トルクを検出するトルクセンサ１０が設けられており、操向ハンドル１の操舵力を補助するモータ２０が減速ギア３を介してコラム軸２に連結されている。パワーステアリング装置を制御するコントロールユニット３０には、バッテリ１４から電力が供給されると共に、イグニションキー１１からイグニションキー信号が入力されている。コントロールユニット３０は、トルクセンサ１０で検出された操舵トルクＴと車速センサ１２で検出された車速Ｖとに基づいてアシスト指令の操舵補助指令値Ｉの演算を行い、演算された操舵補助指令値Ｉに基づいてモータ２０に供給する電流を制御する。
【０００４】
コントロールユニット３０は主としてＣＰＵ（ＭＰＵやＭＣＵを含む）で構成されるが、そのＣＰＵ内部においてプログラムで実行される一般的な機能を示すと図１２のようになる。
【０００５】
図１２に添って、３相モータ２０Ａを駆動制御するコントロールユニット３０の機能及び動作を説明すると、トルクセンサ１０で検出された操舵トルクＴと、車速センサ若しくはＣＡＮ(Controller  Area  Network)からの車速Ｖとが電流指令値演算部３１に入力され、電流指令値演算部３１は操舵トルクＴ及び車速Ｖに基づいて操舵補助指令用の電流指令値Ｉｒｅｆを演算する。演算された電流指令値Ｉｒｅｆは各相電流指令値作成部３２に入力され、各相電流指令値作成部３２にはモータ角度θ及びモータ角速度ωが入力されてａ〜ｃ相の電流指令値Ｉａ〜Ｉｃが作成される。電流指令値Ｉａ〜Ｉｃはそれぞれ減算部３３ａ〜３３ｃを経て応答性を上げるためのＰＩ制御部３４に入力され、ＰＩ制御部３４でＰＩ制御された電圧指令値Ｄａ２，Ｄｂ２，Ｄｃ２がデューティ比を演算するＰＷＭ制御部３５に入力され、ＰＷＭ制御部３５で演算されたＰＷＭのゲート駆動信号Ｇ１〜Ｇ６がインバータ回路３６に入力され、インバータ回路３６によって３相モータ２０Ａが駆動される。
【０００６】
３相モータ２０Ａにはレゾルバ等の回転センサ３７が取り付けられており、回転センサ３７からのモータ角度θは角速度演算部３８に入力され、モータ角度θ及び角速度演算部３８で演算されたモータ角速度ωが各相電流指令値作成部３２に入力される。また、インバータ回路３６ではモータ２０Ａに供給される各相モータ電流が電流検出値Ｉａｄ〜Ｉｃｄとして検出され、電流検出値Ｉａｄ〜Ｉｃｄが減算部３３ａ〜３３ｃにそれぞれ減算入力されてフィードバックされている。これにより、モータ２０Ａは電流指令値演算部３１で演算された電流指令値Ｉｒｅｆに基づいて、ＰＷＭの電流フィードバック制御で駆動制御される。
【０００７】
インバータ回路３６の詳細構成例を図１３に示して説明すると、３相モータ２０Ａは３相ブリッジに接続された６個の電界効果トランジスタ（ＦＥＴ）ＦＥＴ１〜ＦＥＴ６のオンオフで駆動制御され、各ＦＥＴＦＥＴ１〜ＦＥＴ６はＰＷＭ制御部３５からのＰＷＭ信号としてのゲート駆動信号Ｇ１〜Ｇ６でオンオフ制御される。なお、ＰＷＭ制御部３５にはＰＩ制御部３４から電圧指令値Ｄａ２，Ｄｂ２，Ｄｃ２が入力されている。また、３相ブリッジ回路の各相下段には電流検出用抵抗Ｒａ〜Ｒｃが接続されており、各相電圧が電流検出回路３６１に入力されて、各相モータ電流が電流検出値Ｉａｄ〜Ｉｃｄとして検出されて出力される。
【０００８】
このような電動パワーステアリング装置の制御装置において、図１３に示すように電流検出手段としての電流検出用抵抗をブリッジ回路の各相下段に接続する場合は構成が簡単であり、低コストであるが、下段ＦＥＴ４〜ＦＥＴ６のデューティ比が所定値以下であるときに、電流を正確に検出できないという問題がある。
【０００９】
かかる問題を回避しようとする技術として、特開平１０−５４８５２号公報（特許文献１）及び特許第３６７４５７８号公報（特許文献２）に記載されたものがある。
【００１０】
特許文献１に記載の方法は、３相アナログ電流検出回路を備えた３相インバータの運転中の出力電流を３相アナログ電流検出回路により３相アナログ電圧に変換し、インバータの出力電流を検出するインバータの出力電流検出方法において、インバータの出力電圧指令の電気角に応じて、３相インバータの主回路のうち下段アーム半導体スイッチング素子駆動信号のオフ時間が短い２相を順次選択し、選択した２相に対応するアナログ電圧をディジタル変換することによりインバータの出力電流を検出するようになっている。また、特許文献２に記載の装置では、ＰＷＭ制御される３相インバータの各相の下段アーム側にて下段アーム素子と直列接続される電流検出抵抗素子の電圧降下に基づいて各相の電流値を検出する３相インバータの電流検出装置において、所定相の電流値として、所定相の電流検出抵抗素子の電圧降下の値から成る第一電流値と、残る２相の電流検出抵抗素子の電圧降下の和の符号を反転した値である第二電流値とを所定の条件で切替えて用いる電流値決定部を有し、電流値決定部は、下段アーム素子のデューティ比が３０％未満の小値以上である相の電流値として第一電流値を採用し、下段アーム素子のデューティ比が３０％未満の小値未満である相の電流値として第二電流値を採用するようにしている。
【特許文献１】特開平１０−５４８５２号公報
【特許文献２】特許第３６７４５７８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
上述の特許文献１の方法及び特許文献２の装置では、いずれも正確に電流検出できなくなった相の電流値を他相の電流検出値を用いて演算している。しかしながら、他相の電流検出が正確かどうかを判定して、正確に電流検出できなくなった当該相の電流値をどのように演算するかの具体例を開示していない。つまり、Ｎ（２以上の整数）相インバータにおいては（Ｎ−１）相の電流検出が可能であることが前提になっているが、その手段や手法は全く開示されていない。また、故障により電流検出値が正確でない場合について、具体的な手段が開示されていない。
【００１２】
本発明は上述のような事情よりなされたものであり、本発明の目的は、Ｎ（２以上の整数）相のモータに対して少なくとも（Ｎ−１）相の電流検出を可能にし、１相の電流検出系が故障や異常となった場合或いは検出不可能状態になった場合においても、他相の電流検出値を用いて当該故障相又は検出不可能相の電流値を具体的な手段、手法によって推定し、推定値を用いて制御を継続できるようにしたモータの制御方法及び制御装置、更にそれを利用した電動パワーステアリング装置の制御装置を提供することにある。
【課題を解決するための手段】
【００１３】
本発明は、電流指令値と電流検出値の差分に基づいて電圧指令値を演算し、前記電圧指令値としてＰＷＭ制御するモータ制御方法に関し、本発明の目的は、電流検出系の故障又は検出不可能状態を検出し、前記故障又は検出不可能状態が検出されたとき、前記故障相又は検出不可能状態相以外の前記電流検出値を用いて前記故障相又は検出不可能状態相の電流推定値を求め、前記電流推定値を用いて前記モータの制御を継続することにより達成され、更に前記モータがＮ（２以上の整数）相であり、少なくとも（Ｎ−１）相の電流検出が可能となっていることにより、或いは前記電圧指令値を制限して後に前記ＰＷＭ制御するようになっていることにより、或いは前記電流検出系の故障又は検出不可能状態を、前記電圧指令値、前記電流推定値と前記電流検出値の誤差に基づいて検出することにより、より効果的に達成される。
【００１４】
また、本発明は、電流指令値と電流検出値の差分に基づいて電圧指令値１を演算し、前記電圧指令値１としてＰＷＭ制御するモータ制御装置に関し、本発明の上記目的は、前記電圧指令値１及び前記電流検出値に基づいて電流推定値を求める電流推定部と、前記電流推定値及び前記電流検出値により電流検出系の故障又は検出不可能状態を検出してフィードバック電流検出値を出力する電流切替部とを設け、前記フィードバック電流検出値を前記差分用電流検出値とし、前記故障又は検出不可能状態が検出されたとき、前記故障相又は検出不可能状態相以外の前記電流検出値を用いて前記故障相又は検出不可能状態相の電流推定値を求め、前記電流推定値を用いて前記モータの制御を継続することにより達成され、更に前記電圧指令値を制限する電圧指令値制限部が設けられ、電圧指令値制限部からの電圧指令値２を前記電流推定部に入力することにより、或いは前記モータがＮ（２以上の整数）相であり、少なくとも（Ｎ−１）相の電流検出が可能となっていることにより、より効果的に達成される。
【００１５】
更に、本発明は、操舵トルク及び車速に基づいて電流指令値を演算し、前記電流指令値に基づき、ハンドル操舵に補助力を付与するＮ（２以上の整数）相モータを電圧指令値のＰＷＭで制御する電動パワーステアリング装置の制御装置に関し、本発明の上記目的は、前記電圧指令値及び前記モータの電流検出値に基づいて電流推定値を求める電流推定部と、前記電流推定部からの電流推定値及び前記電流検出値に基づいてフィードバック電流とを切替える電流切替部とを設け、電流検出系の故障又は検出不可能状態が検出されたとき、前記故障相又は検出不可能状態相以外の前記電流検出値を用いて前記故障相又は検出不可能状態相の電流推定値を求め、前記電流推定値を用いて前記モータの制御を継続することにより達成され、前記電圧指令値を制限する電圧指令値制限部が設けられ、電圧指令値制限部からの制限電圧指令値を前記電流推定部に入力することにより、或いは前記モータがＮ（２以上の整数）相であり、少なくとも（Ｎ−１）相の電流検出が可能となっていることにより、より効果的に達成される。
【発明の効果】
【００１６】
本発明に係るモータの制御方法及び制御装置によれば、少なくとも（Ｎ−１）相の電流検出が可能となるように電圧指令値の大きさを制限し、検出できない相の電流を他相の電流検出値を用いて所定式で推定し、推定された電流値を用いて継続的に制御するようにしているので、信頼性の高い高性能なモータ制御が可能となる。
【００１７】
また、電流検出をブリッジ回路下段に接続した電流検出用抵抗で行っているので、構成が簡単でコストアップもない。本発明に係るモータの制御方法及び制御装置を電動パワーステアリングに適用した場合には、１つの電流検出系が故障や異常、検出不可能状態を生じた場合でも継続して操舵制御が可能であるので、信頼性の高い高性能な電動パワーステアリング装置を提供できる。
【発明を実施するための最良の形態】
【００１８】
本発明はＮ（２以上の整数）相モータの制御方法及び装置、更に電動パワーステアリングの制御方法及び制御装置に関するものであり、Ｎ相モータを制御する制御系に対して、少なくとも（Ｎ−１）相の電流検出が可能となるように各相電圧指令値の大きさを制限し、電流検出系の故障や異常（以下、単に「故障」とする）が生じた場合には、故障で検出できない相の電流を他相電流値から所定式で推定してモータの制御を継続する。このため、１つの相の電流検出系が故障した場合や検出不可能状態になった場合でも、モータ制御を正常動作で継続することができ、信頼性が高く高性能な制御を実現することができる。
【００１９】
なお、本発明においては、デューティ比によって正確に検出できなくなった状態と、回路故障によって検出できなくなった状態とを区別し、検出できるデューティ比であるにも拘わらず正確に検出できない場合を「故障」又は「異常」とし、正確に検出できないデューティ比である場合を「検出不可能状態」とする。
【００２０】
以下に、本発明の実施の形態を図面を参照して説明する。
【００２１】
図１は本発明の一実施形態の構成を図１２に対応させて示しており、新たに電圧指令値制限部４０、電流推定部５０、電流切替部６０及び逆起電圧補償部７０が設けられている。即ち、ＰＩ制御部３４からの３相の電圧指令値Ｄａ２，Ｄｂ２，Ｄｃ２は、逆起電圧補償部７０からの電圧補償値Ｅａ，Ｅｂ，Ｅｃと加算されて電圧指令値制限部４０に入力され、電圧指令値制限部４０で制限された電圧指令値Ｄａ２１，Ｄｂ２１，Ｄｃ２１はＰＷＭ制御部３５に入力されると共に、故障又は検出不可能状態となった電流検出系のモータ電流値を推定する電流推定部５０に入力される。電流推定部５０で推定された電流推定値Ｉａ２ｅ，Ｉｂ２ｅ，Ｉｃ２ｅは電流切替部６０に入力されている。また、インバータ回路３６内の電流検出回路３６１で検出された各相モータ電流の電流検出値Ｉａｄ，Ｉｂｄ，Ｉｃｄは、電流推定部５０及び電流切替部６０に入力されている。電圧指令値制限部４０は、少なくとも２相の電圧検出が可能なように電圧の大きさを制限している。電圧指令値制限部４０、電流推定部５０及び電流切替部６０の詳細な構成例は後述する。
【００２２】
なお、電圧指令値Ｄａ２，Ｄｂ２，Ｄｃ２に対する逆起電圧補償部７０による逆起電圧補償は、例えば特開２００５−１９９７８０号公報で示されるような方法で行う。
【００２３】
各相の電圧指令値Ｄａ２１〜Ｄｃ２１のそれぞれが、例えば所定値＃２以下であれば正常に検出できるならば、電流検出用抵抗や電流検出回路３６１等の電流検出系の故障は、電流推定値Ｉａ２ｅ〜Ｉｃ２ｅと電流検出値Ｉａｄ〜Ｉｃｄの誤差が所定値＃３以上でかつ電圧指令値Ｄａ２１〜Ｄｃ２１が所定値＃２以下の場合に「故障」として判断する。電流切替部６０は、各相毎に電流検出値Ｉａｄ〜Ｉｃｄと電流推定値Ｉａ２ｅ〜Ｉｃ２ｅの誤差を求め、誤差が所定値＃１以上である相については、電流検出値Ｉａｄ〜Ｉｃｄではなく電流推定値Ｉａ２ｅ〜Ｉｃ２ｅがフィードバック電流値Ｉａｄ１〜Ｉｃｄ１として減算部３３ａ〜３３ｃにフィードバックされ、所定値＃１未満の相は電流検出値電流検出値Ｉａｄ〜Ｉｃｄがフィードバック電流値Ｉａｄ１〜Ｉｃｄ１として減算部３３ａ〜３３ｃにフィードバックされるようになっている。
【００２４】
このような構成において、その動作を図２及び図３のフローチャートを参照して説明する。
【００２５】
先ずタイマー（時間ｔ＝０）や３相ＡＢＣの必要な初期値（例えば各サンプル時間における各相の故障或いは検出不可能状態を示すメモリの初期値（通常は“０”））を設定し（ステップＳ１）、所定時間Ｔ０が経過するまで待機し（ステップＳ２）、所定時間Ｔ０を経過したときに操舵トルクＴ、車速Ｖ、電流検出値Ｉａｄ，Ｉｂｄ，Ｉｃｄ等を読み込む（ステップＳ３）。電流指令値演算部３１は読み込んだ操舵トルクＴ及び車速Ｖに基づいて電流指令値Ｉｒｅｆを演算し（ステップＳ４）、各相電流指令値作成部３２は、電流指令値Ｉｒｅｆ、モータ角度θ及びモータ角速度ωに基づいて各相電流指令値Ｉａ，Ｉｂ，Ｉｃを作成し（ステップＳ５）、各相電流検出値Ｉａｄ〜Ｉｃｄと各相電流推定値Ｉａ２ｅ〜Ｉｃ２ｅとの差分電流値ΔＩａ〜ΔＩｃを演算する（ステップＳ６）。
【００２６】
そして、差分電流値ΔＩａ〜ΔＩｃの絶対値が所定値＃１よりも大きくなる相を検出し、当該相を検出不可能状態を見るメモリＡＢＣ１に記憶し（ステップＳ７）、更に差分電流値ΔＩａ〜ΔＩｃの絶対値が所定値＃３（＞＃１）よりも大きく、かつ電圧指令値Ｄａ２１〜Ｄｃ２１が所定値＃２以下となる相の数Ｋを求める（ステップＳ１０）。電流検出可能な電圧指令値Ｄａ２１〜Ｄｃ２１であるにも拘わらず誤差が大きい場合は、電流検出用抵抗や電流検出回路３６１等の電流検出系が故障していると考えられる。よって、上記ステップＳ１０で相数Ｋ＝０の場合は図３の動作に移行し、相数Ｋ＝１の場合は電圧指令値最大値Ｄｌｉｍｉｔを設定して故障と判定した相を、故障を見るためのメモリＡＢＣ２に記憶し（ステップＳ１１）、相数Ｋ≧２の場合には制御を中止する（ステップＳ１２）。
【００２７】
例えばメモリＡＢＣ１を配列とすればＡＢＣ１＝[１，０，０]となり、左から順にＡ相、Ｂ相、Ｃ相を示し、“１”は差分＞所定値＃１を表し、“０”は差分≦所定値＃１を表している。同様にメモリＡＢＣ２を配列とすればＡＢＣ２＝[０，１，０]となり、左から順にＡ相、Ｂ相、Ｃ相を示し、“１”は差分＞所定値＃３で、かつ電流検出可能状態を表している。
【００２８】
なお、電圧指令値最大値Ｄｌｉｍｉｔが例えば９０％の場合、電圧指令値が飽和し易くなり、積分器を含む電流制御器がワインドアップし易くなる（図４（Ａ）参照）。これを防ぐために、電流指令値Ｉｒｅｆを制限することが望ましい。また、通常バッテリ電圧／２が中性点電圧になるようにしており、つまりデューティ比５０％を基準として制御しているが、電圧指令値最大値Ｄｌｉｍｉｔ＝９０％になった場合には、図４（Ｂ）に示すようにデューティ比４５％を基準とした制御とする。また、ステップＳ１２で制御を中止する場合、１回で確定せず、数回で確定して制御を中止するようにしても良い。
【００２９】
上記ステップＳ１０で相数Ｋ＝０と判定された場合、メモリＡＢＣ１に記憶された相数Ｍを判定し（ステップＳ２０）、相数Ｍ＝０と判定された場合には、つまり全ての相が｜検出値−推定値｜≦所定値＃１となった場合は、電流検出値Ｉａｄ〜Ｉｃｄを減算部３３ａ〜３３ｃにフィードバックし、減算部３３ａ〜３３ｃからの差分電流値Ｉａ１〜Ｉｃ１に基づいてＰＩ制御部３４は電圧指令値Ｄａ２，Ｄｂ２，Ｄｃ２を演算し、逆起電圧補償部７０及び加算部で逆起電圧補償された電圧指令値は電圧指令値制限部４０に入力され、電圧指令値制限部４０は制限した電圧指令値Ｄａ２１，Ｄｂ２１，Ｄｃ２１を演算する（ステップＳ２１）。電流推定部５０は、電圧指令値Ｄａ２１，Ｄｂ２１，Ｄｃ２１と電流検出値Ｉａｄ，Ｉｂｄ，Ｉｃｄに基づいて次サンプリング時の電流を推定し（ステップＳ２２）、ＰＷＭ制御部３５はＰＷＭ信号のゲート駆動信号Ｇ１〜Ｇ６を出力し（ステップＳ２３）、上記ステップＳ２にリターンする。
【００３０】
一方、上記ステップＳ２０において、相数Ｍ＝１と判定された場合には、その相が例えばＡ相とすると、電流推定値Ｉａ２ｅを用い、他２相（Ｂ，Ｃ相）は電流検出値Ｉｂｄ，Ｉｃｄを用いて電流指令値との差分Ｉａ１〜Ｉｃ１を演算し、ＰＩ制御部３４は電圧指令値Ｄａ２，Ｄｂ２，Ｄｃ２を演算し、電圧指令値制限部４０は電圧指令値Ｄａ２１，Ｄｂ２１，Ｄｃ２１を演算する（ステップＳ２４）。そして、電流推定部５０は、当該Ａ相の他相電流検出値和の符号反転した値、他２相は電流検出値を用いて次サンプリング時の電流を推定し（ステップＳ２５）、上記ステップＳ２３に移行する。また、上記ステップＳ２０において、相数Ｍ≧２と判定された場合には、下記（ａ）〜（ｃ）のいずれかを選択して上記ステップＳ２４に移行する（ステップＳ２６）。
【００３１】
（ａ）電圧指令値が最大となる相を選択
（ｂ）電圧指令値＞所定値＃２となる相を選択
（ｃ）差分電流値の絶対値が最大となる相を選択
また、上記ステップＳ１１の後、メモリＡＢＣ１に記憶された相数Ｍ＝１で、かつメモリＡＢＣ２に記憶された相と一致するか否かを判定し（ステップＳ３０）、メモリＡＢＣ１に記憶された相数Ｍ＝１で、かつメモリＡＢＣ２に記憶された相と一致する場合にはメモリＡＢＣ２に記憶された相を選択し（ステップＳ３１）、上記ステップＳ２４に移行する。上記ステップＳ３０において、メモリＡＢＣ１に記憶された相数Ｍが“１”ではないか若しくはメモリＡＢＣ２に記憶された相と一致しない場合、或いは両者が成立する場合には、メモリＡＢＣ１に記憶された相とメモリＡＢＣ２に記憶された相を比較し、一致しない相について電圧指令値Ｄａ２１〜Ｄｃ２１が所定値＃２を超える相があるか否かを判定し（ステップＳ３２）、該当する相がある場合にはメモリＡＢＣ１及びＡＢＣ２で検出された相については電流推定値Ｉａ２ｅ，Ｉｂ２ｅ，Ｉｃ２ｅを用いて電圧指令値Ｄａ２〜Ｄｃ２及びＤａ２１〜Ｄｃ２１を演算し（ステップＳ３３）、メモリＡＢＣ１及びＡＢＣ２で検出された相については他相の電流推定値Ｉａ２ｅ〜Ｉｃ２ｅを用いて次サンプリング時の電流を推定し、それ以外の相は電流検出値を用いて次サンプリング時の電流を推定し（ステップＳ３４）、上記ステップＳ２３に移行する。また、上記ステップＳ３２において、該当する相がない場合には、上記ステップＳ３１に進む。
【００３２】
電圧指令値制限部４０は、少なくとも（Ｎ−１）相の電流が正常に検出できるように電圧指令値Ｄａ２，Ｄｂ２，Ｄｃ２を補正する。例えば図５に示すように、電圧指令値Ｄａ２，Ｄｂ２，Ｄｃ２のうちで２相が同時に、３相下流シャント方式による電流検出の検出限界値以上となったことを検出して限界検出信号ＳＬを出力する検出限界相検出部４３と、限界検出信号ＳＬが出力されたときに、電圧指令値Ｄａ２，Ｄｂ２，Ｄｃ２のうちの中間値Ｍｉｄを出力する中間値出力部４４と、中間値Ｍｉｄと所定デューティのスレッショルド４５との差ＤＴを求める比較部４６と、電圧指令値Ｄａ２，Ｄｂ２，Ｄｃ２からそれぞれ差ＤＴを減算する減算部４２ａ〜４２ｃとを設けた構成であっても良い。
【００３３】
ところで、一般的なモータモデルは図６に示す伝達関数部で表され、モータに対する電圧指令値をｕ（ｋ）、モータ電流をｙ（ｋ）とすると、モータの離散時間状態方程式は下記数１で記述される。ｘは状態変数であり、Ａはシステム行列、Ｂは入力行列、Ｃは出力行列（状態変数ｘから測定可能な状態量を出力するため）を示している。また、Ｔ１をサンプリング間隔とすると、ｘ（ｋ）はｋＴ１時刻の状態変数、ｘ（ｋ＋１）は（ｋ＋１）Ｔ１時刻の状態変数となる。
【００３４】
【数１】
2007330077.tif 000003
ここで、オブザーバを下記数２のように定義する。なお、記号“オーバーハット”は推定値を示しており、推定値と実値の差分にゲインＬを乗算してフィードバックし、推定値が実値に近づくようにしている。
【００３５】
【数２】
2007330077.tif 000004
そして、上記数１及び数２によって、電流検出が正常な場合は推定値と実値の検出値との差は小さくなる。差が小さい場合には検出が正常として検出値を数２のオブザーバに入力し、次時刻の電流を推定する。故障した場合或いは検出不可能状態では推定値と検出値の差が大きくなるので、差が大きい場合には検出が正常ではないと判断し、他相の電流検出値の和を数２のオブザーバに入力し、次時刻の電流を推定する。即ち、全ての相の電流検出系が正常な場合には電流検出値を用い、故障で電流検出が可能でないとき或いは誤差を生じているときは、他相の電流検出値を用いて上記数２で表されるオブザーバを構成する。少なくとも（Ｎ−１）相の電流検出系が電流検出可能であるならば成り立つ。つまり、（Ｎ−１）相の電流を検出可能としていなければ、残り１相の電流を求めることができない。電流検出回路（３６１）が電流を検出できるデューティ比が分かっている場合には、少なくとも（Ｎ−１）相のデューティ比がその条件を満足するようにデューティ比を調整或いは制限すれば良い。１相が故障の場合、最終出力制限値を０〜１００％から例えば０〜所定値＃２にすれば、故障相以外の全相の電流検出が可能となり、制御を継続することができる。従って、本発明では電流検出ができない相に対して、推定した電流推定値を用いて行う。
【００３６】
図７は電流推定部５０の詳細回路を示しており、一点鎖線部で示すａ相の電流推定部５１０を詳細に説明するが、ｂ相の電流推定部５２０及びｃ相の電流推定部５３０の構成は全く同一であり、入力する電圧指令値Ｄａ２１〜Ｄｃ２１、電流検出値Ｉａｄ〜Ｉｃｄ、電圧補償値Ｅａ〜Ｅｃ及び電流推定値Ｉａ２ｅ〜Ｉｃ２ｅのみが相違している。図７の電流推定部５１０内で、切替判断部５１６、切替部５１８、反転部５１７Ａ、５１７Ｂ、加算部５１９Ｃ、５１９Ｄ及び減算部５１９Ｅ以外は数２をブロック図にしたものであり、加算部５１９Ａの加算結果がｘ（ｋ＋１）に相当し、入力行列Ｂのブロック５１１は電圧指令値Ｄａ２１と逆起電圧Ｅａとの差分と入力行列Ｂを乗算していることを表しており、数２のＢｕ（ｋ）に相当している。また、ブロック５１３は１サンプリング遅れの単位遅延部（unit delay）を示し、ブロック５１２はシステム行列Ａ、ブロック５１４は出力行列Ｃ、ブロック５１５はゲインＬを示している。電圧指令値制限部４０からの電圧指令値Ｄａ２１は、減算部５１９Ｅで電圧補償値Ｅａを減算されてブロック５１１に入力されている。
【００３７】
電流検出回路３６１で検出された１相の電流検出値Ｉａｄは切替部５１８の接点５１８Ａに入力され、他相の電流検出値Ｉｂｄ及びＩｃｄは加算部５１９Ｃで加算され、反転部５１７Ａで反転されて切替部５１８の接点５１８Ｂに入力され、他相の電流推定値Ｉｂ２ｅ及びＩｃ２ｅは加算部５１９Ｄで加算され、反転部５１７Ｂで反転されて切替部５１８の接点５１８Ｃに入力されている。切替判断部５１６は電流推定値Ｉａ２ｅと電流検出値Ｉａｄとの誤差に基づいて、切替部５１８の接点５１８Ａ〜５１８Ｃを切替える。
【００３８】
図８は電流推定部５０の他の構成例（ベクトル制御）を示しており、ｄｑ軸上で推定を行い、電流制御は各相で行っても良いし、ｄｑ軸上で行っても良い。ベクトル制御は、モータのロータマグネットの座標軸であるトルクを制御するｑ軸と磁界の強さを制御するｄ軸を独立に設定し、各軸が９０度の関係にある制御である。
【００３９】
ベクトル制御のｄｑ軸電流ｉｄ，ｉｑは、抵抗をＲ，インダクタンスをＬとして下記数３で表される。
【００４０】
【数３】
2007330077.tif 000005
なお、数３内のΨは永久磁石による電機子鎖交磁束の√３／２である。また、外乱ｄを考慮したモデルは下記数４で表され、数２の形式の推定モデルがｄｑ軸上で得られる。
【００４１】
【数４】
2007330077.tif 000006
電圧指令値制限部４０からの３相の電圧指令値Ｄａ２ｌ，Ｄｂ２ｌ，Ｄｃ２ｌは３相／２相変換部５４０に入力され２相の電圧指令値Ｖｄ，Ｖｑに変換され、電圧指令値Ｖｄ，Ｖｑはｄｑ軸オブザーバ５６０に入力される。また、電流検出回路３６１で検出された３相の電流値Ｉａｄ，Ｉｂｄ，Ｉｃｄは３相／２相変換部５７０に入力され、回転センサ３７からのモータ角度θは３相／２相変換部５４０及び５７０に入力される。３相／２相変換部５７０は２相の電流値ｉｄ及びｉｑを出力してｄｑ軸オブザーバ５６０に入力する。３相／２相変換部５４０及び５７０は下記数５に従って変換される。
【００４２】
【数５】
2007330077.tif 000007
ここで、３相電流のうち１相は他２相から演算で求めることができるので、例えばｉｂ＝−（ｉａ＋ｉｃ）としてｉｄ，ｉｑを求めることができる。
【００４３】
モータ角度θは２相／３相変換部５５０にも入力され、２相／３相変換部５５０で推定された３相の電流推定値Ｉａ４ｅ，Ｉｂ４ｅ，Ｉｃ４ｅが３相／２相変換部５７０に入力され、３相／２相変換部５７０は電流検出値Ｉａｄ〜Ｉｃｄと電流推定値Ｉａ４ｅ〜Ｉｃ４ｅの各誤差が所定値以上の場合に、電流検出系が故障と判断して電流推定値Ｉａ４ｅ〜Ｉｃ４ｅをフィードバック電流Ｉａｄ１〜Ｉｃｄ１として出力する。２相／３相変換部５５０は下記数６に従って変換される。
【００４４】
【数６】
2007330077.tif 000008
図９は本発明の他の実施形態を図１に対応させて示しており、本例ではＰＩ制御部３４からの電圧指令値Ｄａ２〜Ｄｃ２を電流推定部５０に入力しており、この場合の電流推定部５０の構成は図１０に示すようになる。本例によっても同様な制御が可能である。
【００４５】
なお、図５の最終段のリミッタによって電圧指令値が制限された場合、つまり｜リミッタ入力値−制限後の値｜＞０の場合は、（リミッタ入力値−制限後の値）を電流推定部５０のブロック５１１に入力される値から減算する。リミッタによって実際にモータへの供給電圧が指令値よりも制限されたことになるからである。
【００４６】
また、上述では３相モータの制御について説明したが、２相以上のモータであれば同様に適用可能である。３相制御で３相電流制御の例で説明したが、２相電流制御で残り１相を他２相の電流制御値から、例えば電圧指令値Ｂ＝−（電圧指令値Ａ＋電圧指令値Ｃ）のように求めても良い。上記実施形態では検出不可能状態の場合、電流推定値を用いて電流フィードバックを構成しているが、他相の電流検出値の和を符号反転した値をフィードバック電流としても良い。
【００４７】
検出値と推定値との差を所定値と比較する場合、所定値にヒステリシスを設けるようにしても良い。電流検出値には量子化ノイズがあるため、固定の所定値では頻繁に切替えることになるチャタリング状態の発生が懸念され、これを防ぐために所定値にヒステリシスを設ける。
【００４８】
更に、本発明のモータ制御方法及び制御装置を電動パワーステアリングに適用でき、高性能で信頼性の高い操舵制御を実現することができる。
【図面の簡単な説明】
【００４９】
【図１】本発明の一実施形態の構成例を示すブロック図である。
【図２】本発明の動作例を示すフローチャートの一部である。
【図３】本発明の動作例を示すフローチャートの一部である
【図４】本発明の動作を説明するための特性図である。
【図５】電圧指令値制限部の構成例を示すブロック図である。
【図６】一般的なモータモデルを示す伝達関数部である。
【図７】電流推定部の詳細構成例を示すブロック図である。
【図８】電流推定部の他の構成例を示すブロック図である。
【図９】本発明の他の実施形態の構成例を示すブロック図である。
【図１０】電流推定部の詳細構成例を示すブロック図である。
【図１１】一般的な電動パワーステアリング装置の構成例を示す図である。
【図１２】コントロールユニットの一例を示すブロック構成図である。
【図１３】インバータ回路の一例を示す結線図である。
【符号の説明】
【００５０】
１                    操向ハンドル
２                    コラム軸
３                    減速ギア
１０                  トルクセンサ
１１                  イグニションキー
１２                  車速センサ
１４                  バッテリ
２０，２０Ａ          モータ
３０                  コントロールユニット
３１                  電流指令値演算部
３２                  各相電流指令値作成部
３４                  ＰＩ制御部
３５                  ＰＷＭ制御部
３６                  インバータ回路
３７                  回転センサ
３８                  角速度演算部
４０                  電圧指令値制限部
４３                  検出限界相検出部
４４                  中間値出力部
５０、５１０、５２０、５３０      電流推定部
６０                  電流切替部
７０                  逆起電圧補償部
３６１                電流検出回路
５４０                ３相／２相変換部
５５０                ２相／３相変換部
５６０                ｄｑ軸オブザーバ
【図１】
2007330077.tif 000009
【図２】
2007330077.tif 000010
【図３】
2007330077.tif 000011
【図４】
2007330077.tif 000012
【図５】
2007330077.tif 000013
【図６】
2007330077.tif 000014
【図７】
2007330077.tif 000015
【図８】
2007330077.tif 000016
【図９】
2007330077.tif 000017
【図１０】
2007330077.tif 000018
【図１１】
2007330077.tif 000019
【図１２】
2007330077.tif 000020
【図１３】
2007330077.tif 000021