(57)【特許請求の範囲】
【請求項１】
所定の演算周期毎にモータ駆動値を更新して出力するモータ制御装置であって、
モータを駆動するための基本駆動値を演算する基本駆動値演算手段と、
前記モータの非干渉化制御のための非干渉化制御量を演算する非干渉化制御量演算手段と、
この非干渉化制御量演算手段によって演算される非干渉化制御量を補正するための補正値を演算する補正値演算手段と、
前記非干渉化制御量演算手段によって演算される前記非干渉化制御量、および前記補正値演算手段によって演算される前記補正値によって、前記基本駆動値演算手段により演算される前記基本駆動値を修正して前記モータ駆動値を得る修正手段と、
この修正手段での修正によって得られるモータ駆動値に基づいて前記モータを駆動する駆動手段とを含み、
前記補正値演算手段が、今回の演算周期で前記非干渉化制御量演算手段によって演算された非干渉化制御量から前回の演算周期で前記非干渉化制御量演算手段によって演算された非干渉化制御量を差し引いた値を前記補正値として演算するものである、モータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、モータ（とくにブラシレスモータ）を駆動するためのモータ制御装置に関する。ブラシレスモータは、たとえば、電動パワーステアリング装置における操舵補助力の発生源として利用される。
【背景技術】
【０００２】
ブラシレスモータのためのモータ制御装置は、モータの電機子巻線を流れる電流を検出する電流検出部と、モータのロータ回転位置を検出する回転位置検出部と、ｄ軸目標電流およびｑ軸目標電流を演算するｄｑ軸目標電流演算部と、検出された電機子巻線電流およびロータ回転位置に基づいてｄ軸電流およびｑ軸電流を求めるｄｑ軸電流演算部と、ｄ軸電圧指令値演算部と、ｑ軸電圧指令値演算部とを備えている。ｄ軸電圧指令値演算部は、ｄ軸目標電流とｄ軸電流との間のｄ軸偏差を低減するように、ｄ軸偏差のＰＩ演算に基づいてｄ軸電圧指令値を求める。ｑ軸電圧指令値演算部は、ｑ軸目標電流とｑ軸電流との間のｑ軸偏差を低減するように、ｑ軸偏差のＰＩ演算に基づいてｑ軸電圧指令値を求める。こうして求められたｄ軸電圧指令値およびｑ軸電圧指令値、ならびに検出されたロータ回転位置に基づいて、モータ制御装置は、電機子巻線に電圧を印加する。これにより、ロータの回転力が発生する。
【０００３】
一方、ＰＩ演算値に対して非干渉化制御量を加算する非干渉化制御が知られている（特許文献１参照）。非干渉化制御とは、ロータの回転に伴ってモータ内部で生じる速度起電力を補償するように電圧指令値を定める制御である。非干渉化制御を行うことによって、速度起電力による応答性や追従性の低下を効果的に抑制できると期待されている。
【特許文献１】特開２００１−１８７５７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
モータ内部で生じる速度起電力は、回転角速度および電流に依存する。したがって、これを補償するための非干渉化制御量も同様に回転角速度および電流に依存する。より具体的には、ｄ軸非干渉化制御量は回転角速度およびｑ軸電流に依存し、ｑ軸非干渉化制御量は回転角速度およびｄ軸電流に依存する。
ところが、モータの各相の電機子巻線の電流が検出されてから、これがｄ軸電流およびｑ軸電流に変換され、さらにｄ軸電圧指令値およびｑ軸電圧指令値が出力するまでには、座標変換やＰＩ演算などのための演算時間が必要である。また、ロータ回転角が検出されてから、それに基づいて回転角速度を演算する時間も必要である。この間にもロータは回転するので、それに伴ってｄ軸およびｑ軸が回転することになる。その結果、ｄ軸電圧指令値およびｑ軸電圧指令値が出力されるときには、ｄ軸およびｑ軸の方向が、モータ電流等の検出時のｄ軸およびｑ軸の方向からずれてしまっている。したがって、モータ電流等検出時のｄ軸およびｑ軸の方向に対応する非干渉化制御量を用いても、必ずしも、適切な電圧指令値を出力することができない。とくに、回転角速度が大きいときに、この問題が顕在化する。そのため、非干渉化制御が必ずしも期待どおりの効果を生じないうえ、モータ電流が変動的になり、振動や異音が生じるおそれがある。
【０００５】
そこで、この発明の目的は、演算時間の遅れを補償した非干渉化制御を行うことによって、モータの応答性および追従性を効果的に向上することができるモータ制御装置を提供することである。
【課題を解決するための手段】
【０００６】
上記の目的を達成するための請求項１記載の発明は、所定の演算周期毎にモータ駆動値を更新して出力するモータ制御装置であって、モータ（１）を駆動するための基本駆動値を演算する基本駆動値演算手段（５１ａ，５２ａ）と、前記モータの非干渉化制御のための非干渉化制御量を演算する非干渉化制御量演算手段（５１ｂ，５２ｂ）と、この非干渉化制御量演算手段によって演算される非干渉化制御量を補正するための補正値を演算する補正値演算手段（５１ｅ，５２ｅ）と、前記非干渉化制御量演算手段によって演算される前記非干渉化制御量、および前記補正値演算手段によって演算される前記補正値によって、前記基本駆動値演算手段により演算される前記基本駆動値を修正して前記モータ駆動値を得る修正手段（５１ｃ，５１ｄ，５２ｃ，５２ｄ）と、この修正手段での修正によって得られるモータ駆動値に基づいて前記モータを駆動する駆動手段（２０，２１，１３）とを含み、前記補正値演算手段が、今回の演算周期で前記非干渉化制御量演算手段によって演算された非干渉化制御量から前回の演算周期で前記非干渉化制御量演算手段によって演算された非干渉化制御量を差し引いた値を前記補正値として演算するものである、モータ制御装置である。なお、括弧内の英数字は、後述の実施形態における対応構成要素等を表す。以下、この項において同じ。
【０００７】
この構成によれば、非干渉化制御量および補正値によって基本駆動値を修正してモータ駆動値が求められるようになっている。前記補正値を適切に定めることによって、演算時間分の遅れに起因する非干渉化制御量の誤差を補償することができる。これにより、応答性および追従性に優れたモータ制御が可能になり、非干渉化制御本来の効果を充分に享受することができる。
【０００９】
具体的には、この発明によれば、今回の演算周期における非干渉化制御量と前回の演算周期における非干渉化制御量との差が前記補正値とされる。この場合、補正値は、前回の演算周期における非干渉化制御量の誤差に相当する。この誤差は、前演算周期から今演算周期までの間と、今演算周期から次演算周期までの間とで大きく相違しないと考えられる。そこで、この発明では、今回と前回との非干渉化制御量の差を補正値とし、今回の非干渉化制御量の誤差を補償するために用いている。これにより、モータ駆動値が更新されるまでの遅れ時間における非干渉化制御量の時間変化を予測した適切なモータ駆動値が得られる。つまり、モータ駆動値が更新される時点において妥当となる非干渉化制御を行うことができる。その結果、演算時間による遅れを効果的に補償することができるので、非干渉化制御本来の効果を達成できる。
【００１７】
前記基本駆動値演算手段は、ｄ軸基本駆動電圧およびｑ軸基本駆動電圧を演算するものであってもよい。この場合に、前記非干渉化制御量演算手段は、ｄ軸非干渉化制御量およびｑ軸非干渉化制御量を演算するものであり、それに応じて、前記補正値演算手段は、ｄ軸補正値およびｑ軸補正値を演算するものであることが好ましい。
【発明を実施するための最良の形態】
【００１８】
以下では、この発明の実施の形態を、添付図面を参照して詳細に説明する。
図１は、この発明の一実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の電気的構成を説明するためのブロック図である。この電動パワーステアリング装置は、車両のステアリングホイールに加えられる操舵トルクを検出するトルクセンサ７と、車両の速度を検出する車速センサ８と、車両の舵取り機構３に操舵補助力を与えるモータ１と、このモータ１を駆動制御するモータ制御装置１０とを備えている。モータ制御装置１０は、トルクセンサ７が検出する操舵トルクおよび車速センサ８が検出する車速に応じてモータ１を駆動することによって、操舵状況に応じた適切な操舵補助を実現する。モータ１は、たとえば、三相ブラシレスＤＣモータである。
【００１９】
モータ制御装置１０は、電流検出部１１、信号処理部としてのマイクロコンピュータ１２、および駆動回路１３を有する。このモータ制御装置１０に、モータ１内のロータの回転位置を検出するレゾルバ２（回転位置センサ）とともに、前述のトルクセンサ７および車速センサ８が接続されるようになっている。
電流検出部１１はモータ１の電機子巻線を流れる電流を検出する。より具体的には、電流検出部１１は、３相（Ｕ相、Ｖ相およびＷ相）の電機子巻線における相電流をそれぞれ検出する電流検出器１１ｕ，１１ｖ，１１ｗと、電流検出器１１ｕ，１１ｖ，１１ｗによる電流検出信号をＡ／Ｄ（アナログ／ディジタル）変換するＡ／Ｄ変換器１１ｕ′，１１ｖ′，１１ｗ′とを有する。
【００２０】
マイクロコンピュータ１２は、プログラム処理（ソフトウェア処理）によって実現される複数の機能処理部を備えており、所定の演算周期毎に繰り返し処理を実行するようになっている。これらの複数の機能処理部には、基本目標電流演算部１５、ｄｑ軸目標電流演算部１６、ｄｑ軸電流演算部１７、ｄ軸偏差演算部１８ｄ、ｑ軸偏差演算部１８ｑ、ｄｑ軸電圧指令値演算部１９、電圧指令値座標変換部２０、ＰＷＭ（パルス幅変調）制御部２１、および回転角速度演算部２２が含まれている。
【００２１】
駆動回路１３は、インバータ回路で構成され、ＰＷＭ制御部２１によって制御されることにより、車載バッテリ等の電源からの電力をモータ１のＵ相、Ｖ相およびＷ相電機子巻線に供給する。この駆動回路１３とモータ１の各相の電機子巻線との間において流れる相電流が電流検出器１１ｕ，１１ｖ，１１ｗにより検出されるようになっている。
基本目標電流演算部１５は、トルクセンサ７により検知される操舵トルクと、車速センサ８により検出される車速とに基づいて、モータ１の基本目標電流Ｉ*を演算する。基本目標電流Ｉ*は、たとえば、操舵トルクの大きさが大きいほど大きく、車速が小さい程大きくなるように定められる。
【００２２】
基本目標電流演算部１５により演算された基本目標電流Ｉ*はｄｑ軸目標電流演算部１６に入力される。ｄｑ軸目標電流演算部１６は、ｄ軸方向の磁界を生成するためのｄ軸目標電流Ｉd*と、ｑ軸方向の磁界を生成するためのｑ軸目標電流Ｉq*とを演算する。ｄ軸とは、モータ１のロータの有する界磁の磁束方向に沿う軸であり、ｑ軸とは、ｄ軸およびロータ回転軸に直交する軸である。ｄｑ軸目標電流演算部１６における演算は公知の演算式を用いて行うことができる。
【００２３】
電流検出部１１から出力される相電流Ｉｕ，Ｉｖ，Ｉｗはｄｑ軸電流演算部１７に入力される。ｄｑ軸電流演算部１７は、レゾルバ２により検出されたロータ回転位置に基づいて、相電流Ｉｕ，Ｉｖ，Ｉｗを座標変換することにより、ｄ軸電流Ｉdおよびｑ軸電流Ｉqを演算する。ｄｑ軸電流演算部１７における演算は公知の演算式を用いて行うことができる。
【００２４】
ｄ軸偏差演算部１８ｄは、ｄ軸目標電流Ｉd*とｄ軸電流Ｉdとの間のｄ軸偏差δＩdを求める。同様に、ｑ軸偏差演算部１８ｑは、ｑ軸目標電流Ｉq*とｑ軸電流Ｉqとの間のｑ軸偏差δＩqを求める。
ｄｑ軸電圧指令値演算部１９は、ｄ軸偏差δＩdに対応するｄ軸電圧指令値Ｖd*とｑ軸偏差δＩqに対応するｑ軸電圧指令値Ｖq*とを求める。
【００２５】
電圧指令値座標変換部２０は、レゾルバ２により検出されたロータ回転位置に基づいて、ｄ軸電圧指令値Ｖd*およびｑ軸電圧指令値Ｖq*の座標変換を行い、Ｕ相電機子巻線、Ｖ相電機子巻線、Ｗ相電機子巻線にそれぞれ印加すべき印加電圧指令値Ｖｕ*，Ｖｖ*，Ｖｗ*を演算する。電圧指令値座標変換部２０における演算は公知の演算式を用いて行えばよい。
【００２６】
ＰＷＭ制御部２１は、印加電圧指令値Ｖｕ*，Ｖｖ*，Ｖｗ*に対応するデューティ比を有するパルス信号である各相のＰＷＭ制御信号を生成する。これにより、ｄ軸電圧指令値Ｖd*およびｑ軸電圧指令値Ｖq*に対応する電圧が駆動回路１３から各相の電機子巻線に印加され、ロータの回転力が発生する。
回転角速度演算部２２は、レゾルバ２により検出されたロータ回転位置の時間変化（微分）を演算することによって、回転角速度ω（rad/sec）を求める。この回転角速度ωは、ｄｑ軸電圧指令値演算部１９に入力されるようになっている。
【００２７】
図２は、ｄｑ軸電圧指令値演算部１９の詳しい構成を説明するためのブロック図である。
ｄｑ軸電圧指令値演算部１９は、ｄ軸電圧指令値演算部５１およびｑ軸電圧指令値演算部５２を有する。ｄ軸電圧指令値演算部５１は、ｄ軸偏差δＩdを低減するように、ｄ軸偏差のＰＩ演算（以下「ｄ軸ＰＩ演算」という。）等に基づいてｄ軸電圧指令値Ｖd*を求める。ｑ軸電圧指令値演算部５２は、ｑ軸偏差δＩqを低減するように、ｑ軸偏差のＰＩ演算（以下「ｑ軸ＰＩ演算」という。）等に基づいてｑ軸電圧指令値Ｖq*を求める。
【００２８】
ｄ軸電圧指令値演算部５１は、ｄ軸ＰＩ演算部５１ａ、ｄ軸非干渉化制御量演算部５１ｂ、ｄ軸第１加算部５１ｃ、ｄ軸第２加算部５１ｄ、およびｄ軸補正値演算部５１ｅを有する。
ｄ軸ＰＩ演算部５１ａは、ｄ軸偏差のＰＩ演算によりｄ軸ＰＩ演算値Ｖdoを演算し、このｄ軸ＰＩ演算値Ｖdoをｄ軸第１加算部５１ｃに出力する。
【００２９】
ｄ軸非干渉化制御量演算部５１ｂは、回転角速度演算部２２により求められる回転角速度ωと、ｄｑ軸電流演算部１７により求められるｑ軸電流Ｉqとに基づき、ｄ軸非干渉化制御量Ｄd（＝−ωＬqＩq）を求める。Ｌqはモータ１の電機子巻線のｑ軸自己インダクタンスであり、予め測定済みの定数である。
ｄ軸第１加算部５１ｃは、ｄ軸ＰＩ演算値Ｖdoにｄ軸非干渉化制御量Ｄdを加算する。
【００３０】
ｄ軸第２加算部５１ｄは、ｄ軸第１加算部５１ｃの加算結果（＝Ｖdo＋Ｄd）に対して、ｄ軸補正値演算部５１ｅが演算するｄ軸補正値ΔＤdを加算して、ｄ軸電圧指令値Ｖd*（＝Ｖdo＋Ｄd＋ΔＤd）を出力する。
ｄ軸補正値演算部５１ｅは、ｄ軸非干渉化制御量Ｄdを補正するためのｄ軸補正値ΔＤdを求めるものである。この実施形態では、ｄ軸補正値演算部５１ｅは、今演算周期におけるｄ軸非干渉化制御量Ｄd(n)（ｎ＝１，２，３，…）と前演算周期におけるｄ軸非干渉化制御量Ｄd(n-1)との差をｄ軸補正値ΔＤd（＝Ｄd(n)−Ｄd(n-1)）として求める偏差演算部５１ｆを有している。なお、図中、Ｚ-1は信号の前回値を表す。
【００３１】
ｑ軸電圧指令値演算部５２は、ｑ軸ＰＩ演算部５２ａ、ｑ軸非干渉化制御量演算部５２ｂ、ｑ軸第１加算部５２ｃ、ｑ軸第２加算部５２ｄ、およびｑ軸補正値演算部５２ｅを有する。
ｑ軸ＰＩ演算部５２ａは、ｑ軸偏差のＰＩ演算によりｑ軸ＰＩ演算値Ｖqoを演算し、このｑ軸ＰＩ演算値Ｖqoをｑ軸第１加算部５２ｃに出力する。
【００３２】
ｑ軸非干渉化制御量演算部５２ｂは、回転角速度演算部２２により求められる回転角速度ωと、ｄｑ軸電流演算部１７により求められるｄ軸電流Ｉdとに基づき、ｑ軸非干渉化制御量Ｄq（＝ωＬdＩd＋ωΦ）を求める。Ｌdはモータ１の電機子巻線のｄ軸自己インダクタンスであり、Φはロータの界磁の電機子巻線鎖交磁束数の最大値の（３／２）1/2倍である。ｄ軸自己インダクタンスＬdは予め測定済みの定数である。
【００３３】
ｑ軸第１加算部５２ｃは、ｑ軸ＰＩ演算値Ｖqoにｑ軸非干渉化制御量Ｄqを加算する。
ｑ軸第２加算部５２ｄは、ｑ軸第１加算部５２ｃの加算結果（＝Ｖqo＋Ｄq）に対して、ｑ軸補正値演算部５２ｅが演算するｑ軸補正値ΔＤqを加算して、ｑ軸電圧指令値Ｖq*（＝Ｖqo＋Ｄq＋ΔＤq）を出力する。
ｑ軸補正値演算部５２ｅは、ｑ軸非干渉化制御量Ｄqを補正するためのｑ軸補正値ΔＤqを求めるものである。この実施形態では、ｑ軸補正値演算部５２ｅは、今演算周期におけるｑ軸非干渉化制御量Ｄq(n)と前演算周期におけるｑ軸非干渉化制御量Ｄq(n-1)との差をｑ軸補正値ΔＤq（＝Ｄq(n)−Ｄq(n-1)）として求める偏差演算部５２ｆを有している。図中、Ｚ-1は信号の前回値を表す。
【００３４】
図３は、ｄ軸電流およびｑ軸電流の検出と、ｄｑ座標軸の回転との関係を示す図である。モータ１の内部で生じる速度起電力は、ｄ軸については、−ωＬqＩqと表され、ｑ軸については、ωＬdＩd＋ωΦと表される。したがって、これらを補償するｄ軸非干渉化制御量Ｄdは−ωＬqＩqと表され、ｑ軸非干渉化制御量ＤqはωＬdＩd＋ωΦと表される。
一方、電流検出部１１によって電流が検出されてから、この検出された電流に対応する駆動値であるｄ軸電圧指令値Ｖd*およびｑ軸電圧指令値Ｖq*が出力されるまでには、回転角速度ωの演算、座標変換、ＰＩ演算その他の演算のための時間が必要である。より具体的には、マイクロコンピュータ１２は、所定の演算周期（たとえば、０．００１秒）毎にｄ軸電圧指令値Ｖd*およびｑ軸電圧指令値Ｖq*を更新して出力する。したがって、電流検出部１１によって電流が検出されてから、ｄ軸電圧指令値Ｖd*およびｑ軸電圧指令値Ｖq*が当該検出された電流に対応する値に更新されるまでには、遅れ時間が生じる。この遅れ時間の間にもロータが回転しているので、それに応じてｄ軸およびｑ軸が回転することになる。
【００３５】
図３に示すように、ｄ軸７１およびｑ軸７２が前記遅れ時間の間に角度変化量θだけ回転してｄ軸７１′およびｑ軸７２′に回転移動する場合を想定する。この場合、回転前のｄ軸７１およびｑ軸７２に対応して求められたｄ軸電流Ｉdおよびｑ軸電流Ｉqに基づいて非干渉化制御量Ｄd，Ｄqが演算される。しかし、この演算された非干渉化制御量Ｄd，Ｄqが適用されるのは、ｄｑ座標軸がｄ軸７１′およびｑ軸７２′の位置まで回転した時点である。したがって、非干渉化制御量Ｄd，Ｄqは適値からずれており、これをそのまま適用すれば、電圧指令値Ｖd*，Ｖq*もまた適値からずれていることになる。
【００３６】
そこで、この実施形態では、ｄ軸ＰＩ演算値Ｖdoにｄ軸非干渉化制御量Ｄdを加算し、この加算結果をｄ軸補正値ΔＤdで補正してｄ軸電圧指令値Ｖd*を得ている。同様に、ｑ軸ＰＩ演算値Ｖqoにｑ軸非干渉化制御量Ｄqを加算し、この加算結果をｑ軸補正値ΔＤqで補正することにより、ｑ軸電圧指令値Ｖq*を得ている。
図４は、電流値取得および電圧指令値更新の各タイミングを例示する図解図である。演算周期の初期の所定のタイミングでＡ／Ｄ変換器１１ｕ′、１１ｖ′，１１ｗ′から検出電流値が取得され、かつ、レゾルバ２からロータ回転位置（モータ角）が取得される。そして、演算周期の後半の所定のタイミングで電圧指令値Ｖd*，Ｖq*が更新される。この電圧指令値Ｖd*，Ｖq*は、次の演算周期で更新されるまでは変化しない。
【００３７】
この図４から理解されるように、電流およびロータ回転位置の検出から電圧指令値Ｖd*，Ｖq*の更新タイミングまでには、演算周期のほぼ１周期分の遅れが生じる。したがって、１演算周期分だけ先の非干渉化制御量Ｄd，Ｄqを予測し、この予測された非干渉化制御量Ｄd，Ｄqに基づいてＰＩ演算値Ｖdo，Ｖqoを補正することができれば、電圧指令値Ｖd*，Ｖq*はその更新タイミングにおいて適値を有することができる。
【００３８】
この実施形態では、前演算周期（ｎ−１）と今演算周期（ｎ）の非干渉化制御量の誤差がほぼ等しい（大きく相違しない）と仮定する。すなわち、次式(1)(2)が成立すると仮定する。
Ｄd(n+1)−Ｄd(n)≒Ｄd(n)−Ｄd(n-1)＝ΔＤd(n) …(1)
Ｄq(n+1)−Ｄq(n)≒Ｄq(n)−Ｄq(n-1)＝ΔＤq(n) …(2)
この予測された非干渉化制御量の誤差ΔＤd(n)，ΔＤq(n)によって、非干渉化制御量Ｄd(n)，Ｄq(n)を補正すれば、電圧指令値Ｖd*，Ｖq*はその更新タイミングにおいて適値を有することができる。すなわち、次式(3)(4)のとおりであり、これは、図２の構成における第２加算部５１ｄ，５２ｄの出力にほかならない。
【００３９】
Ｖd*＝Ｖdo＋Ｄd(n)＋ΔＤd    …(3)
Ｖq*＝Ｖqo＋Ｄq(n)＋ΔＤq    …(4)
図５は、モータ制御装置１０によるモータ１の制御手順を説明するためのフローチャートである。まず、マイクロコンピュータ１２は、トルクセンサ７、車速センサ８、電流検出器１１ｕ，１１ｖ，１１ｗおよびレゾルバ２による検出値を読み込む（ステップＳ１）。基本目標電流演算部１５は、検出された操舵トルクおよび車速に基づき、目標電流Ｉ*を演算する（ステップＳ２）。ｄｑ軸目標電流演算部１６は、その目標電流Ｉ*に対応するｄ軸目標電流Ｉd*とｑ軸目標電流Ｉq*とを演算する（ステップＳ３）。ｄｑ軸電流演算部１７は、検出された相電流Ｉｕ，Ｉｖ，Ｉｗに対応するｄ軸電流Ｉdおよびｑ軸電流Ｉqを演算する（ステップＳ４）。ｄ軸目標電流Ｉd*とｄ軸電流Ｉdとから、ｄ軸偏差演算部１８ｄにおいて、ｄ軸偏差δＩdが演算され、ｑ軸目標電流Ｉq*とｑ軸電流Ｉqから、ｑ軸偏差演算部１８ｑにおいて、ｑ軸偏差δＩqが演算される（ステップＳ５）。また、回転角速度演算部２２は、レゾルバ２によって検出されるロータ回転位置に基づいて、回転角速度ωを演算する（ステップＳ６）。
【００４０】
次に、ｄｑ軸電圧指令値演算部１９において、ｄ軸電圧指令値Ｖd*とｑ軸電圧指令値Ｖq*とが演算される（ステップＳ７）。そして、電圧指令値座標変換部２０において、ｄ軸電圧指令値Ｖd*およびｑ軸電圧指令値Ｖq*に対応するＵ相電機子巻線、Ｖ相電機子巻線、Ｗ相電機子巻線への印加電圧指令値Ｖｕ*，Ｖｖ*，Ｖｗ*が演算される（ステップＳ８）。これらの印加電圧指令値Ｖｕ*，Ｖｖ*，Ｖｗ*に対応するＰＷＭ制御信号がＰＷＭ制御部２１から駆動回路１３に与えられる。これより、モータ１が駆動される（ステップＳ９）。そして、制御を終了するか否かを例えばイグニッションスイッチのオン・オフにより判断し（ステップＳ１０）、終了しない場合はステップＳ１に戻る。
【００４１】
図６は、ｄ軸電圧指令値Ｖd*およびｑ軸電圧指令値Ｖq*の演算手順を示すフローチャートである。まず、ｄ軸ＰＩ演算およびｑ軸ＰＩ演算によりｄ軸ＰＩ演算値Ｖdoおよびｑ軸ＰＩ演算値Ｖqoがそれぞれ求められる（ステップＳ１０１）。一方、ｄ軸非干渉化制御量演算部５１ｂにおいて今演算周期（ｎ）のｄ軸非干渉化制御量Ｄd(n)が求められ、ｑ軸非干渉化制御量演算部５２ｂにおいて今演算周期（ｎ）のｑ軸非干渉化制御量Ｄq(n)が求められる（ステップＳ１０２）。また、ｄ軸補正値演算部５１ｅにおいて、今演算周期（ｎ）にけるｄ軸非干渉化制御量Ｄd(n)と前演算周期（ｎ−１）におけるｄ軸非干渉化制御量Ｄd(n-1)との差であるｄ軸補正値ΔＤdが求められる（ステップＳ１０３）。同様に、ｑ軸補正値演算部５２ｅにおいて、今演算周期（ｎ）におけるｑ軸非干渉化制御量Ｄq(n)と前演算周期（ｎ−１）におけるｑ軸非干渉化制御量Ｄq(n-1)との差であるｑ軸補正値ΔＤqが求められる（ステップＳ１０３）。そして、ｄ軸ＰＩ演算値Ｖdoにｄ軸非干渉化制御量Ｄd(n)が加算され、その加算結果にｄ軸補正値ΔＤdを加算してｄ軸電圧指令値Ｖd*が求められる（ステップＳ１０４）。同様に、ｑ軸ＰＩ演算値Ｖqoにｑ軸非干渉化制御量Ｄq(n)が加算され、その加算結果にｑ軸補正値ΔＤqを加算してｑ軸電圧指令値Ｖq*が求められる（ステップＳ１０４）。こうして求められたｄ軸電圧指令値Ｖd*およびｑ軸電圧指令値Ｖq*が出力される。また、今演算周期（ｎ）における非干渉化制御量Ｄd(n)，Ｄq(n)は、次の演算周期（ｎ＋１）における補正値ΔＤd，ΔＤqの演算（ステップＳ１０３）のために、マイクロコンピュータ１２に備えられたメモリ（図示せず）に記憶される（ステップＳ１０５）。
【００４２】
以上のように、この実施形態によれば、モータ電流等の検出時点から電圧指令値更新時点までの遅れ時間における非干渉化制御量Ｄd，Ｄqの変化が予測され、この予測に対応する補正値ΔＤd，ΔＤqで補正した電圧指令値Ｖd*，Ｖq*が出力される。したがって、これらの電圧指令値Ｖd*，Ｖq*は、それらが更新される時点において適切な非干渉化制御量を反映した値となる。その結果、非干渉化制御によって応答性および追従性を向上することができる。しかも、適切な電圧指令値Ｖd*，Ｖq*が設定される結果、モータ電流が変動的になることを抑制できるので、制御の安定性を確保することができる。これにより、振動や異音を抑制しつつ動特性を向上できるので、電動パワーステアリング装置における操舵フィーリングを向上することができる。
【００５１】
以上、この発明の一実施形態について説明したが、この発明はさらに他の形態で実施することも可能である。たとえば、前述の実施形態では、ｑ軸非干渉化制御量演算部５２ｂで求められるｑ軸非干渉化制御量ＤqをωＬdＩd＋ωΦとしているが、これに代えて、ωＬdＩdをｑ軸非干渉化制御量Ｄqとして用いてもよい。
また、前述の実施形態では、ＰＩ演算値を非干渉化制御量で補正し、さらに、その補正後の値をｄ軸／ｑ軸補正値で補正しているが、非干渉化制御量をｄ軸／ｑ軸補正値で補正し、この補正された後の非干渉化制御量でＰＩ演算値を補正する構成としてもよい。
【００５３】
また、前述の実施形態では、レゾルバ２でロータ回転位置を検出しているが、いわゆるセンサレス制御によってロータ回転位置を推定してもよい。そして、この推定されたロータ回転位置に基づいて回転角速度ωを演算するようにしてもよい。
また、ロータ回転位置に基づいて回転角速度ωを求める代わりに、次式(5)(6)に示すモータの方程式を利用して回転角速度ωを求めるようにしてもよい。ただし、次式(5)(6)において、ｐは微分演算子を表す。
【００５４】
Ｖd−（Ｒ＋ｐＬd）Ｉd＝ω（−ＬqＩq）      …(5)
Ｖq−（Ｒ＋ｐＬq）Ｉq＝ω（Φ＋ＬdＩd）    …(6)
より具体的には、微分項を省略して、次式(7)または(8)に従って回転角速度ωを求めることができる。
ω＝（Ｖd(n-1)−ＲＩd）／（−ＬqＩq）        …(7)
ω＝（Ｖq(n-1)−ＲＩq）／（Φ＋ＬdＩd）      …(8)
このような演算によって回転角速度ωを求めることにより、応答のよい回転角速度演算が可能になるので、非干渉化制御量をより的確に演算することができるようになる。
【００５５】
また、ＳＰＭ（Surface Permanent Magnet：表面磁石貼付型）モータなどのように、ＬdとＬqとの差が小さい場合には、Ｌd＝Ｌqとして非干渉化制御量等を演算してもよい。
また、前述の実施形態では、電動パワーステアリング装置の駆動源としてのモータに本発明が適用された例について説明したが、この発明は、電動パワーステアリング装置以外の用途のモータの制御に対しても適用が可能である。とくに、サーボ系で応答性や追従性が要求される用途でのモータトルク制御に応用すると効果的である。
【００５６】
その他、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。
【図面の簡単な説明】
【００５７】
【図１】この発明の一実施形態に係るモータ制御装置を適用した電動パワーステアリング装置の電気的構成を説明するためのブロック図である。
【図２】ｄｑ軸電圧指令値演算部の詳しい構成を説明するためのブロック図である。
【図３】ｄ軸電流およびｑ軸電流の検出と、ｄｑ座標軸の回転との関係を示す図である。
【図４】電流値取得および電圧指令値更新の各タイミングを例示する図解図である。
【図５】モータ制御装置によるモータの制御手順を説明するためのフローチャートである。
【図６】ｄ軸電圧指令値およびｑ軸電圧指令値の演算手順を示すフローチャートである。
【符号の説明】
【００５８】
１…モータ、２…レゾルバ、１０…モータ制御装置、１１…電流検出部、１２…マイクロコンピュータ、５１…ｄ軸電圧指令値演算部、５１ｃ…ｄ軸第１加算部、５１ｄ…ｄ軸第２加算部、５１ｅ…ｄ軸補正値演算部、５２…ｑ軸電圧指令値演算部、５２ｃ…ｑ軸第１加算部、５２ｄ…ｑ軸第２加算部、５２ｅ…ｑ軸補正値演算部
【図１】
0005141955.tif 000002
【図２】
0005141955.tif 000003
【図３】
0005141955.tif 000004
【図４】
0005141955.tif 000005
【図５】
0005141955.tif 000006
【図６】
0005141955.tif 000007