(57)【要約】【課題】トルクリップルを低減させることができるシンクロナスリラクタンスモータを制御することができるモータ制御装置を提供する。【解決手段】補正値演算部６１は、第１テーブルＴａ１に基づいて、実回転角θａに対応したトルクリップル測定値Ｂ１（θａ）を求める。また、補正値設定部６１は、第２テーブルＴａ２に基づいて、実回転角θａに対応したトルクリップル測定値Ｂ２（θａ）を求める。そして、補正値演算部６１は、得られたトルクリップル測定値Ｂ１（θａ），Ｂ２（θａ）と、各テーブルＴａ１，Ｔａ２に対応する電流指令値と、現在設定されている電流指令値と、トルク定数とに基づいて、電流補正値Ｉｃを演算する。補正値加算部６２は、ｑ軸電流指令値生成部４４によって設定されたｑ軸電流指令値ｉｑ＊（＝Ａｘ）に、電流補正値Ｉｃを加算する。【選択図】図５
2015033265.tif 000002
【特許請求の範囲】
【請求項１】
複数種類の電流指令値に対するトルクリップルが予め測定されているシンクロナスリラクタンスモータを制御するモータ制御方法であって、
前記複数種類の電流指令値毎に、ロータ回転角毎にトルクリップル測定値に応じた値を記憶した複数種類のテーブルを作成する第１ステップと、
前記モータの電流指令値を設定する第２ステップと、
前記モータのロータの実回転角を検出する第３ステップと、
前記複数種類のテーブルのうちの２種類のテーブルを用いて、前記第２ステップによって設定されている電流指令値および前記第３ステップによって検出されている実回転角に対応したトルクリップルを打ち消すための電流補正値を演算する第４ステップと、
前記第４ステップによって演算される電流補正値を、前記第２ステップによって設定される電流指令値に加算する第５ステップと、
前記第５ステップによって電流補正値が加算された後の電流指令値に基づいて、前記モータを制御する第６ステップと、を含むモータ制御方法。
【請求項２】
２種類の電流指令値に対するトルクリップルが予め測定されており、前記複数種類のテーブルが、前記２種類の電流指令値毎に作成された２種類のテーブルである、請求項１に記載のモータ制御方法。
【請求項３】
Ｎを３以上の予め定められた整数とすると、Ｎ種類の電流指令値Ａ１，Ａ２，…，ＡＮ−１，ＡＮ(ただし、ｎ＝１，２，…，Ｎ−１とすると、０＜Ａｎ＜Ａｎ＋１）に対するトルクリップルが予め測定されており、
前記複数種類のテーブルが、前記Ｎ種類の電流指令値Ａ１，Ａ２，…，ＡＮ−１，ＡＮ毎に作成されたＮ種類のテーブルＴａ１，Ｔａ２，…，ＴａＮ−１，ＴａＮであり、
前記第４ステップは、前記第２ステップによって設定されている電流指令値をＡｘとすると、｜Ａｘ｜≦Ａ２である場合には、Ｔａ１とＴａ２の２種類のテーブルを用いて電流補正値を演算し、｜Ａｘ｜＞ＡＮ−１である場合には、ＴａＮ−１とＴａＮの２種類のテーブルを用いて電流補正値を演算し、Ａ２＜｜Ａｘ｜≦ＡＮ−１である場合には、Ａｎ＜｜Ａｘ｜≦Ａｎ＋１を満たす２種類の電流指令値Ａｎ，Ａｎ＋１に対応する２種類のテーブルを用いて電流補正値を演算する、請求項１に記載のモータ制御方法。
【請求項４】
前記複数種類のテーブルには、ロータ回転角毎にトルクリップル測定値が記憶されており、電流補正値を演算するために用いられる２種類のテーブルを、電流指令値Ａｎに対するテーブルＴａｎおよび電流指令値Ａｎ＋１に対するＴａｎ＋１とし、前記第２ステップによって設定されている電流指令値をＡｘとし、前記第３ステップによって検出されている実回転角をθａとし、テーブルＴａｎにおける前記実回転角θａに対応するトルクリップル測定値をＢｎ（θａ）とし、テーブルＴａｎ＋１における前記実回転角θａに対応するトルクリップル測定値をＢｎ＋１（θａ）とし、前記電動モータのトルク定数をＫＴとすると、電流補正値Ｉｃは、次式（a1)または(a2)で表される、請求項１〜３のいずれか一項に記載のモータ制御方法。
Ａｘ≧０の場合  Ｉｃ＝Ｂｘ（θａ）／ＫＴ      …(a1)
Ａｘ＜０の場合  Ｉｃ＝−Ｂｘ（θａ）／ＫＴ    …(a2)
Ｂｘ（θａ）＝｛（｜Ａｘ｜−Ａｎ）／（Ａｎ＋１−Ａｎ）｝・Ｂｎ＋１（θａ）
＋｛（Ａｎ＋１−｜Ａｘ｜）／（Ａｎ＋１−Ａｎ）｝・Ｂｎ（θａ）
【請求項５】
前記複数種類のテーブルには、ロータ回転角毎にトルクリップル測定値の電流換算値が記憶されており、電流補正値を演算するために用いられる２種類のテーブルを、電流指令値Ａｎに対するテーブルＴａｎおよび電流指令値Ａｎ＋１に対するＴａｎ＋１とし、前記第２ステップによって設定されている電流指令値をＡｘとし、前記第３ステップによって検出されている実回転角をθａとし、テーブルＴａｎにおける前記実回転角θａに対応するトルクリップル測定値の電流換算値をＣｎ（θａ）とし、テーブルＴａｎ＋１における前記実回転角θａに対応するトルクリップル測定値の電流換算値をＣｎ＋１（θａ）とすると、電流補正値Ｉｃは、次式（b1)または(b2)で表される請求項１〜３のいずれか一項に記載のモータ制御方法。
Ａｘ≧０の場合  Ｉｃ＝Ｃｘ（θａ）      …(b1)
Ａｘ＜０の場合  Ｉｃ＝−Ｃｘ（θａ）    …(b2)
Ｃｘ［θ］＝｛（｜Ａｘ｜−Ａｎ）／（Ａｎ＋１−Ａｎ）｝・Ｃｎ＋１（θａ）
＋｛（Ａｎ＋１−｜Ａｘ｜）／（Ａｎ＋１−Ａｎ）｝・Ｃｎ（θａ）
【請求項６】
複数種類の電流指令値に対するトルクリップルが予め測定されているシンクロナスリラクタンスモータを制御するモータ制御装置であって、
前記複数種類の電流指令値毎に作成され、ロータ回転角毎にトルクリップル測定値に応じた値を記憶した複数種類のテーブルと、
前記モータの電流指令値を設定する電流指令値設定手段と、
前記モータの実回転角を検出する回転角検出手段と、
前記複数種類のテーブルのうちの２種類のテーブルを用いて、前記電流指令値設定手段によって設定されている電流指令値および前記回転角検出手段によって検出されている実回転角に対応したトルクリップルを打ち消すための電流補正値を演算する電流補正値演算手段と、
前記電流補正値演算手段によって演算される電流補正値を、前記電流指令値設定手段によって設定される電流指令値に加算する加算手段と、
前記加算手段によって電流補正値が加算された後の電流指令値に基づいて、前記モータを制御する制御手段と、を含むモータ制御装置。
【請求項７】
２種類の電流指令値に対するトルクリップルが予め測定されており、
前記複数種類のテーブルが、前記２種類の電流指令値毎に作成された２種類のテーブルである、請求項６に記載のモータ制御装置。
【請求項８】
Ｎを３以上の予め定められた整数とすると、Ｎ種類の電流指令値Ａ１，Ａ２，…，ＡＮ−１，ＡＮ(ただし、ｎ＝１，２，…，Ｎ−１とすると、０＜Ａｎ＜Ａｎ＋１）に対するトルクリップルが予め測定されており、
前記複数種類のテーブルが、前記Ｎ種類の電流指令値Ａ１，Ａ２，…，ＡＮ−１，ＡＮ毎に作成されたＮ種類のテーブルＴａ１，Ｔａ２，…，ＴａＮ−１，ＴａＮであり、
前記電流補正値演算手段は、前記第２ステップによって設定されている電流指令値をＡｘとすると、｜Ａｘ｜≦Ａ２である場合には、Ｔａ１とＴａ２の２種類のテーブルを用いて電流補正値を演算し、｜Ａｘ｜＞ＡＮ−１である場合には、ＴａＮ−１とＴａＮの２種類のテーブルを用いて電流補正値を演算し、Ａ２＜｜Ａｘ｜≦ＡＮ−１である場合には、Ａｎ＜｜Ａｘ｜≦Ａｎ＋１を満たす２種類の電流指令値Ａｎ，Ａｎ＋１に対応する２種類のテーブルを用いて電流補正値を演算するように構成されている、請求項６に記載のモータ制御装置。
【請求項９】
前記複数種類のテーブルには、ロータ回転角毎にトルクリップル測定値が記憶されており、電流補正値を演算するために用いられる２種類のテーブルを、電流指令値Ａｎに対するテーブルＴａｎおよび電流指令値Ａｎ＋１に対するＴａｎ＋１とし、前記電流指令値設定手段によって設定されている電流指令値をＡｘとし、前記回転角検出手段によって検出されている実回転角をθａとし、テーブルＴａｎにおける前記実回転角θａに対応するトルクリップル測定値をＢｎ［θ］とし、テーブルＴｎ＋１における前記実回転角θａに対応するトルクリップル測定値をＢｎ＋１［θ］とし、前記電動モータのトルク定数をＫＴとすると、電流補正値Ｉｃは、次式（a1)または(a2)で表される、請求項６〜８のいずれか一項に記載のモータ制御装置。
Ａｘ≧０の場合  Ｉｃ＝Ｂｘ（θａ）／ＫＴ      …(a1)
Ａｘ＜０の場合  Ｉｃ＝−Ｂｘ（θａ）／ＫＴ    …(a2)
Ｂｘ（θａ）＝｛（｜Ａｘ｜−Ａｎ）／（Ａｎ＋１−Ａｎ）｝・Ｂｎ＋１（θａ）
＋｛（Ａｎ＋１−｜Ａｘ｜）／（Ａｎ＋１−Ａｎ）｝・Ｂｎ（θａ）
【請求項１０】
前記複数種類のテーブルには、ロータ回転角毎にトルクリップル測定値の電流換算値が記憶されており、電流補正値を演算するために用いられる２種類のテーブルを、電流指令値Ａｎに対するテーブルＴａｎおよび電流指令値Ａｎ＋１に対するＴａｎ＋１とし、前記電流指令値設定手段によって設定されている電流指令値をＡｘとし、前記回転角検出手段によって検出されている実回転角をθａとし、テーブルＴａｎにおける前記実回転角θａに対応するトルクリップル測定値の電流換算値をＣｎ（θａ）とし、テーブルＴａｎ＋１における前記実回転角θａに対応するトルクリップル測定値の電流換算値をＣｎ＋１（θａ）とすると、電流補正値Ｉｃは、次式（b1)または(b2)で表される請求項６〜８のいずれか一項に記載のモータ制御方法。
Ａｘ≧０の場合  Ｉｃ＝Ｃｘ（θａ）      …(b1)
Ａｘ＜０の場合  Ｉｃ＝−Ｃｘ（θａ）    …(b2)
Ｃｘ［θ］＝｛（｜Ａｘ｜−Ａｎ）／（Ａｎ＋１−Ａｎ）｝・Ｃｎ＋１（θａ）
＋｛（Ａｎ＋１−｜Ａｘ｜）／（Ａｎ＋１−Ａｎ）｝・Ｃｎ（θａ）
【請求項１１】
車両の転舵機構に駆動力を付与するためのシンクロナスリラクタンスモータと、
前記モータを制御する請求項６〜１０のいずれか一項に記載のモータ制御装置とを含む、電動パワーステアリング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、シンクロナスリラクタンスモータを制御するモータ制御方法、モータ制御装置およびそれを備えた電動パワーステアリング装置に関する。
【背景技術】
【０００２】
電磁エネルギーの位置に対する変化によって発生するリラクタンストルクのみを利用して、ロータを回転させるリラクタンスモータが知られている。リラクタンスモータには、ステータおよびロータが突極部を有するスイッチトリラクタンスモータ（ＳＲＭ：Switched Reluctance Motor）と、ステータがブラシレスモータと同様の構造のシンクロナスリラクタンスモータ（ＳｙｎＲＭ：Synchronous Reluctance Motor）とがある。
【０００３】
シンクロナスリラクタンスモータ（ＳｙｎＲＭ）は、ステータおよびロータのうち、ロータのみに突極部を有している。ＳｙｎＲＭでは、ロータの突極部により、磁束の流れやすい突極部の方向（以下、「ｄ軸方向」という）と磁束が流れにくい非突極部の方向（以下、「ｑ軸方向」という）とがある。このため、ｄ軸方向のインダクタンス（以下、「ｄ軸インダクタンス」という）とｑ軸方向のインダクタンス（以下、「ｑ軸インダクタンス」という）の差によりリラクタンストルクが発生し、このリラクタンストルクによってロータが回転する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2010-64622号公報
【特許文献２】特開2010-88238号公報
【特許文献３】特開2013-85439号公報
【非特許文献】
【０００５】
【非特許文献１】長谷川  勝（中部大学）、道木  慎二（名古屋大学）、佐竹  明善（オークマ）、王  道洪（岐阜大学）、「永久磁石電動機・リラクタンスモータの駆動回路技術とドライブ制御技術  −６．リラクタンスモータ制御技術−  」、平成１６年電気学会産業応用部門大会論文集、Ｉ−１１９〜Ｉ−１２４（２００４）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本出願人は、ＳｙｎＲＭをブラシレスモータと同様な方法で制御する方法を開発している。ＳｙｎＲＭを駆動する場合には、ステータに電流を流してロータを励磁する。これにより、ロータが磁化され、ロータが回転する。ＳｙｎＲＭを駆動した場合、ブラシレスモータに比べてトルククリップルが大きいことが判明した。
この発明の目的は、制御によってシンクロナスリラクタンスモータのトルクリップルを低減させることができるモータ制御方法、モータ制御装置およびそれを備えた電動パワーステアリング装置を提供することである。
【課題を解決するための手段】
【０００７】
請求項１記載の発明は、複数種類の電流指令値に対するトルクリップルが予め測定されているシンクロナスリラクタンスモータ（１８）を制御するモータ制御方法であって、前記複数種類の電流指令値毎に、ロータ回転角毎にトルクリップル測定値に応じた値を記憶した複数種類のテーブルを作成する第１ステップと、前記モータの電流指令値を設定する第２ステップと、前記モータのロータ（１００）の実回転角を検出する第３ステップと、前記複数種類のテーブルのうちの２種類のテーブルを用いて、前記第２ステップによって設定されている電流指令値および前記第３ステップによって検出されている実回転角に対応したトルクリップルを打ち消すための電流補正値を演算する第４ステップと、前記第４ステップによって演算される電流補正値を、前記第２ステップによって設定される電流指令値に加算する第５ステップと、前記第５ステップによって電流補正値が加算された後の電流指令値に基づいて、前記モータを制御する第６ステップと、を含むモータ制御方法である。なお、括弧内の英数字は、後述の実施形態における対応構成要素等を表すが、むろん、この発明の範囲は当該実施形態に限定されない。以下、この項において同じ。
【０００８】
この発明によれば、電流指令値およびロータの実回転角に対応したトルクリップルを打ち消すための電流補正値を用いて電流指令値が補正されるので、シンクロナスリラクタンスモータのトルクリップルを低減することが可能となる。また、複数のテーブルを用いて、電流補正値を演算しているので、電流指令値およびロータの実回転角に対応したトルクリップルを打ち消すための電流補正値を正確に演算できる。
【０００９】
請求項２記載の発明は、２種類の電流指令値に対するトルクリップルが予め測定されており、前記複数種類のテーブルが、前記２種類の電流指令値毎に作成された２種類のテーブルである、請求項１に記載のモータ制御方法である。
請求項３記載の発明は、Ｎを３以上の予め定められた整数とすると、Ｎ種類の電流指令値Ａ１，Ａ２，…，ＡＮ−１，ＡＮ(ただし、ｎ＝１，２，…，Ｎ−１とすると、０＜Ａｎ＜Ａｎ＋１）に対するトルクリップルが予め測定されており、前記複数種類のテーブルが、前記Ｎ種類の電流指令値Ａ１，Ａ２，…，ＡＮ−１，ＡＮ毎に作成されたＮ種類のテーブルＴａ１，Ｔａ２，…，ＴａＮ−１，ＴａＮであり、前記第４ステップは、前記第２ステップによって設定されている電流指令値をＡｘとすると、｜Ａｘ｜≦Ａ２である場合には、Ｔａ１とＴａ２の２種類のテーブルを用いて電流補正値を演算し、｜Ａｘ｜＞ＡＮ−１である場合には、ＴａＮ−１とＴａＮの２種類のテーブルを用いて電流補正値を演算し、Ａ２＜｜Ａｘ｜≦ＡＮ−１である場合には、Ａｎ＜｜Ａｘ｜≦Ａｎ＋１を満たす２種類の電流指令値Ａｎ，Ａｎ＋１に対応する２種類のテーブルを用いて電流補正値を演算する、請求項１に記載のモータ制御方法である。
【００１０】
この構成によれば、電流指令値およびロータの実回転角に対応したトルクリップルを打ち消すための電流補正値をより正確に演算することができる。これにより、シンクロナスリラクタンスモータのトルクリップルをより効果的に低減することができる。
請求項４記載の発明は、前記複数種類のテーブルには、ロータ回転角毎にトルクリップル測定値が記憶されており、電流補正値を演算するために用いられる２種類のテーブルを、電流指令値Ａｎに対するテーブルＴａｎおよび電流指令値Ａｎ＋１に対するＴａｎ＋１とし、前記第２ステップによって設定されている電流指令値をＡｘとし、前記第３ステップによって検出されている実回転角をθａとし、テーブルＴａｎにおける前記実回転角θａに対応するトルクリップル測定値をＢｎ（θａ）とし、テーブルＴａｎ＋１における前記実回転角θａに対応するトルクリップル測定値をＢｎ＋１（θａ）とし、前記電動モータのトルク定数をＫＴとすると、電流補正値Ｉｃは、次式（a1)または(a2)で表される、請求項１〜３のいずれか一項に記載のモータ制御方法である。
【００１１】
Ａｘ≧０の場合  Ｉｃ＝Ｂｘ（θａ）／ＫＴ      …(a1)
Ａｘ＜０の場合  Ｉｃ＝−Ｂｘ（θａ）／ＫＴ    …(a2)
Ｂｘ（θａ）＝｛（｜Ａｘ｜−Ａｎ）／（Ａｎ＋１−Ａｎ）｝・Ｂｎ＋１（θａ）
＋｛（Ａｎ＋１−｜Ａｘ｜）／（Ａｎ＋１−Ａｎ）｝・Ｂｎ（θａ）
請求項５記載の発明は、前記複数種類のテーブルには、ロータ回転角毎にトルクリップル測定値の電流換算値が記憶されており、電流補正値を演算するために用いられる２種類のテーブルを、電流指令値Ａｎに対するテーブルＴａｎおよび電流指令値Ａｎ＋１に対するＴａｎ＋１とし、前記第２ステップによって設定されている電流指令値をＡｘとし、前記第３ステップによって検出されている実回転角をθａとし、テーブルＴａｎにおける前記実回転角θａに対応するトルクリップル測定値の電流換算値をＣｎ（θａ）とし、テーブルＴａｎ＋１における前記実回転角θａに対応するトルクリップル測定値の電流換算値をＣｎ＋１（θａ）とすると、電流補正値Ｉｃは、次式（b1)または(b2)で表される請求項１〜３のいずれか一項に記載のモータ制御方法である。
【００１２】
Ａｘ≧０の場合  Ｉｃ＝Ｃｘ（θａ）      …(b1)
Ａｘ＜０の場合  Ｉｃ＝−Ｃｘ（θａ）    …(b2)
Ｃｘ［θ］＝｛（｜Ａｘ｜−Ａｎ）／（Ａｎ＋１−Ａｎ）｝・Ｃｎ＋１（θａ）
＋｛（Ａｎ＋１−｜Ａｘ｜）／（Ａｎ＋１−Ａｎ）｝・Ｃｎ（θａ）
請求項６記載の発明は、複数種類の電流指令値に対するトルクリップルが予め測定されているシンクロナスリラクタンスモータ（１８）を制御するモータ制御装置（１２）であって、前記複数種類の電流指令値毎に作成され、ロータ回転角毎にトルクリップル測定値に応じた値を記憶した複数種類のテーブルと、前記モータの電流指令値を設定する電流指令値設定手段（４１，４４）と、前記モータの実回転角を検出する回転角検出手段（５３）と、前記複数種類のテーブルのうちの２種類のテーブルを用いて、前記電流指令値設定手段によって設定されている電流指令値および前記回転角検出手段によって検出されている実回転角に対応したトルクリップルを打ち消すための電流補正値を演算する電流補正値演算手段（６１）と、前記電流補正値演算手段によって演算される電流補正値を、前記電流指令値設定手段によって設定される電流指令値に加算する加算手段（６２）と、前記加算手段によって電流補正値が加算された後の電流指令値に基づいて、前記モータを制御する制御手段（４６，４８）と、を含むモータ制御装置である。
【００１３】
この発明によれば、電流指令値およびロータの実回転角に対応したトルクリップルを打ち消すための電流補正値を用いて電流指令値が補正されるので、シンクロナスリラクタンスモータのトルクリップルを低減することが可能となる。また、複数のテーブルを用いて、電流補正値を演算しているので、電流指令値およびロータの実回転角に対応したトルクリップルを打ち消すための電流補正値を正確に演算できる。
【００１４】
請求項７記載の発明は、２種類の電流指令値に対するトルクリップルが予め測定されており、前記複数種類のテーブルが、前記２種類の電流指令値毎に作成された２種類のテーブルである、請求項６に記載のモータ制御装置である。
請求項８記載の発明は、Ｎを３以上の予め定められた整数とすると、Ｎ種類の電流指令値Ａ１，Ａ２，…，ＡＮ−１，ＡＮ(ただし、ｎ＝１，２，…，Ｎ−１とすると、０＜Ａｎ＜Ａｎ＋１）に対するトルクリップルが予め測定されており、前記複数種類のテーブルが、前記Ｎ種類の電流指令値Ａ１，Ａ２，…，ＡＮ−１，ＡＮ毎に作成されたＮ種類のテーブルＴａ１，Ｔａ２，…，ＴａＮ−１，ＴａＮであり、前記電流補正値演算手段は、前記第２ステップによって設定されている電流指令値をＡｘとすると、｜Ａｘ｜≦Ａ２である場合には、Ｔａ１とＴａ２の２種類のテーブルを用いて電流補正値を演算し、｜Ａｘ｜＞ＡＮ−１である場合には、ＴａＮ−１とＴａＮの２種類のテーブルを用いて電流補正値を演算し、Ａ２＜｜Ａｘ｜≦ＡＮ−１である場合には、Ａｎ＜｜Ａｘ｜≦Ａｎ＋１を満たす２種類の電流指令値Ａｎ，Ａｎ＋１に対応する２種類のテーブルを用いて電流補正値を演算するように構成されている、請求項６に記載のモータ制御装置である。
【００１５】
この構成によれば、電流指令値およびロータの実回転角に対応したトルクリップルを打ち消すための電流補正値をより正確に演算することができる。これにより、シンクロナスリラクタンスモータのトルクリップルをより効果的に低減することができる。
請求項９記載の発明は、前記複数種類のテーブルには、ロータ回転角毎にトルクリップル測定値が記憶されており、電流補正値を演算するために用いられる２種類のテーブルを、電流指令値Ａｎに対するテーブルＴａｎおよび電流指令値Ａｎ＋１に対するＴａｎ＋１とし、前記電流指令値設定手段によって設定されている電流指令値をＡｘとし、前記回転角検出手段によって検出されている実回転角をθａとし、テーブルＴａｎにおける前記実回転角θａに対応するトルクリップル測定値をＢｎ［θ］とし、テーブルＴｎ＋１における前記実回転角θａに対応するトルクリップル測定値をＢｎ＋１［θ］とし、前記電動モータのトルク定数をＫＴとすると、電流補正値Ｉｃは、次式（a1)または(a2)で表される、請求項６〜８のいずれか一項に記載のモータ制御装置。
【００１６】
Ａｘ≧０の場合  Ｉｃ＝Ｂｘ（θａ）／ＫＴ      …(a1)
Ａｘ＜０の場合  Ｉｃ＝−Ｂｘ（θａ）／ＫＴ    …(a2)
Ｂｘ（θａ）＝｛（｜Ａｘ｜−Ａｎ）／（Ａｎ＋１−Ａｎ）｝・Ｂｎ＋１（θａ）
＋｛（Ａｎ＋１−｜Ａｘ｜）／（Ａｎ＋１−Ａｎ）｝・Ｂｎ（θａ）
請求項１０記載の発明は、前記複数種類のテーブルには、ロータ回転角毎にトルクリップル測定値の電流換算値が記憶されており、電流補正値を演算するために用いられる２種類のテーブルを、電流指令値Ａｎに対するテーブルＴａｎおよび電流指令値Ａｎ＋１に対するＴａｎ＋１とし、前記電流指令値設定手段によって設定されている電流指令値をＡｘとし、前記回転角検出手段によって検出されている実回転角をθａとし、テーブルＴａｎにおける前記実回転角θａに対応するトルクリップル測定値の電流換算値をＣｎ（θａ）とし、テーブルＴａｎ＋１における前記実回転角θａに対応するトルクリップル測定値の電流換算値をＣｎ＋１（θａ）とすると、電流補正値Ｉｃは、次式（b1)または(b2)で表される請求項６〜８のいずれか一項に記載のモータ制御方法である。
【００１７】
Ａｘ≧０の場合  Ｉｃ＝Ｃｘ（θａ）      …(b1)
Ａｘ＜０の場合  Ｉｃ＝−Ｃｘ（θａ）    …(b2)
Ｃｘ［θ］＝｛（｜Ａｘ｜−Ａｎ）／（Ａｎ＋１−Ａｎ）｝・Ｃｎ＋１（θａ）
＋｛（Ａｎ＋１−｜Ａｘ｜）／（Ａｎ＋１−Ａｎ）｝・Ｃｎ（θａ）
請求項１１記載の発明は、車両の転舵機構（４）に駆動力を付与するためのシンクロナスリラクタンスモータ（１８）と、前記モータを制御する請求項６〜１０のいずれか一項に記載のモータ制御装置（１２）とを含む、電動パワーステアリング装置（１）である。
【００１８】
この発明によれば、シンクロナスリラクタンスモータのトルクリップルを低減できる、電動パワーステアリング装置を実現することができる。
【図面の簡単な説明】
【００１９】
【図１】図１は、本発明の一実施形態に係るモータ制御装置が適用された電動パワーステアリング装置の概略構成を示す模式図である。
【図２】図２は、電動モータの構成を説明するための図解図である。
【図３】図３は、本実施形態におけるトルクリップル推定方法の考え方について説明するための説明図である。
【図４】図４Ａは、２種類の電流指令値に対する２種類のトルクリップル測定値から電流指令値に対するトルクリップルを推定した場合の推定結果を示すグラフであり、図４Ｂおよび図４Ｃは、それぞれ１種類の電流指令値に対する１種類のトルクリップル測定値から電流指令値に対するトルクリップルを推定した場合の推定結果を示すグラフである。
【図５】図５は、図１のＥＣＵの電気的構成を示す概略図である。
【図６】図６は、補正値演算部の動作例を説明するためのフローチャートである。
【図７】図７は、補正値演算部の変形例の動作例を説明するためのフローチャートである。
【図８】図８は、本出願人が既に開発しているモータ制御装置の電気的構成を示す概略図である。
【図９】図９は、検出操舵トルクＴｈに対する電流指令値Ｉａ＊の設定例を示すグラフである。
【図１０】図１０は、複数の電機子電流Ｉａ毎に取得した電流位相角βに対するモータトルクＴの特性データの一例を示すグラフである。
【図１１】図１１は、各電機子電流Ｉａに対してモータトルクＴが最大となる電流位相角βの実測データと、各電機子電流ＩａとモータトルクＴが最大となる電流位相角βとの関係を近似的に表した直線とを示すグラフである。
【図１２】図１２は、電流指令値Ｉａ＊が正の値である場合に、図８のモータ制御装置によって、電動モータを正転方向に回転させることができることを説明するための模式図である。
【図１３】図１３は、電流指令値Ｉａ＊が負の値である場合に、図８のモータ制御装置によって、電動モータを逆転方向に回転させることができることを説明するための模式図である。
【図１４】図１４の曲線Ｓ１、Ｓ２およびＳ３は、それぞれ電流指令値が４２［Ａ］、７０［Ａ］および８４［Ａ］である場合の電動モータのトルクリップル測定値を示すグラフである。
【発明を実施するための形態】
【００２０】
以下では、この発明の実施形態を、添付図面を参照して詳細に説明する。
図１は、本発明の一実施形態に係るモータ制御装置が適用された電動パワーステアリング装置の概略構成を示す模式図である。
電動パワーステアリング装置１は、車両を操向するための操舵部材としてのステアリングホイール２と、このステアリングホイール２の回転に連動して転舵輪３を転舵する転舵機構４と、運転者の操舵を補助するための操舵補助機構５とを備えている。ステアリングホイール２と転舵機構４とは、ステアリングシャフト６および中間軸７を介して機械的に連結されている。
【００２１】
ステアリングシャフト６は、ステアリングホイール２に連結された入力軸８と、中間軸７に連結された出力軸９とを含む。入力軸８と出力軸９とは、トーションバー１０を介して同一軸線上で相対回転可能に連結されている。すなわち、ステアリングホイール２が回転されると、入力軸８および出力軸９は、互いに相対回転しつつ同一方向に回転するようになっている。
【００２２】
ステアリングシャフト６の周囲には、トルクセンサ１１が設けられている。トルクセンサ１１は、入力軸８および出力軸９の相対回転変位量に基づいて、ステアリングホイール２に与えられた操舵トルクを検出する。トルクセンサ１１によって検出される操舵トルクは、ＥＣＵ（電子制御ユニット：Electronic  Control  Unit）１２に入力される。
転舵機構４は、ピニオン軸１３と、転舵軸としてのラック軸１４とを含むラックアンドピニオン機構からなる。ラック軸１４の各端部には、タイロッド１５およびナックルアーム（図示略）を介して転舵輪３が連結されている。ピニオン軸１３は、中間軸７に連結されている。ピニオン軸１３は、ステアリングホイール２の操舵に連動して回転するようになっている。ピニオン軸１３の先端には、ピニオン１６が連結されている。
【００２３】
ラック軸１４は、自動車の左右方向（直進方向に直交する方向）に沿って直線状に延びている。ラック軸１４の軸方向の中間部には、ピニオン１６に噛み合うラック１７が形成されている。このピニオン１６およびラック１７によって、ピニオン軸１３の回転がラック軸１４の軸方向移動に変換される。ラック軸１４を軸方向に移動させることによって、転舵輪３を転舵することができる。
【００２４】
ステアリングホイール２が操舵（回転）されると、この回転が、ステアリングシャフト６および中間軸７を介して、ピニオン軸１３に伝達される。そして、ピニオン軸１３の回転は、ピニオン１６およびラック１７によって、ラック軸１４の軸方向移動に変換される。これにより、転舵輪３が転舵される。
操舵補助機構５は、転舵機構４に駆動力を与えるための操舵補助用の電動モータ１８と、電動モータ１８の出力トルクを転舵機構４に伝達するための減速機構１９とを含む。電動モータ１８は、この実施形態では、シンクロナスリラクタンスモータ（ＳｙｎＲＭ）からなる。減速機構１９は、ウォーム軸２０と、このウォーム軸２０と噛み合うウォームホイール２１とを含むウォームギヤ機構からなる。減速機構１９は、伝達機構ハウジングとしてのギヤハウジング２２内に収容されている。
【００２５】
ウォーム軸２０は、電動モータ１８によって回転駆動される。また、ウォームホイール２１は、ステアリングシャフト６とは同方向に回転可能に連結されている。ウォームホイール２１は、ウォーム軸２０によって回転駆動される。
電動モータ１８によってウォーム軸２０が回転駆動されると、ウォームホイール２１が回転駆動され、ステアリングシャフト６が回転する。そして、ステアリングシャフト６の回転は、中間軸７を介してピニオン軸１３に伝達される。ピニオン軸１３の回転は、ラック軸１４の軸方向移動に変換される。これにより、転舵輪３が転舵される。すなわち、電動モータ１８によってウォーム軸２０を回転駆動することによって、転舵輪３が転舵されるようになっている。
【００２６】
電動モータ１８のロータの回転角（ロータ回転角）は、レゾルバ等の回転角センサ２５によって検出される。回転角センサ２５の出力信号は、ＥＣＵ１２に入力される。電動モータ１８は、モータ制御装置としてのＥＣＵ１２によって制御される。
図２は、電動モータ１８の構成を説明するための図解図である。
電動モータ１８は、前述したようにシンクロナスリラクタンスモータであり、図２に図解的に示すように、周方向に間隔をおいて配置された複数の突極部を有するロータ１００と、電機子巻線を有するステータ１０５とを備えている。電機子巻線は、Ｕ相のステータ巻線１０１、Ｖ相のステータ巻線１０２およびＷ相のステータ巻線１０３が星型結線されることにより構成されている。
【００２７】
各相のステータ巻線１０１，１０２，１０３の方向にＵ軸、Ｖ軸およびＷ軸をとった三相固定座標（ＵＶＷ座標系）が定義される。また、ロータ１００の回転中心側から外周部へ磁束の流れやすい突極部の方向にｄ軸方向をとり、ロータ１００の回転中心側から外周部へ磁束が流れにくい非突極部の方向にｑ軸方向をとった二相回転座標系（ｄｑ座標系。実回転座標系）が定義される。ｄｑ座標系は、ロータ１００の回転角（ロータ回転角）θに従う実回転座標系である。ロータ回転角θ（電気角）は、この実施形態では、隣接する２つの突起部（ｄ軸）のうちの基準となる一方の突極部（ｄ軸）のＵ軸から反時計回りの回転角として定義される。基準となる前記一方の突極部の方向を＋ｄ軸方向といい、それに隣接する他方の突極部の方向を−ｄ軸方向ということにする。＋ｄ軸に対して電気角で＋９０度回転した軸を＋ｑ軸とい、＋ｄ軸に対して電気角で−９０度回転した軸を−ｑ軸ということにする。ロータ１００（突極部）に生じる磁極（Ｎ極およびＳ極）は、ｄｑ座標系における電流ベクトルＩａの方向によって決定される。この実施形態では、電動モータ１８の正転方向は、図２におけるロータ１００の反時計方向に対応し、電動モータ１８の逆転方向は、図２におけるロータ１００の時計方向に対応するものとする。
【００２８】
通常は、ロータ回転角θを用いることによって、ＵＶＷ座標系とｄｑ座標系との間での座標変換が行われる（たとえば、特開２００９−１３７３２３号公報の式（１），（２）参照）。ただし、この実施形態では、後述するように、ロータ回転角θの代わりに、座標変換用回転角δを用いて座標変換が行われる。
図２において、Ｉａは、回転磁界をつくるための電流ベクトル（電機子電流ベクトル）である。βは電流位相角であり、電機子電流ベクトルＩａとｄ軸との位相差である。
【００２９】
本実施形態のモータ制御装置としてのＥＣＵ１２について説明する前に、図８〜図１３を参照して、本出願人が既に開発しているモータ制御装置２００について説明する。なお、ＥＣＵ１２以外の電動パワーステアリング装置の構成は、図１の電動パワーステアリング装置１の構成と同じであるものとして、モータ制御装置２００について説明する。
図８は、本出願人が既に開発しているモータ制御装置２００の電気的構成を示す概略図である。
【００３０】
モータ制御装置２００は、マイクロコンピュータ２０１と、このマイクロコンピュータ２０１によって制御され、電動モータ１８に電力を供給する駆動回路（インバータ回路）３２と、電動モータ１８の各相のステータ巻線１０１，１０２，１０３に流れる電流を検出する電流検出部３３とを備えている。
電流検出部３３は、電動モータ１８の各相のステータ巻線に流れる相電流ｉＵ，ｉＶ，ｉＷ（以下、総称するときには「三相検出電流ｉＵ，ｉＶ，ｉＷ」という）を検出する。これらは、ＵＶＷ座標系における各座標軸方向の電流値である。
【００３１】
マイクロコンピュータ２０１は、ＣＰＵおよびメモリ（ＲＯＭ、ＲＡＭ、不揮発性メモリなど）を備えており、所定のプログラムを実行することによって、複数の機能処理部として機能するようになっている。この複数の機能処理部には、電流指令値設定部４１と、ｄ軸電流指令値設定部４３と、ｑ軸電流指令値設定部４４と、ｄ軸電流偏差演算部４５と、ｑ軸電流偏差演算部４６と、ｄ軸ＰＩ（比例積分）制御部４７と、ｑ軸ＰＩ（比例積分）制御部４８と、ｄ軸指示電圧生成部４９と、ｑ軸指示電圧生成部５０と、二相／三相座標変換部５１と、ＰＷＭ制御部５２と、回転角演算部５３と、電流位相角演算部５４と、座標変換用回転角設定部５５と、三相／二相座標変換部５６とが含まれている。
【００３２】
電流指令値設定部４１は、電動モータ１８の電機子電流の指令値である電流指令値Ｉａ＊を設定する。具体的には、電流指令値設定部４１は、トルクセンサ１１によって検出される操舵トルク（検出操舵トルクＴｈ）に基づいて電流指令値Ｉａ＊を設定する。検出操舵トルクＴｈに対する電流指令値Ｉａ＊の設定例は、図９に示されている。検出操舵トルクＴｈは、たとえば左方向への操舵のためのトルクが正の値にとられ、右方向への操舵のためのトルクが負の値にとられている。電動モータ１８の左方向への操舵を補助するためのモータトルクの方向は、電動モータ１８の正転方向に対応し、右方向への操舵を補助するためのモータトルクの方向は、電動モータ１８の逆転方向に対応するものとする。電流指令値Ｉａ＊は、電動モータ１８から左方向操舵のための操舵補助力を発生させるべきときには正の値とされ、電動モータ１８から右方向操舵のための操舵補助力を発生させるべきときには負の値とされる。
【００３３】
電流指令値Ｉａ＊は、検出操舵トルクＴｈの正の値に対しては正をとり、検出操舵トルクＴｈの負の値に対しては負の値をとる。検出操舵トルクＴｈが零のときには、電流指令値Ｉａ＊は零とされる。そして、検出操舵トルクＴｈの絶対値が大きくなるほど、電流指令値Ｉａ＊の絶対値は大きな値とされる。これにより、検出操舵トルクＴｈの絶対値が大きくなるほど、操舵補助力を大きくすることができる。
【００３４】
電流指令値設定部４１は、たとえば、図９に示されるような操舵トルクＴｈと電流指令値Ｉａ＊との関係を記憶したマップまたはそれらの関係を表す演算式を用いて、操舵トルクＴｈに応じた電流指令値Ｉａ＊を設定する。電流指令値設定部４１によって設定された電流指令値Ｉａ＊は、ｑ軸電流指令値設定部４４に与えられる。
ｑ軸電流指令値生成部４４は、電流指令値設定部４１から与えられた電流指令値Ｉａ＊を、ｑ軸電流指令値ｉｑ＊として設定する。つまり、電流指令値設定部４１によって設定された電流指令値Ｉａ＊がｑ軸電流指令値ｉｑ＊となる。ｄ軸電流指令値設定部４３は、ｄ軸電流指令値Ｉｄ＊を設定する。ｄ軸電流指令値Ｉｄ＊は、零に設定される。つまり、ｑ軸電流指令値ｉｑ＊が有意値とされ、ｄ軸電流指令値Ｉｄ＊が零とされる。ｑ軸電流指令値ｉｑ＊は、ｄ軸電流指令値ｉｄ＊およびｑ軸電流指令値ｉｑ＊を総称して、「二相指示電流ｉｄ＊，ｉｑ＊」という場合がある。
【００３５】
回転角演算部５３は、回転角センサ２５の出力信号に基づいて、電動モータ１８のロータの回転角（ロータ回転角、実回転角）θを演算する。回転角演算部５３によって演算されたロータ回転角θは、座標変換用回転角設定部５５に与えられる。
電流位相角演算部５４は、電流検出部３３によって検出された三相検出電流ｉＵ，ｉＶ，ｉＷに基づいて、電流位相角β（電気角）［deg］を演算する。電流位相角演算部５４の動作の詳細については、後述する。電流位相角演算部５４によって演算された電流位相角βは、座標変換用回転角設定部５５に与えられる。
【００３６】
座標変換用回転角設定部５５は、二相／三相座標変換部５１および三相／二相座標変換部５６において座標変換に用いられる座標変換用回転角δを演算する。具体的には、座標変換用回転角設定部５５は、回転角演算部５３によって演算されたロータ回転角θと、電流位相角演算部５４によって演算された電流位相角βと、電流指令値設定部４１によって設定された電流指令値Ｉａ＊とに基づいて、座標変換用回転角δを演算する。座標変換用回転角設定部５５の動作の詳細については後述する。
【００３７】
電流検出部３３によって検出された三相検出電流ｉＵ，ｉＶ，ｉＷは、三相／二相座標変換部５６にも与えられる。三相／二相座標変換部５６は、座標変換用回転角設定部５５によって演算された座標変換用回転角δをロータ回転角θの代わりに用いて、三相検出電流ｉＵ，ｉＶ，ｉＷをｄ軸電流ｉｄおよびｑ軸電流ｉｑに変換する。以下、ｄ軸電流ｉｄおよびｑ軸電流ｉｑを総称するときには「二相検出電流ｉｄ，ｉｑ」という。
【００３８】
三相／二相座標変換部５６によって得られたｄ軸電流ｉｄは、ｄ軸電流偏差演算部４５に与えられる。三相／二相座標変換部５６によって得られたｑ軸電流ｉｑは、ｑ軸電流偏差演算部４６に与えられる。
ｄ軸電流偏差演算部４５は、ｄ軸電流指令値ｉｄ＊に対するｄ軸電流ｉｄの偏差を演算する。ｄ軸電流偏差演算部４５によって演算された電流偏差は、ｄ軸ＰＩ制御部４７に与えられて、ＰＩ演算処理を受ける。ｄ軸指示電圧生成部４９は、ｄ軸ＰＩ制御部４７の演算結果に応じて、ｄ軸指示電圧ｖｄ＊を生成する。
【００３９】
ｑ軸電流偏差演算部４６は、ｑ軸電流指令値ｉｑ＊に対するｑ軸電流ｉｑの偏差を演算する。ｑ軸電流偏差演算部４６によって演算された電流偏差は、ｑ軸ＰＩ制御部４８に与えられて、ＰＩ演算処理を受ける。ｑ軸指示電圧生成部５０は、ｑ軸ＰＩ制御部４８の演算結果に応じて、ｑ軸指示電圧ｖｑ＊を生成する。以下、ｄ軸指示電圧ｖｄ＊およびｑ軸指示電圧ｖｑ＊を総称するときには「二相指示電圧ｖｄ＊，ｖｑ＊」という。
【００４０】
二相指示電圧ｖｄ＊，ｖｑ＊は、二相／三相座標変換部５１に与えられる。二相／三相座標変換部５１は、座標変換用回転角設定部５５によって演算された座標変換用回転角δをロータ回転角θの代わりに用いて、ｄ軸指示電圧ｖｄ＊およびｑ軸指示電圧ｖｑ＊を、Ｕ相，Ｖ相およびＷ相の指示電圧ｖＵ＊，ｖＶ＊，ｖＷ＊に変換する。以下、Ｕ相，Ｖ相およびＷ相の指示電圧ｖＵ＊，ｖＶ＊，ｖＷ＊を総称するときには「三相指示電圧ｖＵ＊，ｖＶ＊，ｖＷ＊」という。
【００４１】
ＰＷＭ制御部５２は、Ｕ相指示電圧ｖＵ＊、Ｖ相指示電圧ｖＶ＊およびＷ相指示電圧ｖＷ＊にそれぞれ対応するデューティ比のＵ相ＰＷＭ制御信号、Ｖ相ＰＷＭ制御信号およびＷ相ＰＷＭ制御信号を生成し、駆動回路３２に供給する。
駆動回路３２は、Ｕ相、Ｖ相およびＷ相に対応した三相インバータ回路からなる。このインバータ回路を構成するパワー素子がＰＷＭ制御部５２から与えられるＰＷＭ制御信号によって制御されることにより、三相指示電圧ｖＵ＊，ｖＶ＊，ｖＷ＊に相当する電圧が電動モータ１８の各相のステータ巻線に印加されることになる。
【００４２】
電流偏差演算部４５，４６およびＰＩ制御部４７，４８は、電流フィードバック制御手段を構成している。この電流フィードバック制御手段の働きによって、電動モータ１８に流れるモータ電流が、ｄ軸およびｑ軸電流指令値設定部４３，４４によって演算される二相指示電流ｉｄ＊，ｉｑ＊に近づくように制御される。
次に電流位相角演算部５４の動作について詳しく説明する。電流位相角演算部５４は、電流検出部３３によって検出された三相検出電流ｉＵ，ｉＶ，ｉＷから演算される電機子電流Ｉａと、予め設定された電流位相角演算式とに基づいて、電機子電流Ｉａに対してモータトルクが最大値に近い値となる電流位相角β（電気角）［deg］を演算する。
【００４３】
この実施形態では、座標変換部５６によって得られるｑ軸電流ｉｑが、電流位相角βを演算するための電機子電流Ｉａとして用いられる。電流位相角演算式の作成方法について説明する。
電動モータ１８を高効率で駆動するためには、電機子電流に対するモータトルクの比が大きくなるように電動モータ１８を制御すればよい。  
【００４４】
極対数がＰｎであるシンクロナスリラクタンスモータにおけるモータトルクＴは、次式(1)で表される。
Ｔ＝Ｐｎ・（Ｌｄ−Ｌｑ）・ｉｄ・ｉｑ      …(1)
Ｌｄはｄ軸インダクタンス［H］であり、Ｌｑはｑ軸インダクタンス［H］である。また、ｉｄはｄ軸電流［A］であり、ｉｑはｑ軸電流［A］である。
【００４５】
電機子電流の大きさをＩａ［A］とし、電流位相差をβ［deg］とすると、ｉｑ＝Ｉａ・sinβ，ｉｄ＝Ｉａ・cosβとなるので、モータトルクＴは、次式(2)で表される。なお、電流位相差βは、回転磁界をつくるための電流ベクトル（電機子電流ベクトル）とｄ軸との位相差である。
Ｔ＝（１／２）・Ｐｎ・（Ｌｄ−Ｌｑ）・Ｉａ２sin２β      …(2)
したがって、ｄ軸インダクタンスＬｄおよびｑ軸インダクタンスＬｑが電流位相角βによって変動しなければ、電流位相角βが４５［deg］のときにモータトルクＴは最大となる。しかしながら、ＳｙｎＲＭでは、ｄ軸インダクタンスＬｄおよびｑ軸インダクタンスＬｑがロータコアの磁気飽和の影響を受けて変動するため、モータトルクＴは電流位相角βが４５［deg］のときに必ずしも最大にならない。
【００４６】
そこで、この実施形態では、電動モータ１８に対して予め実験を行うことにより、使用する電機子電流Ｉａの範囲において、複数の電機子電流Ｉａ毎に電流位相角βに対するモータトルクＴの特性データを取得する。
図１０は、複数の電機子電流Ｉａ毎に取得した電流位相角βに対するモータトルクＴの特性データの一例を示すグラフである。図１０の特性データは、前記非特許文献１に掲載のデータを転用したものである。図１０では、横軸に電流位相角βをとり、縦軸にモータトルクＴをとり、各電機子電流Ｉａの電流位相角βに対するモータトルクＴの特性を、それぞれ曲線で表している。
【００４７】
図１０のグラフにおいて、各電機子電流Ｉａに対応する電流位相角−モータトルク特性曲線上の最大トルク値を結ぶ曲線を直線近似することにより、電機子電流Ｉａとその電機子電流Ｉａに対してモータトルクが最大値に近い値となる電流位相角βとの関係を表す近似式を求める。具体的には、次式（3）に基づいて、電機子電流Ｉａと電流位相角βとの関係を表す近似式を求める。なお、電機子電流Ｉａが零のときにモータトルクが最大となる電流位相角βは４５度になるものとする。
【００４８】
β＝｛（βｍａｘ−βｍｉｎ）／Ｉａｍａｘ｝・Ｉａ＋βｍｉｎ    …(3)
Ｉａｍａｘは、電機子電流Ｉａの最大値（電流指令値Ｉａ＊の最大値）であり、この例では、Ｉａｍａｘ＝５０[A]である。βｍａｘは、電機子電流Ｉａが最大値Ｉａｍａｘである場合に、モータトルクＴが最大値となる電流位相角βであり、この例では、βｍａｘ＝６６[deg]であるとする。βｍｉｎは、電機子電流Ｉａが最小値（零）である場合に、モータトルクＴが最大値となる電流位相角βであり、この例では、βｍｉｎ＝４５[deg]であるとする。
【００４９】
前記式(3)に、Ｉａｍａｘ＝５０[A]、βｍａｘ＝６６[deg]およびβｍｉｎ＝４５[deg]を代入すると、次式(4)で表されるような近似式が得られる。
β＝（２１／５０)・Ｉａ＋４５    …(4)
式(4)が、電機子電流Ｉａから電流位相角βを演算するための演算式（電流位相角演算式）となる。
【００５０】
図１１の折れ線ａは、各電機子電流Ｉａに対してモータトルクＴが最大となる電流位相角βの実測データを示すグラフである。図１１の直線ｂは、前記式(4)で表される近似直線を示している。
電流位相角演算部５４には、前述のようにして求められた電流位相角演算式（例えば前記式(4)）が予め設定されている。電流位相角演算部５４は、座標変換部５６から得られたｑ軸電流ｉｑの絶対値を電機子電流Ｉａとし、予め設定されている電流位相角演算式と電機子電流Ｉａとに基づいて、電流指令値Ｉａに対してモータトルクが最大値に近い値となる電流位相角βを演算する。
【００５１】
次に、座標変換用回転角設定部５５の動作について詳しく説明する。座標変換用回転角設定部５５は、電流指令値Ｉａ＊が零以上の値である場合には、つまり電動モータ１８が停止しているかまたは電動モータ１８を回転させるべき方向が正転方向である場合には、次式(5)に基づいて、座標変換用回転角δを設定する。
δ＝θ−（９０−β）    …(5)
一方、電流指令値Ｉａ＊が零未満の値である場合には、つまり電動モータ１８を回転させるべき方向が逆転方向である場合には、座標変換用回転角設定部５５は、次式(6)に基づいて、座標変換用回転角δを設定する。
【００５２】
δ＝θ＋（９０−β）    …(6)
このように、電動モータ１８を回転させるべき方向に応じて、座標変換用回転角δが｛θ−（９０−β）｝または｛θ＋（９０−β）｝に設定されることにより、電動モータ１８をそれを回転させるべき方向に回転駆動することができる。
以下、この理由について説明する。以下において、演算式ｉｄ＊＝｜Ｉａ＊｜cosβおよび演算式ｉｑ＊＝｜Ｉａ＊｜sinβに基づいてｄ軸電流指令値ｉｄ＊およびｑ軸電流指令値ｉｑ＊を設定するとともに、ｄｑ座標系とＵＶＷ座標系との間の座標変換をロータ回転角θを用いて行うような制御方法を基本制御方法ということにする。基本制御方法においては、ＳｙｎＲＭの回転方向を反転させる場合には、電流指令値Ｉａ＊の極性を変えずに、βが−βに置き換えられる。
【００５３】
まず、図１２Ａ〜図１２Ｃを参照して、電流指令値Ｉａ＊が正の値（Ｉａ＊＞０）である場合、つまり電動モータを正転方向に回転駆動させる場合について説明する。基本制御方法によって電動モータを正転方向に回転駆動させる場合を想定する。基本制御方法では、ｄ軸電流指令値ｉｄ＊およびｑ軸電流指令値Ｉｑ＊が、それぞれ演算式ｉｄ＊＝｜Ｉａ＊｜cosβおよび演算式ｉｑ＊＝｜Ｉａ＊｜sinβに基づいて設定される。また、二相／三相座標変換部および三相／二相座標変換部は回転角演算部によって演算されるロータ回転角θをそのまま用いて座標変換を行う。なお、βは４５度付近の角度であるとする。この場合には、ｄ軸電流成分ｉｄがｄ軸電流指令値ｉｄ＊（＞０）に等しくなりかつｑ軸電流成分ｉｑがｑ軸電流指令値ｉｑ＊（＞０）に等しくなるように電流制御が行われるので、電機子電流ベクトルＩａは図１２Ａに示すようになる。
【００５４】
ロータ１００には磁石が設けられてないので電動モータ１８が駆動されていないときには無極性である。ステータ巻線１０１〜１０３に電流が流れるとロータ１００に磁界が発生し、ロータ１００が磁化される。この際、ロータ１００の極性は、ステータ巻線１０１〜１０３に流れる電流の方向によって決まる。図１２Ａにおいて、電機子電流ベクトルＩａの終点がｄｑ座標系の第１象限または第４象限にある場合には、ロータ１００における＋ｄ軸方向に対応する突極部の極性がＮ極となり、−ｄ軸方向に対応する突極部の極性がＳ極となる。電機子電流ベクトルＩａの終点がｄｑ座標系の第２象限または第３象限にある場合には、ロータ１００における＋ｄ軸方向に対応する突極部の極性がＳ極となり、−ｄ軸方向に対応する突極部の極性がＮ極となる。
【００５５】
そして、極性がＮ極である突極部が、電機子電流ベクトルＩａ側に引き付けられる。したがって、図１２Ａの例では、＋ｄ軸方向に対応する突極部が電機子電流ベクトルＩａ側に引き付けられるので、ロータ１００は反時計方向（正転方向）に回転する。
次に、二相／三相座標変換部および三相／二相座標変換部は基本制御方法と同様に回転角演算部によって演算されたロータ回転角θをそのまま用いて座標変換を行うが、ｄ軸電流指令値ｉｄ＊を零に設定し、ｑ軸電流指令値ｉｑ＊を図１２Ａの電流指令値Ｉａ＊（＞０）と同じ値に設定する場合を想定する。この場合には、ｄ軸電流成分ｉｄが０となりかつｑ軸電流成分ｉｑがＩａ＊に等しくなるように電流制御が行われるので、電機子電流ベクトルＩａは図１２Ｂに示すようになる。このような制御では、電機子電流ベクトルＩａを、図１２Ａに示すような本来発生させるべき角度（方向）に発生させることができない。
【００５６】
そこで、前記モータ制御装置２００のように、ｄ軸電流指令値ｉｄ＊を零に設定し、ｑ軸電流指令値ｉｑ＊を図１２Ａの電流指令値Ｉａ＊と同じ値に設定した上で、各座標変換部５１，５６が座標変換用回転角｛θ−（９０−β）｝を用いて座標変換を行う場合を想定する。この場合には、各座標変換部５１，５５は、図１２Ｃに示すように、ｑ軸を−（９０−β）度回転させたｑ’軸と、ｄ軸を−（９０−β）度回転させたｄ’軸とからなるｄ’ｑ’座標系で、座標変換を行うことになる。この際、ｄ軸電流指令値ｉｄ＊の大きさ（＝０）がｄ’軸電流成分ｉｄ’となり、ｑ軸電流指令値ｉｄ＊（＝Ｉａ＊）の大きさがｑ’軸 電流成分ｉｑ’となるから、電機子電流ベクトルＩａは図１２Ｃに示すようになる。つまり、図１２Ａに示す電流ベクトルＩａの方向と同じ方向に電機子電流ベクトルＩａを発生させることができる。したがって、電動モータ１８を回転させるべき方向に駆動させることができる。
【００５７】
次に、図１３Ａ〜図１３Ｃを参照して、電流指令値Ｉａ＊が負の値（Ｉａ＊＜０）である場合、つまり電動モータを逆転方向に回転駆動させる場合について説明する。基本制御方法によって電動モータを逆転方向に回転駆動させる場合を想定する。電流指令値Ｉａ＊が負の値である場合には、電動モータ１８を回転させるべき方向が逆転方向であることを示している。したがって、基本制御方法では、電流指令値Ｉａ＊の極性を変えずに、βが−βに置き換えられる。つまり、ｄ軸電流指令値ｉｄ＊およびｑ軸電流指令値ｉｑ＊が、それぞれ演算式ｉｄ＊＝｜Ｉａ＊｜cos（−β）＝｜Ｉａ＊｜cosβおよび演算式ｉｑ＊＝｜Ｉａ＊｜sin（−β）＝−｜Ｉａ＊｜sinβに基づいて設定される。また、二相／三相座標変換部および三相／二相座標変換部は回転角演算部によって演算されるロータ回転角θをそのまま用いて座標変換を行う。この場合には、ｄ軸電流指令値ｉｄ＊が正の値（ｉｄ＊＞０）となり、ｑ軸電流指令値ｉｑ＊が負の値（ｉｄ＊＜０）となる。そして、ｄ軸電流成分ｉｄがｄ軸電流指令値ｉｄ＊（＞０）に等しくなりかつｑ軸電流成分ｉｑがｑ軸電流指令値ｉｑ＊（＜０）に等しくなるように電流制御が行われるので、電機子電流ベクトルＩａは図１３Ａに示すようになる。この電機子電流ベクトルＩａの終点はｄｑ座標系の第４象限にあるので、ロータ１００における＋ｄ軸方向に対応する突極部の極性がＮ極となり、−ｄ軸方向に対応する突極部の極性がＳ極となる。したがって、＋ｄ軸方向に対応する突極部が電機子電流ベクトルＩａ側に引き付けられるのでロータ１００は時計方向（逆転方向）に回転する。
【００５８】
次に、二相／三相座標変換部および三相／二相座標変換部は基本制御方法と同様に回転角演算部によって演算されたロータ回転角θをそのまま用いて座標変換を行うが、ｄ軸電流指令値ｉｄ＊を零に設定し、ｑ軸電流指令値ｉｑ＊を図１３Ａの電流指令値Ｉａ＊（＜０）と同じ値に設定する場合を想定する。この場合には、ｄ軸電流成分ｉｄが０となりかつｑ軸電流成分ｉｑがＩａ＊（＜０）に等しくなるように電流制御が行われるので、電機子電流ベクトルＩａは図１３Ｂに示すようになる。このような制御では、電機子電流ベクトルＩａを、図１３Ａに示すような本来発生させるべき角度（方向）に発生させることができない。
【００５９】
そこで、前記モータ制御装置２００のように、ｄ軸電流指令値ｉｄ＊を零に設定し、ｑ軸電流指令値ｉｑ＊を図１３Ａの電流指令値Ｉａ＊（＜０）と同じ値に設定した上で、各座標変換部５１，５６が座標変換用回転角｛θ＋（９０−β）｝を用いて座標変換を行う場合を想定する。この場合には、各座標変換部５１，５５は、図１３Ｃに示すように、ｄ軸を＋（９０−β）度回転させたｄ’軸と、ｑ軸を＋（９０−β）度回転させたｑ’軸とからなるｄ’ｑ’座標系で、座標変換を行うことになる。この際、ｄ軸電流指令値ｉｄ＊の大きさ（＝０）がｄ’軸電流成分ｉｄ’となり、ｑ軸電流指令値ｉｄ＊（＝Ｉａ＊＜０）がｑ’軸 電流成分ｉｑ’となるから、電機子電流ベクトルＩａは図１３Ｃに示すようになる。つまり、図１３Ａに示す電流ベクトルＩａの方向と同じ方向に電機子電流ベクトルＩａを発生させることができる。したがって、電動モータ（ＳｙｎＲＭ）１８を回転させるべき方向に駆動させることができる。
【００６０】
モータ制御装置２００によってＳｙｎＲＭを駆動した場合、ブラシレスモータに比べてトルクリップルが大きいことが判明した。トルクリップルとは、ロータ回転角に対する出力トルクの変化量をいう。
図１４の曲線Ｓ１、Ｓ２およびＳ３は、それぞれ電流指令値が４２［Ａ］、７０［Ａ］および８４［Ａ］である場合の電動モータ１８のトルクリップル測定値を示すグラフである。図１４では、ロータ回転角が０[deg]〜６０[deg]の範囲におけるトルクリップル測定値を示している。各トルクリップル測定値は、トルクリップル測定装置を用いて計測した電動モータ１８の出力トルクから出力トルクの平均値を減算することによって算出した。なお、図１４のグラフの横軸はロータ回転角θ(電気角)[deg]を示し、縦軸はトルクリップル[Nm]を示している。
【００６１】
図１４のグラフから、回転角に対するトルクリップルの変化態様は電流指令値が異なっても類似しているが、電流指令値が大きくなるほどトルクリップルは大きくなっていることがわかる。したがって、１つの電流指令値に対するトルクリップル測定値から、任意の電流指令値に対するトルクリップルを推定することが可能である。たとえば、電流指令値が４２［Ａ］である場合のトルクリップル測定値を用いて、電流指令値が５６［Ａ］である場合のトルクリップルを求めるには、電流指令値が４２［Ａ］である場合のトルクリップル測定値に、電流指令値の比率（５６／４２）を乗算すればよい。
【００６２】
本発明者は、１つの電流指令値に対するトルクリップル測定値に基づいて、現在設定されている電流指令値およびロータの実回転角に対応したトルクリップルを推定し、推定したトルクリップルに基づいて、電流指令値を補正することにより、トルクリップルを低減させる手法を開発した。
しかしながら、１つの電流指令値に対するトルクリップル測定値から、現在設定されている電流指令値およびロータの実回転角に対応したトルクリップルを推定する手法では、トルクリップルの推定精度が低いことが判明した。これは、電流指令値が異なる２種類のトルクリップル測定値間において、両者間の比率が全てのロータ回転角で一定でないことに起因している。ただし、両者間の比率が全てのロータ回転角で一定とならない理由については不明である。
【００６３】
次に本実施形態におけるモータ制御装置としてのＥＣＵ１２（図１参照）について説明する。本実施形態におけるＥＣＵ１２は、現在設定されている電流指令値およびロータの実回転角に対応したトルクリップルの推定精度を高めることにより、トルクリップルをより効果的に低減させるために提案されたものである。
図３を参照して、本実施形態におけるトルクリップル推定方法の考え方について説明する。
【００６４】
図３の曲線Ｓ１およびＳ２は、それぞれ電流指令値が４２［Ａ］および７０［Ａ］である場合の電動モータ１８のトルクリップル測定値を示している。図３では、ロータ回転角が０[deg]〜６０[deg]の範囲におけるトルクリップル測定値を示している。図３の曲線Ｑｘは、電流指令値が５６[Ａ]である場合のトルクリップルを、曲線Ｓ１と曲線Ｓ２とを補間することにより求めたグラフを示している。
【００６５】
曲線Ｓ１を電流指令値Ａ１に対するトルクリップル測定値とし、曲線Ｓ２を電流指令値Ａ２に対するトルクリップル測定値とする。また、曲線Ｑｘを電流指令値Ａｘに対するトルクリップル推定値であるとする。電流指令値がＡ１でロータ回転角がθａであるときのトルクリップルをＢ１（θａ）とし、電流指令値がＡ１でロータ回転角がθａであるときのトルクリップルをＢ２（θａ）とする。電流指令値がＡｘでかつロータ回転角がθａであるときのトルクリップル推定値をＢｘ（θａ）とする。
【００６６】
トルクリップル推定値Ｂｘ（θａ）は、次の補間式(7)によって求めることができる。
Ｂｘ（θａ）＝｛Ｂ２（θａ）−Ｂ１（θａ）｝・｛（Ａｘ−Ａ１）／（Ａ２−Ａ１）
｝＋Ｂ１（θａ）
＝Ｂ２（θａ）・｛（Ａｘ−Ａ１）／（Ａ２−Ａ１）｝
−Ｂ１（θａ）｛（Ａｘ−Ａ１）／（Ａ２−Ａ１）｝＋Ｂ１（θａ）
＝Ｂ２（θａ）・｛（Ａｘ−Ａ１）／（Ａ２−Ａ１）｝
Ｂ１（θａ）［１−｛（Ａｘ−Ａ１）／（Ａ２−Ａ１）｝］
＝｛（Ａｘ−Ａ１）／（Ａ２−Ａ１）｝・Ｂ２（θａ）
＋｛（Ａ２−Ａｘ）／（Ａ２−Ａ１）｝・Ｂ１（θａ）    …(7)
つまり、この実施形態では、２種類の電流指令値それぞれに対する２種類のトルクリップル測定値に基づいて、任意の電流指令値に対するトルクリップルが推定される。
【００６７】
図４Ａの曲線Ｑｘは、電流指令値４２［Ａ］に対するトルクリップル測定値（図３の曲線Ｓ１）と電流指令値７０［Ａ］に対するトルクリップル測定値（図３の曲線Ｓ２）とを用い、前記式(7)に基づいて、電流指令値が５６［Ａ］である場合のトルクリップルを推定した結果を示している。図４Ａの曲線Ｓｘは、電流指令値が５６［Ａ］である場合のトルクリップル測定値を示している。
【００６８】
図４Ｂの曲線Ｑｘは、電流指令値４２［Ａ］に対するトルクリップル測定値（図３の曲線Ｓ１）のみに基づいて、電流指令値が５６［Ａ］である場合のトルクリップルを推定した結果を示している。図４Ｂの曲線Ｓｘは、電流指令値が５６［Ａ］である場合のトルクリップル測定値を示している。
図４Ｃの曲線Ｑｘは、電流指令値７０［Ａ］に対するトルクリップル測定値（図３の曲線Ｓ２）のみに基づいて、電流指令値が５６［Ａ］である場合のトルクリップルを推定した結果を示している。図４Ｃの曲線Ｓｘは、電流指令値が５６［Ａ］である場合のトルクリップル測定値を示している。
【００６９】
図４Ａ、図４Ｂおよび図４Ｃから、２種類の電流指令値に対する２種類のトルクリップル測定値から任意の電流指令値に対するトルクリップルを推定した場合の方が、１種類の電流指令値に対する１種類のトルクリップル測定値から任意の電流指令値に対するトルクリップルを推定した場合よりも、推定精度が高いことがわかる。
図５は、図１のＥＣＵ１２の電気的構成を示す概略図である。図５において、前述の図８に示された各部に対応する部分には、図８中と同一参照符号を付して示す。
【００７０】
ＥＣＵ１２は、マイクロコンピュータ３１と、このマイクロコンピュータ３１によって制御され、電動モータ１８に電力を供給する駆動回路（インバータ回路）３２と、電動モータ１８の各相のステータ巻線１０１，１０２，１０３に流れる電流を検出する電流検出部３３とを備えている。
マイクロコンピュータ３１は、ＣＰＵおよびメモリを備えており、所定のプログラムを実行することによって、複数の機能処理部として機能するようになっている。メモリは、ＲＯＭ、ＲＡＭ、不揮発性メモリ４０などを含む。複数の機能処理部には、電流指令値設定部４１と、ｄ軸電流指令値設定部４３と、ｑ軸電流指令値設定部４４と、ｄ軸電流偏差演算部４５と、ｑ軸電流偏差演算部４６と、ｄ軸ＰＩ（比例積分）制御部４７と、ｑ軸ＰＩ（比例積分）制御部４８と、ｄ軸指示電圧生成部４９と、ｑ軸指示電圧生成部５０と、二相／三相座標変換部５１と、ＰＷＭ制御部５２と、回転角演算部５３と、電流位相角演算部５４と、座標変換用回転角設定部５５と、三相／二相座標変換部５６と、電流補正部６０とが含まれている。
【００７１】
このＥＣＵ１２と図８に示されるモータ制御装置２００とを比較すると、このＥＣＵ１２では、電流補正部６０が設けられている点と、不揮発性メモリ４０内に電流補正部６０によって使用される複数の電流補正用テーブルが記憶されている点が異なっている。この実施形態では、不揮発性メモリ４０内に２種類の電流補正用テーブルＴａ１，Ｔａ２が記憶されている。以下において、電流補正用テーブルＴａ１を第１テーブルＴａ１といい、電流補正用テーブルＴａ２を第２テーブルＴａ１ということにする。以下、電流補正部６０と、不揮発性メモリ４０内に記憶されている第１および第２テーブルＴａ１，Ｔａ２について説明する。
【００７２】
第１テーブルＴａ１は、ロータ回転角毎に、電流指令値がＡ１である場合のトルクリップル測定値Ｂ１（θ）を記憶したテーブルである。Ａ１は、例えば４２［Ａ］である。電流指令値が４２［Ａ］である場合のトルクリップル測定値は、図３の曲線Ｓ１となる。第２テーブルＴａ２は、ロータ回転角毎に、電流指令値がＡ２である場合のトルクリップル測定値Ｂ２（θ）を記憶したテーブルである。Ａ２は、例えば７０［Ａ］である。電流指令値が７０［Ａ］である場合のトルクリップル測定値は、図３の曲線Ｓ２となる。
【００７３】
電流補正部６０は、補正値演算部６１と補正値加算部６２とから構成されている。補正値演算部６１には、回転角演算部５３によって演算されたロータ回転角（以下、「実回転角θａ」という。）と、電流指令値設定部４１によって設定された電流指令値Ｉａ＊とが入力される。以下において、電流指令値設定部４１によって現在設定されている電流指令値Ｉａ＊を、Ａｘで表す場合がある。
【００７４】
補正値演算部６１は、第１テーブルＴａ１に基づいて、回転角演算部５３によって演算された実回転角θａに対応したトルクリップル測定値Ｂ１（θａ）を求める。また、補正値演算部６１は、第２テーブルＴａ２に基づいて、実回転角θａに対応したトルクリップル測定値Ｂ２（θａ）を求める。そして、補正値演算部６１は、次式（8a），(8b)に基づいて、現在設定されている電流指令値Ａｘ（＝Ｉａ＊）および実回転角θａに対応したトルクリップルを打ち消すための電流補正値Ｉｃを演算する。
【００７５】
Ａｘ≧０の場合  Ｉｃ＝Ｂｘ（θａ）／ＫＴ      …(8a)
Ａｘ＜０の場合  Ｉｃ＝−Ｂｘ（θａ）／ＫＴ    …(8b)
Ｂｘ（θａ）＝｛（｜Ａｘ｜−Ａ１）／（Ａ２−Ａ１）｝・Ｂ２（θａ）
＋｛（Ａ２−｜Ａｘ｜）／（Ａ２−Ａ１）｝・Ｂ１（θａ）
なお、前記式(8a)，(8b)において、Ｂｘ［θ］は、電流指令値が現在の設定値Ａｘの絶対値｜Ａｘ｜でありかつロータ回転角が実回転角θａである場合のトルクリップル推定値を表している。また、ＫＴは、電動モータ１８のトルク定数である。
【００７６】
補正値加算部６２は、ｑ軸電流指令値生成部４４によって設定されたｑ軸電流指令値ｉｑ＊（＝Ａｘ）に、補正値演算部６１によって設定された電流補正値Ｉｃを加算することにより、ｑ軸電流指令値ｉｑ＊を補正する。補正値加算部６２によって得られた補正後のｑ軸電流指令値ｉｑ＊＊（＝ｉｑ＊＋Ｉｃ）がｑ軸電流偏差演算部４６に与えられる。この実施形態では、ｄ軸電流指令値ｉｄ＊（＝０）および補正後のｑ軸電流指令値ｉｑ＊＊（＝ｉｑ＊＋Ｉｃ）が二相指示電流ｉｄ＊，ｉｑ＊＊となる。
【００７７】
図６は、補正値演算部６１の動作例を説明するためのフローチャートである。図６の処理は、所定の演算周期ごとに繰り返し実行される。
補正値演算部６１は、第１テーブルＴａ１から実回転角θａに対応したトルクリップル測定値Ｂ１（θａ）を求める（ステップＳ１）。また、補正値演算部６１は、第２テーブルＴａ２から実回転角θａに対応したトルクリップル測定値Ｂ２（θａ）を求める（ステップＳ２）。
【００７８】
次に、補正値演算部６１は、次式(9)を用いて、電流指令値が現在設定値Ａｘの絶対値｜Ａｘ｜でありかつロータ回転角が実回転角θａである場合のトルクリップル推定値Ｂｘ（θａ）を演算する（ステップＳ３）。
Ｂｘ（θａ）＝｛（｜Ａｘ｜−Ａ１）／（Ａ２−Ａ１）｝・Ｂ２（θａ）
＋｛（Ａ２−｜Ａｘ｜）／（Ａ２−Ａ１）｝・Ｂ１（θａ）  …(9)
次に、補正値演算部６１は、電流指令値Ａｘ（＝Ｉａ＊）が、零以上であるか否かを判別する（ステップＳ４）。電流指令値Ａｘが零以上であれば（ステップＳ４：ＹＥＳ）、補正値演算部６１は、Ｉｃ＝Ｂｘ（θａ）／ＫＴに基づいて、電流補正値Ｉｃを演算する（ステップＳ５）。そして、今演算周期での処理を終了する。
【００７９】
一方、電流指令値Ａｘが零未満であると判別された場合には（ステップＳ４：ＮＯ）、補正値演算部６１は、Ｉｃ＝−Ｂｘ（θａ）／ＫＴに基づいて、電流補正値Ｉｃを演算する（ステップＳ６）。そして、今演算周期での処理を終了する。
本実施形態では、ｑ軸電流指令値ｉｑ＊に電流補正値Ｉｃが加算された値が、ｑ軸電流指令値ｉｑ＊＊としてｑ軸電流偏差演算部４６に与えられる。これにより、トルクリップルを低減させることができる。
【００８０】
以下、この理由について説明する。ＳｙｎＲＭでは、モータ駆動回路の出力電圧の一部が回転磁界を発生するための駆動電圧として使用され、モータ駆動回路の出力電圧の一部がロータを励磁するための励磁電圧として使用されると考えられる。そして、ＳｙｎＲＭでは、ロータの形状およびロータとステータ巻線の位置関係（ロータ回転角）とによって、ロータを励磁するための励磁電圧が変化すると考えられる。ロータを励磁するための励磁電圧が変化すると、ＳｙｎＲＭが発生する誘起電圧が局所的に変動する。つまり、誘起電圧波形が局所的に歪む。これにより、トルクリップルが発生すると考えられる。
【００８１】
誘起電圧の局所的な変動によって誘起電圧の絶対値が適正値よりも小さくなった場合には、駆動電圧と誘起電圧との差の絶対値が増加する。このため、ＳｙｎＲＭの出力トルクが増加し、正の値のトルクリップルが発生する。この場合、誘起電圧の絶対値が小さくなるほどトルクリップルの絶対値が大きくなる。一方、誘起電圧の局所的な変動によって誘起電圧の絶対値が適正値よりも大きくなった場合には、駆動電圧と誘起電圧との差の絶対値が減少する。このため、ＳｙｎＲＭの出力トルクが減少し、負の値のトルクリップルが発生する。この場合、誘起電圧の絶対値が大きくなるほどトルクリップルの絶対値が大きくなる。
【００８２】
誘起電圧の絶対値が適正値よりも小さくなった場合（トルクリップルが正の値となる場合）には、ロータの励磁電圧を増加させて、誘起電圧の絶対値を大きくすれば、トルクリップルを低減させることができる。前記実施形態では、トルクリップルが正の値をとるロータ回転角においては、ｑ軸電流指令値Ｉｑ＊が零以上の値であれば、正の値の電流補正値Ｉｃをｑ軸電流指令値Ｉｑ＊に加算し、ｑ軸電流指令値Ｉｑ＊が零未満の値であれば、負の値の電流補正値Ｉｃをｑ軸電流指令値Ｉｑ＊に加算している。これにより、ロータの励磁電圧が増加され、誘起電圧の絶対値が大きくなるので、トルクリップルを低減させることができる。また、前記実施形態では、現在設定されている電流指令値およびロータの実回転角に対応したトルクリップルの推定精度を高めることができるので、トルクリップルを打ち消すための電流指令値を正確に演算できる。これにより、トルクリップルを効果的に低減させることができる。
【００８３】
一方、誘起電圧の絶対値が適正値よりも大きくなった場合（トルクリップルが負の値となる場合）には、ロータの励磁電圧を減少させて、誘起電圧の絶対値を小さくすれば、トルクリップルを低減させることができる。前記実施形態では、トルクリップルが負の値をとるロータ回転角においては、ｑ軸電流指令値Ｉｑ＊が零以上の値であれば、負の値の電流補正値Ｉｃをｑ軸電流指令値Ｉｑ＊に加算し、ｑ軸電流指令値Ｉｑ＊が零未満の値であれば、正の値の電流補正値Ｉｃをｑ軸電流指令値Ｉｑ＊に加算している。これにより、ロータの励磁電圧が低減され、誘起電圧の絶対値が小さくなるので、トルクリップルを低減させることができる。また、前記実施形態では、現在設定されている電流指令値およびロータの実回転角に対応したトルクリップルの推定精度を高めることができるので、トルクリップルを打ち消すための電流指令値を正確に演算できる。これにより、トルクリップルをより効果的に低減させることができる。
【００８４】
次に、補正値演算部６１の変形例について説明する。
この変形例においては、第１テーブルＴａ１には、ロータ回転角毎に、電流指令値がＡ１（例えば４２［Ａ］）である場合のトルクリップル測定値を電動モータ１８のトルク定数ＫＴで除算した値（トルクリップル測定値の電流換算値）Ｃ１（θ）が記憶される。第２テーブルＴａ２には、電流指令値がＡ２（例えば７０［Ａ］）である場合のトルクリップル測定値を電動モータ１８のトルク定数ＫＴで除算した値（トルクリップル測定値の電流換算値）Ｃ２（θ）が記憶される。
【００８５】
補正値演算部６１は、第１テーブルＴａ１に基づいて、実回転角θａに対応したトルクリップル測定値の電流換算値Ｃ１（θａ）を求める。また、補正値演算部６１は、第２テーブルＴａ２に基づいて、実回転角θａに対応したトルクリップル測定値の電流換算値Ｃ２（θａ）を求める。そして、補正値演算部６１は、次式（10a），(10b)に基づいて、現在設定されている電流指令値Ａｘ（＝Ｉａ＊）および実回転角θａに対応したトルクリップルを打ち消すための電流補正値Ｉｃを演算する。
【００８６】
Ａｘ≧０の場合  Ｉｃ＝Ｃｘ（θａ）      …(10a)
Ａｘ＜０の場合  Ｉｃ＝−Ｃｘ（θａ）    …(10b)
Ｃｘ（θａ）＝｛（｜Ａｘ｜−Ａ１）／（Ａ２−Ａ１）｝・Ｃ２（θａ）
＋｛（Ａ２−｜Ａｘ｜）／（Ａ２−Ａ１）｝・Ｃ１（θａ）
なお、前記式(10a)，(10b)において、Ｃｘ［θ］は、電流指令値が現在設定値Ａｘの絶対値｜Ａｘ｜でありかつロータ回転角が実回転角θａである場合のトルクリップル推定値の電流換算値を表している。
【００８７】
図７は、補正値演算部６１の変形例の動作例を説明するためのフローチャートである。図７の処理は、所定の演算周期ごとに繰り返し実行される。
補正値演算部６１は、第１テーブルＴａ１から実回転角θａに対応したトルクリップル測定値の電流換算値Ｃ１（θａ）を求める（ステップＳ１１）。また、補正値演算部６１は、第２テーブルＴａ２から実回転角θａに対応したトルクリップル測定値の電流換算値Ｃ２（θａ）を求める（ステップＳ１２）。
【００８８】
次に、補正値演算部６１は、次式(11)を用いて、電流指令値が現在設定値Ａｘの絶対値｜Ａｘ｜でありかつロータ回転角が実回転角θａである場合のトルクリップル推定値の電流換算値Ｃｘ（θａ）を演算する（ステップＳ１３）。
Ｃｘ（θａ）＝｛（｜Ａｘ｜−Ａ１）／（Ａ２−Ａ１）｝・Ｃ２（θａ）
＋｛（Ａ２−｜Ａｘ｜）／（Ａ２−Ａ１）｝・Ｃ１（θａ）  …(11)
次に、補正値演算部６１は、電流指令値Ａｘ（＝Ｉａ＊）が、零以上であるか否かを判別する（ステップＳ１４）。電流指令値Ａｘが零以上であれば（ステップＳ１４：ＹＥＳ）、補正値演算部６１は、Ｉｃ＝Ｃｘ（θａ）に基づいて、電流補正値Ｉｃを演算する（ステップＳ１５）。そして、今演算周期での処理を終了する。
【００８９】
一方、電流指令値Ａｘが零未満であると判別された場合には（ステップＳ１４：ＮＯ）、補正値演算部６１は、Ｉｃ＝−Ｃｘ（θａ）に基づいて、電流補正値Ｉｃを演算する（ステップＳ１６）。そして、今演算周期での処理を終了する。
以上、この発明の一実施形態について説明したが、この発明はさらに他の形態で実施することもできる。前述の実施形態では、不揮発性メモリ４０内には、２種類の電流指令値毎に作成された２種類の電流補正用テーブルが設けられているが、３種類以上の電流指令値毎に作成された３種類以上の電流補正用テーブルを設けてもよい。つまり、Ｎを３以上の予め定められた整数とすると、Ｎ種類の電流指令値Ａ１，Ａ２，…，ＡＮ−１，ＡＮ(ただし、ｎ＝１，２，…，Ｎ−１とすると、０＜Ａｎ＜Ａｎ＋１）毎に作成されたＮ種類の電流補正用テーブルＴａ１，Ｔａ２，…，ＴａＮ−１，ＴａＮを設けてもよい。
【００９０】
この場合には、補正値演算部６１は、まず、電流指令値設定部４１によって設定されている電流指令値Ｉａ＊（＝Ａｘ）の絶対値｜Ａｘ｜と、各テーブルＴａ１，Ｔａ２，…，ＴａＮ−１，ＴａＮに対応する電流指令値Ａ１，Ａ２，…，ＡＮ−１，ＡＮとに基づいて、電流補正値の演算に用いられる２種類のテーブルを選択する。
具体的には、｜Ａｘ｜≦Ａ２である場合には、補正値演算部６１は、テーブルＴａ１とテーブルＴａ２を、電流補正値の演算に用いられる２種類のテーブルとして選択する。｜Ａｘ｜＞ＡＮ−１である場合には、補正値演算部６１は、テーブルＴａＮ−１とテーブルＴａＮを、電流補正値の演算に用いられる２種類のテーブルとして選択する。Ａ２＜｜Ａｘ｜≦ＡＮ−１である場合には、補正値演算部６１は、Ａｎ＜｜Ａｘ｜≦Ａｎ＋１を満たす２種類の電流指令値Ａｎ，Ａｎ＋１に対応する２種類のテーブルを、電流補正値の演算に用いられる２種類のテーブルとして選択する。
【００９１】
例えば、Ｎ＝３である場合には、電流指令値Ａ１，Ａ２，Ａ３(ただし、０＜Ａ１＜Ａ２＜Ａ３）毎に作成された３種類の電流補正用テーブルＴａ１，Ｔａ２，Ｔａ３が作成される。補正値演算部６１は、｜Ａｘ｜≦Ａ２である場合には、テーブルＴａ１とテーブルＴａ２を、電流補正値の演算に用いられる２種類のテーブルとして選択する。｜Ａｘ｜＞Ａ２である場合には、補正値演算部６１は、テーブルＴａ２とテーブルＴａ３を、電流補正値の演算に用いられる２種類のテーブルとして選択する。
【００９２】
また、例えば、Ｎ＝４である場合には、電流指令値Ａ１，Ａ２，Ａ３，Ａ４(ただし、０＜Ａ１＜Ａ２＜Ａ３＜Ａ４）毎に作成された４種類の電流補正用テーブルＴａ１，Ｔａ２，Ｔａ３，Ｔａ４が作成される。補正値演算部６１は、｜Ａｘ｜≦Ａ２である場合には、テーブルＴａ１とテーブルＴａ２を、電流補正値の演算に用いられる２種類のテーブルとして選択する。｜Ａｘ｜＞Ａ３である場合には、補正値演算部６１は、テーブルＴａ３とテーブルＴａ４を、電流補正値の演算に用いられる２種類のテーブルとして選択する。Ａ２＜｜Ａｘ｜≦Ａ３である場合には、補正値演算部６１は、Ａｎ＜｜Ａｘ｜≦Ａｎ＋１を満たす２種類の電流指令値Ａ２，Ａ３に対応する２種類のテーブルＴａ２，Ｔａ３を、電流補正値の演算に用いられる２種類のテーブルとして選択する。
【００９３】
補正値演算部６１によって選択された２種類のテーブルを、電流指令値Ａｎに対するＴａｎおよび電流指令値Ａｎ＋１に対するＴａｎ＋１とすると、補正値演算部６１は次のようにして、電流補正値Ｉｃを演算する。
各電流補正用テーブルＴａ１，Ｔａ２，…，ＴａＮ−１，ＴａＮに、ロータ回転角度毎に、電流指令値Ａ１，Ａ２，…，ＡＮ−１，ＡＮに対するトルクリップル測定値Ｂ１（θ），Ｂ２（θ），…，ＢＮ−１（θ），ＢＮ（θ）が記憶されている場合について説明する。この場合には、補正値演算部６１は、一方のテーブルＴａｎから、実回転角θａに対応するトルクリップル測定値Ｂｎ（θａ）を求めるとともに、他方のテーブルＴａｎ＋１から、実回転角θａに対応するトルクリップル測定値Ｂｎ＋１（θａ）を求める。そして、補正値演算部６１は、次式(12a)または(12b)に基づいて、電流補正値Ｉｃを演算する。
【００９４】
Ａｘ≧０の場合  Ｉｃ＝Ｂｘ（θａ）／ＫＴ      …(12a)
Ａｘ＜０の場合  Ｉｃ＝−Ｂｘ（θａ）／ＫＴ    …(12b)
Ｂｘ（θａ）＝｛（｜Ａｘ｜−Ａｎ）／（Ａｎ＋１−Ａｎ）｝・Ｂｎ＋１（θａ）
＋｛（Ａｎ＋１−｜Ａｘ｜）／（Ａｎ＋１−Ａｎ）｝・Ｂｎ（θａ）
なお、前記式(12a)，(12b)において、Ｂｘ［θ］は、電流指令値が現在設定値Ａｘの絶対値｜Ａｘ｜でありかつロータ回転角が実回転角θａである場合のトルクリップル推定値を表している。また、ＫＴは、電動モータ１８のトルク定数である。
【００９５】
次に、各電流補正用テーブルＴａ１，Ｔａ２，…，ＴａＮに、ロータ回転角度毎に、電流指令値Ａ１，Ａ２，…，ＡＮ−１，ＡＮに対するトルクリップル測定値を電動モータ１８のトルク定数ＫＴで除算した値（トルクリップル測定値の電流換算値）Ｃ１（θ），Ｃ２（θ），…，ＣＮ−１（θ），ＣＮ（θ）が記憶されている場合について説明する。この場合には、補正値演算部６１は、一方のテーブルＴａｎから、実回転角θａに対応するトルクリップル測定値の電流換算値Ｃｎ（θａ）を求めるとともに、他方のテーブルＴａｎ＋１から、実回転角θａに対応するトルクリップル測定値の電流換算値Ｃｎ＋１（θａ）を求める。そして、補正値演算部６１は、次式(13a)または(13b)に基づいて、電流補正値Ｉｃを演算する。
【００９６】
Ａｘ≧０の場合  Ｉｃ＝Ｃｘ（θａ）      …(13a)
Ａｘ＜０の場合  Ｉｃ＝−Ｃｘ（θａ）    …(13b)
Ｃｘ（θａ）＝｛（｜Ａｘ｜−Ａｎ）／（Ａｎ＋１−Ａｎ）｝・Ｃｎ＋１（θａ）
＋｛（Ａｎ＋１−｜Ａｘ｜）／（Ａｎ＋１−Ａｎ）｝・Ｃｎ（θａ）
なお、前記式(13a)，(13b)において、Ｃｘ［θ］は、電流指令値が現在設定値Ａｘの絶対値｜Ａｘ｜でありかつロータ回転角が実回転角θａである場合のトルクリップル推定値の電流換算値を表している。
【００９７】
前述の実施形態では、電流位相角演算部５４は、電流検出部３３によって検出された検出電流から演算された電機子電流Ｉａ（この実施形態ではｑ軸電流ｉｑ）と、予め設定された電流位相角演算式（例えば式(4)参照）とに基づいて、電機子電流Ｉａに対してモータトルクが最大値に近い値となる電流位相角βを演算している。しかし、電流位相角演算部５４は、前記電流位相角演算式によって表される電機子電流Ｉａと電流位相角βとの関係を記憶したマップと、電流検出部３３によって検出された検出電流から演算された電機子電流Ｉａとに基づいて、電機子電流Ｉａに対してモータトルクが最大値に近い値となる電流位相角βを演算してもよい。
【００９８】
また、前述の実施形態では、前記式(3)に基づいて、各電機子電流Ｉａに対応する電流位相角−モータトルク特性曲線上の最大トルク値を結ぶ曲線を直線近似し、得られた近似式に基づいて電流位相角演算式を求めている。しかし、最小二乗法等の他の方法によって、各電機子電流Ｉａに対応する電流位相角−モータトルク特性曲線上の最大トルク値を結ぶ曲線を直線近似し、得られた近似式に基づいて電流位相角演算式を求めるようにしてもよい。
【００９９】
また、電流位相角演算部５４は、力率に基づいて、電流位相角βを演算するものであってもよいし、電動モータ１８の出力電圧に基づいて電流位相角βを演算するものであってもよい。
その他、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。
【符号の説明】
【０１００】
１２…ＥＣＵ、１８…電動モータ、２５…回転角センサ、３１…マイクロコンピュータ、３３…電流検出部、４０…不揮発性メモリ、４１…電流指令値設定部、４３…ｄ軸電流指令値設定部、４４…ｑ軸電流指令値設定部、４５…ｄ軸電流偏差演算部、４６…ｑ軸電流偏差演算部、４７…ｄ軸ＰＩ制御部、４８…ｑ軸ＰＩ制御部、５３…回転角演算部、６０…電流補正部、６１…補正値演算部、６２…補正値加算部、１００…ロータ、Ｔａ１，Ｔａ２…電流補正用テーブル
【図１】
2015033265.tif 000003
【図２】
2015033265.tif 000004
【図３】
2015033265.tif 000005
【図４】
2015033265.tif 000006
【図５】
2015033265.tif 000007
【図６】
2015033265.tif 000008
【図７】
2015033265.tif 000009
【図８】
2015033265.tif 000010
【図９】
2015033265.tif 000011
【図１０】
2015033265.tif 000012
【図１１】
2015033265.tif 000013
【図１２】
2015033265.tif 000014
【図１３】
2015033265.tif 000015
【図１４】
2015033265.tif 000016