(57)【要約】【課題】トルク脈動を適切に抑制することが可能なモータ制御装置を提供する。【解決手段】このモータ制御装置１００では、モータ２００のトルク脈動成分の正負を反転させた逆トルク脈動成分を、モータ２００およびモータ２００の負荷に生じる摩擦の大きさである摩擦値に基づいて補正することによって補正脈動成分を決定する補正部１６を含み、トルク指令値Ｔｒｅｆαと決定された補正脈動成分とに基づいてトルク指令値Ｔｒｅｆβを決定するトルクリップル低減制御部１５と、トルクリップル低減制御部１５により決定されたトルク指令値（トルク指令値Ｔｒｅｆβ）に基づいて、電流指令値を算出するトルク／電流変換部１とを備える。【選択図】図１
2018098978.tif 000002
【特許請求の範囲】
【請求項１】
トルク指令値に基づいて設定された電流指令値により、永久磁石が設けられるモータの駆動を制御するモータ制御装置であって、
前記モータのトルク脈動成分の正負を反転させた逆トルク脈動成分を、前記モータおよび前記モータの負荷に生じる摩擦の大きさである摩擦値に基づいて補正することによって補正脈動成分を決定する補正部を含み、要求トルクと決定された前記補正脈動成分とに基づいて補償された前記トルク指令値を決定するトルク指令値決定部と、
前記トルク指令値決定部により決定された前記トルク指令値に基づいて、前記電流指令値を算出するトルク／電流変換部とを備える、モータ制御装置。
【請求項２】
前記補正部は、所定の制御周期において補償された前記トルク指令値に基づいて取得された前記摩擦値と、前記所定の制御周期の次の制御周期において補償された前記トルク指令値に基づいて取得された前記摩擦値と、前記逆トルク脈動成分とに基づいて、前記所定の制御周期の次の制御周期の前記補正脈動成分を決定する制御を行うように構成されている、請求項１に記載のモータ制御装置。
【請求項３】
前記補正部は、前記所定の制御周期において補償された前記トルク指令値に基づいて取得された前記摩擦値と、前記所定の制御周期の次の制御周期において補償された前記トルク指令値に基づいて取得された前記摩擦値との比率と、前記逆トルク脈動成分とに基づいて、前記所定の制御周期の次の制御周期の前記補正脈動成分を決定する制御を行うように構成されている、請求項２に記載のモータ制御装置。
【請求項４】
前記補正部は、前記要求トルクが第１しきい値以上の場合において、前記トルク指令値の補償を行わないように構成されている、請求項１〜３のいずれか１項に記載のモータ制御装置。
【請求項５】
前記補正部は、前記要求トルクが、前記モータの停止状態のトルク近傍である第２しきい値よりも小さい場合において、前記トルク指令値の補償を行わないように構成されている、請求項１〜４のいずれか１項に記載のモータ制御装置。
【請求項６】
前記補正部は、前記モータの正回転時において、前記モータの正回転時の前記逆トルク脈動成分に基づいて前記補正脈動成分を決定し、前記モータの負回転時において、前記モータの負回転時の前記逆トルク脈動成分に基づいて前記補正脈動成分を決定する制御を行うように構成されている、請求項１〜５のいずれか１項に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御装置に関し、特に、モータのトルク脈動を補正するモータ制御装置に関する。
【背景技術】
【０００２】
従来、モータのトルク脈動を補正するモータ制御装置が知られている（たとえば、特許文献１参照）。
【０００３】
上記特許文献１に記載のモータ制御装置は、各相の電流および磁極の位置を検出し、磁極の位置に基づいて、各相の電流をｄ軸電流およびｑ軸電流（ｉq）に変換する。上記モータ制御装置は、上記ｑ軸電流（ｉq）と、ｑ軸電流指令値（ｉQS）との偏差（Δｉq）に基づいて、モータを駆動させるための電圧指令値を算出している。また、上記モータ制御装置は、トルク脈動の発生を抑制するために、車両制御回路から送信されるｑ軸電流指令値（ｉqs）と、上記ｑ軸電流指令値（ｉqs）に対して所定の大きさの位相（αN）がずれた補正電流指令値（Ｉt*）とを加算することにより、上記ｑ軸電流指令値（ｉQS）を算出している。なお、上記補正電流指令値（Ｉt*）は、所定の補正係数（ＫAMN）と、上記位相のずれ（αN）とに基づいて算出されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３６８７２８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ここで、上記所定の補正係数（ＫAMN）および上記位相のずれ（αN）は、所定の定数であると考えられる。したがって、上記特許文献１に記載のモータ制御装置では、補正電流指令値（Ｉt*）は、上記所定の補正係数（ＫAMN）と、上記位相のずれ（αN）に基づき、所定の値に決定される。すなわち、補正電流指令値（Ｉt*）は、モータに生じる経年劣化、および、複数のモータ間における個体差の情報を含んでいないと考えられる。このため、モータに経年劣化が生じた場合、および、複数のモータ間に個体差がある場合では、適切な補正電流指令値（Ｉt*）を決定することが困難になる。その結果、トルク脈動を適切に抑制することが困難になるという問題点がある。
【０００６】
この発明は、上記のような課題を解決するためになされたものであり、この発明の１つの目的は、トルク脈動を適切に抑制することが可能なモータ制御装置を提供することである。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、この発明の一の局面におけるモータ制御装置は、トルク指令値に基づいて設定された電流指令値により、永久磁石が設けられるモータの駆動を制御するモータ制御装置であって、モータのトルク脈動成分の正負を反転させた逆トルク脈動成分を、モータおよびモータの負荷に生じる摩擦の大きさである摩擦値に基づいて補正することによって補正脈動成分を決定する補正部を含み、要求トルクと決定された補正脈動成分とに基づいて補償されたトルク指令値を決定するトルク指令値決定部と、トルク指令値決定部により決定されたトルク指令値に基づいて、電流指令値を算出するトルク／電流変換部とを備える。
【０００８】
ここで、摩擦値は、モータの経年劣化および複数のモータ間における個体差による数値のばらつきが比較的大きい。したがって、この発明の一の局面によるモータ制御装置では、上記のように、モータの経年劣化および複数のモータ間における個体差に起因して数値が変動する摩擦値に基づいて、逆トルク脈動成分を補正し、補正脈動成分を決定することによって、モータの経年劣化および複数のモータ間における個体差の影響を考慮した補正を容易に行うことができる。その結果、トルク脈動を適切に抑制することができる。なお、トルク脈動とは、コギングトルクを意味する。
【０００９】
上記一の局面によるモータ制御装置において、好ましくは、補正部は、所定の制御周期において補償されたトルク指令値に基づいて取得された摩擦値と、所定の制御周期の次の制御周期において補償されたトルク指令値に基づいて取得された摩擦値と、逆トルク脈動成分とに基づいて、所定の制御周期の次の制御周期の補正脈動成分を決定する制御を行うように構成されている。
【００１０】
このように構成すれば、前回推定時の制御周期において取得された摩擦値に基づいて補正脈動成分を決定することによって、制御周期間におけるモータの状態変化に起因する摩擦値の変動を加味しながら補正脈動成分を決定することができる。その結果、モータを比較的長い期間使用することにより、モータに経年劣化が生じた場合でも、トルク脈動をより適切に抑制することができる。
【００１１】
この場合、好ましくは、補正部は、所定の制御周期において補償されたトルク指令値に基づいて取得された摩擦値と、所定の制御周期の次の制御周期において補償されたトルク指令値に基づいて取得された摩擦値との比率と、逆トルク脈動成分とに基づいて、所定の制御周期の次の制御周期の補正脈動成分を決定する制御を行うように構成されている。
【００１２】
このように構成すれば、前回推定時の制御周期において取得された摩擦値と、現時点の制御周期において取得された摩擦値との比率に基づいて補正脈動成分を決定することによって、制御周期間におけるモータの状態（摩擦値）の変化率を直接的に加味しながら、補正脈動成分を決定することができる。その結果、制御周期間における摩擦値の差分等を考慮する場合に比べて、補正脈動成分を効率的に決定することができる。
【００１３】
上記一の局面によるモータ制御装置において、好ましくは、補正部は、要求トルクが第１しきい値以上の場合において、トルク指令値の補償を行わないように構成されている。
【００１４】
ここで、要求トルクが比較的大きい場合は、トルク脈動がモータの動作（回転）に与える影響は比較的小さい。したがって、要求トルクが第１しきい値以上の場合において、トルク指令値の補償を行わないことによって、トルク脈動によるモータの動作への影響を抑制しながら、要求トルクが第１しきい値以上の場合における制御を簡略化することができる。
【００１５】
上記一の局面によるモータ制御装置において、好ましくは、補正部は、要求トルクが、モータの停止状態のトルク近傍である第２しきい値よりも小さい場合において、トルク指令値の補償を行わないように構成されている。
【００１６】
ここで、モータが停止または停止寸前の状態において、トルク脈動を考慮する必要性は比較的小さい。したがって、要求トルクが、モータの停止状態のトルク近傍である第２しきい値よりも小さい場合において、トルク指令値の補償を行わないことによって、要求トルクが第２しきい値よりも小さい場合における制御を簡略化することができる。また、要求トルクが比較的小さい場合でかつトルク指令値の補償を行った場合は、補償後のトルク指令値に含まれる補正脈動成分の割合が比較的大きくなる。したがって、要求トルクが第２しきい値よりも小さい場合にトルク指令値の補償を行わないことによって、補正脈動成分に起因するＥＣＵおよびモータの発熱を抑制することができる。
【００１７】
上記一の局面によるモータ制御装置において、好ましくは、補正部は、モータの正回転時において、モータの正回転時の逆トルク脈動成分に基づいて補正脈動成分を決定し、モータの負回転時において、モータの負回転時の逆トルク脈動成分に基づいて補正脈動成分を決定する制御を行うように構成されている。
【００１８】
このように構成すれば、モータの正回転時および負回転時の各々において、トルク脈動を適切に抑制することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の一実施形態によるモータ制御装置のブロック図である。
【図２】本発明の一実施形態によるモータ制御装置のトルクリップル低減制御部の構成を示す図である。
【図３】本発明の一実施形態によるトルク脈動成分を示した図である。
【図４】本発明の一実施形態による角速度に対する補正部の制御を説明するための図である。
【図５】本発明の一実施形態によるトルク指令に対する補正部の制御を説明するための図である。
【図６】本発明の一実施形態によるモータの停止時における補正部の制御を説明するための図である。
【図７】本発明の一実施形態によるモータ制御装置の補正部の制御方法を説明するフローチャートである。
【発明を実施するための形態】
【００２０】
以下、本発明の実施形態を図面に基づいて説明する。
【００２１】
［本実施形態］
（モータ制御装置の構造）
図１〜図７を参照して、本実施形態によるモータ制御装置１００の構成について説明する。
【００２２】
（モータ制御装置の構成）
図１に示すように、モータ制御装置１００は、トルク指令Ｔｒｅｆ（後述する、トルク指令値Ｔｒｅｆα（絶対値）およびトルク指令値Ｔｒｅｆβ（絶対値））に基づいて設定されたｄ軸電流指令ｉｄｒｅｆおよびｑ軸電流指令ｉｑｒｅｆにより、永久磁石（図示せず）が設けられるモータ２００の駆動を制御するように構成されている。以下、具体的に説明する。
【００２３】
モータ２００には、複数の永久磁石が設けられている。また、モータ２００は、ロータ（図示せず）に永久磁石が埋め込まれたＩＰＭモータ（Ｉｎｔｅｒｉｏｒ  Ｐｅｒｍａｎｅｎｔ  Ｍａｇｎｅｔ  Ｍｏｔｏｒ）、または、ロータの表面に永久磁石が配置されたＳＰＭモータ（Ｓｕｒｆａｃｅ  Ｐｅｒｍａｎｅｎｔ  Ｍａｇｎｅｔ  Ｍｏｔｏｒ）からなる。また、モータ２００には、モータ２００の電気角θを検出する電気角センサ２０１が設けられている。
【００２４】
モータ制御装置１００は、トルク／電流変換部１を備えている。トルク／電流変換部１には、電力管理制御部２、および、後述するトルクリップル低減制御部１５を介して、トルク指令が入力される。具体的には、電力管理制御部２にはトルク指令値Ｔｒｅｆαが入力される。また、トルクリップル低減制御部１５には、電力管理制御部２を介してトルク指令値Ｔｒｅｆαが入力される。そして、トルク／電流変換部１には、トルクリップル低減制御部１５により補償されたトルク指令値であるトルク指令値Ｔｒｅｆβが入力される。なお、トルクリップル低減制御部１５の制御については後述する。また、トルク指令値Ｔｒｅｆαおよびトルク指令値Ｔｒｅｆβは、それぞれ、特許請求の範囲の「要求トルク」および「補償されたトルク指令値」の一例である。
【００２５】
また、トルク／電流変換部１には、角速度算出部３によって算出されたモータ２００の角速度ωが入力される。そして、トルク／電流変換部１は、トルク指令値Ｔｒｅｆβおよびモータ２００の角速度ωに基づいて、ｄ軸電流指令ｉｄｒｅｆとｑ軸電流指令ｉｑｒｅｆとを算出する。
【００２６】
また、モータ制御装置１００は、電流電圧変換部４を備えている。電流電圧変換部４は、トルク／電流変換部１により算出されたｄ軸電流指令ｉｄｒｅｆおよびｑ軸電流指令ｉｑｒｅｆを、それぞれ、ｄ軸電圧指令ｖｄおよびｑ軸電圧指令ｖｑに変換する。
【００２７】
具体的には、電流電圧変換部４には、３相／２相変換部１３からのｄ軸電流ｉｄおよびｑ軸電流ｉｑが入力される。そして、電流電圧変換部４では、ｄ軸電流指令ｉｄｒｅｆとｄ軸電流ｉｄとの差分、ｑ軸電流指令ｉｑｒｅｆとｑ軸電流ｉｑとの差分が、それぞれ、ＰＩ制御される。
【００２８】
また、モータ制御装置１００は、制限部５を備えている。制限部５は、後述する非干渉制御部１４からの補正値ｖｄ１およびｖｑ１を、ｄ軸電圧指令ｖｄおよびｑ軸電圧指令ｖｑに加算し、出力されるｄ軸電圧指令ｖｄｒｅｆおよびｑ軸電圧指令ｖｑｒｅｆの増大を制限するように構成されている。たとえば、ｄ軸電圧指令ｖｄｒｅｆ（ｑ軸電圧指令ｖｑｒｅｆ）が、所定のしきい値以下の場合には、ｄ軸電圧指令ｖｄｒｅｆ（ｑ軸電圧指令ｖｑｒｅｆ）は、そのままの値で制限部５から出力される。一方、ｄ軸電圧指令ｖｄｒｅｆ（ｑ軸電圧指令ｖｑｒｅｆ）が、リミッタｖｄｌｉｍ（ｖｑｌｉｍ）よりも大きい場合には、ｄ軸電圧指令ｖｄｒｅｆ（ｑ軸電圧指令ｖｑｒｅｆ）は、リミッタｖｄｌｉｍ（ｖｑｌｉｍ）の値（ある一定の値）に変換されて出力される。
【００２９】
また、モータ制御装置１００は、２相／３相変換部６を備えている。２相／３相変換部６は、制限部５から出力されるｄ軸電圧指令ｖｄｒｅｆ（ｑ軸電圧指令ｖｑｒｅｆ）を、逆パーク変換および逆クラーク変換することにより、３相の電圧値に応じた電圧ｖｕ、ｖｖおよびｖｗを出力するように構成されている。
【００３０】
また、モータ制御装置１００は、変調部７を備えている。変調部７は、２相／３相変換部６から入力される電圧ｖｕ、ｖｖおよびｖｗに対して、包絡線中心シフト変調を行う。具体的には、変調部７は、電圧ｖｕ、ｖｖおよびｖｗの値を互いに比較して、電圧ｖｕ、ｖｖおよびｖｗの中間値の１／２を補正値とする。そして、変調部７は、電圧ｖｕ、ｖｖおよびｖｗから、補正値を減算し、減算された値を出力するように構成されている。
【００３１】
また、モータ制御装置１００は、ＰＷＭ出力部８を備えている。ＰＷＭ出力部８は、変調部７から出力された信号（電圧ｖｕ、ｖｖおよびｖｗから補正値が減算された信号）に基づいて、駆動部９に含まれる互いにブリッジ接続された複数のスイッチング素子（図示せず）を駆動するためのＰＷＭ信号ｐｗｍｕ、ｐｗｍｖおよびｐｗｍｗを出力する。
【００３２】
また、モータ制御装置１００は、駆動部９を備えている。駆動部９は、ＰＷＭ信号ｐｗｍｕ、ｐｗｍｖおよびｐｗｍｗに基づいて、複数のスイッチング素子を駆動することにより、モータ２００に３相の電圧ｖｕ、ｖｖおよびｖｗを印加する。これにより、モータ２００は、印加された電圧ｖｕ、ｖｖおよびｖｗの周期に応じた速度により回転する。
【００３３】
また、モータ制御装置１００は、電流制限部１０を備えている。電流制限部１０は、モータ２００の制御（ベクトル制御）に用いられる電流を制限するように構成されている。すなわち、電流制限部１０は、モータ２００のベクトル制御において、電流制限よりも大きな電流が流れないように電流を制限するように構成されている。
【００３４】
また、モータ制御装置１００は、遅れ補償部１１を備えている。遅れ補償部１１は、モータ２００の回転の遅れを補償するように構成されている。一般にモータ２００の回転は、ソフトウェアの演算処理やモータ２００の応答の遅れ等、複数の要因によって遅れる。そして、遅れ補償部１１は、上記の複数の要因を考慮した遅れ時間と、角速度算出部３によって算出された角速度ωに基づいて、遅れ角を算出する。そして、算出された遅れ角を、電気角センサ２０１によって検出された電気角θ（レゾルバの信号に基づいて電気角算出部１２により算出された電気角θ）に加算して、加算した値θｃを、２相／３相変換部６および後述する３相／２相変換部１３に入力する。
【００３５】
また、モータ制御装置１００は、３相／２相変換部１３を備えている。３相／２相変換部１３は、モータ２００の各相の励磁電流Ｉｕ、ＩｖおよびＩｗを、クラーク変換およびパーク変換することにより、ｑ軸電流ｉｑおよびｄ軸電流ｉｄを算出する。
【００３６】
また、モータ制御装置１００は、非干渉制御部１４を備えている。非干渉制御部１４は、角速度算出部３から入力される角速度ωと、３相／２相変換部１３から出力されるｑ軸電流ｉｑおよびｄ軸電流ｉｄに対して、所定の演算（ｉｑとｉｄとの干渉に関する演算）を行い、補正値ｖｄ１およびｖｑ１を制限部５に出力する。
【００３７】
また、モータ制御装置１００は、トルクリップル低減制御部１５を備える。図２に示すように、トルクリップル低減制御部１５は、補正部１６を含む。なお、トルクリップル低減制御部１５は、特許請求の範囲の「トルク指令値決定部」の一例である。
【００３８】
また、トルクリップル低減制御部１５は、加算器１７を含む。トルク指令値Ｔｒｅｆβ（絶対値）は、トルク指令値Ｔｒｅｆα（絶対値）と、補正部１６により決定されたモータ２００のトルク脈動（電気角θにおけるトルク脈動）を補正（抑制）する補正脈動成分とが、加算器１７により加算されることによって得られる。なお、後述する、補正部１６による補正制御は、ソフト的に実行されている。
【００３９】
また、モータ制御装置１００は、モータ２００の駆動を制御するパラメータである、ｄ軸インダクタンスＬｄ、ｑ軸インダクタンスＬｑ、電機子抵抗Ｒａ、および、トルク定数Ｋｔを決定（同定）する決定部１８を備えている。また、決定部１８は、決定されたトルク定数Ｋｔに基づいて、モータ２００およびモータ２００の負荷に生じる摩擦の大きさである摩擦値を取得する。具体的には、摩擦値は、モータ２００のギアに生じる摩擦の大きさである摩擦値、および、モータ２００の起動時の摩擦の大きさである摩擦値等を含む。なお、決定部１８によるパラメータの決定方法については後述する。
【００４０】
（補正部の制御）
ここで、本実施形態では、補正部１６は、モータ２００のトルク脈動成分（図３参照）の正負を反転させた逆トルク脈動成分を、決定部１８により取得された摩擦値に基づいて補正することによって、トルク指令値Ｔｒｅｆαを補正する補正脈動成分を出力する。なお、モータ２００のトルク脈動成分とは、モータ２００の電気角θに対する脈動トルク（電気角θのモータ２００が動き出す直前の脈動トルク）を意味し、補正部１６の補正制御が行われる以前に予め計測された値である。
【００４１】
また、本実施形態では、補正部１６は、モータ２００の正回転時において、モータ２００の正回転時の逆トルク脈動成分に基づいて補正脈動成分を決定する制御を行う。また、補正部１６は、モータ２００の負回転時において、モータ２００の負回転時の逆トルク脈動成分に基づいて補正脈動成分を決定する。
【００４２】
具体的には、補正脈動成分を決定するためのパラメータである摩擦値は、下記の式（１ａ）または（１ｂ）に基づいて取得される。なお、下記の式（１ａ）のＤ０＋とは、モータ２００の正回転時の摩擦値である。また、ｉｑｐｍｉｎとは、モータ２００の正回転時の逆トルク脈動成分に起因する電流のうちの最もゼロに近い値である。また、下記の式（１）の式（１ｂ）のＤ０−とは、モータ２００の負回転時の摩擦値である。また、ｉｑｍｍａｘとは、モータ２００の負回転時の逆トルク脈動成分に起因する電流のうちの最もゼロに近い値である。なお、Ｋｔはトルク定数であり、値の決定方法については後述する。また、以下では、説明の簡略化のため、モータ２００が正回転している場合における説明を行う。
【数１】
2018098978.tif 000003
【００４３】
ここで、本実施形態では、補正部１６は、所定のパラメータ同定される制御周期（以下、周期Ｎ）（Ｎ＝０、１、２、・・・）においてトルク指令値Ｔｒｅｆβに基づいて取得された摩擦値と、所定の制御周期の次の制御周期（以下、周期Ｎ＋１）においてトルク指令値Ｔｒｅｆβに基づいて取得された摩擦値と、逆トルク脈動成分とに基づいて、周期Ｎ＋１以降の補正脈動成分を決定する制御を行う。
【００４４】
具体的には、補正部１６は、周期Ｎにおいてトルク指令値Ｔｒｅｆβに基づいて取得された摩擦値と、周期Ｎ＋１においてトルク指令値Ｔｒｅｆβに基づいて取得された摩擦値との比率と、逆トルク脈動成分とに基づいて、周期Ｎ＋１以降の補正脈動成分を決定する制御を行う。
【００４５】
詳細には、補正部１６は、周期Ｎ＋１以降において、逆トルク脈動成分を、（（Ｄ０＋(N+1)）／（Ｄ０＋(N)））倍することによって、逆トルク脈動成分を補正する。なお、Ｄ０＋(N+1)とは、周期Ｎ＋１において新しく取得された摩擦値であり、Ｄ０＋(N)とは、周期Ｎにおいて以前取得された摩擦値である。そして、補正された逆トルク脈動成分に基づいて、周期Ｎ＋１以降の補正脈動成分を決定する。
【００４６】
すなわち、図４に示すように、補正部１６は、モータ２００の角速度ω（絶対値）がω１（たとえば、１ｒｐｓ）以上の場合において、トルク指令値の補償を行わないように構成されている。具体的には、補正部１６は、モータ２００の角速度ω（絶対値）がω１以上になった場合に、補正された逆トルク脈動成分を乗算する補正係数をゼロにする。この場合、補正のための演算処理が行われず、逆トルク脈動成分がゼロにされる。これにより、モータ２００の角速度ω（絶対値）がω１以上の場合における、補正部１６の制御を簡略化することが可能である。
【００４７】
また、補正部１６は、角速度ω（絶対値）がω２（ω１よりも小さい角速度）よりも大きくかつω１未満である場合において、角速度ω（絶対値）が大きくなるにつれ、補正係数を線形的に減少させる。また、角速度ω（絶対値）が、ゼロ以上ω２以下の場合は、補正係数は一定値に固定されている。これにより、モータ２００が中低速回転時（角速度ω（絶対値）がω１よりも小さい時）においては、トルク脈動が適切に補正されることにより、モータ２００をスムーズに回転させることが可能である。なお、この時の補正係数は、１に固定されていてもよいし、１回目の制御周期だけ１よりも小さい値（たとえば、０．７）にしてもよい。１回目の制御周期の補正係数を１よりも小さい値にすることにより、パラメータが決定（同定）されていない１回目の制御周期において、逆トルク脈動成分を過剰に補正することを抑制することが可能である。なお、１回目の制御周期だけではなく、すべての制御周期において、補正係数を１よりも小さい値にしてもよい。
【００４８】
また、本実施形態では、図５に示すように、補正部１６は、トルク指令値Ｔｒｅｆα（絶対値）がトルク値Ｔ１（たとえば、モータ２００のトルクの定格値の１０パーセント）以上の場合において、トルク指令値の補償を行わないように構成されている。具体的には、補正部１６は、トルク指令値Ｔｒｅｆα（絶対値）がトルク値Ｔ１以上になった場合に、補正された逆トルク脈動成分を乗算する補正係数をゼロにする。この場合、補正のための演算処理は行われず、逆トルク脈動成分がゼロにされる。なお、トルク値Ｔ１は、特許請求の範囲の「第１しきい値」の一例である。
【００４９】
また、補正部１６は、トルク指令値Ｔｒｅｆα（絶対値）がトルク値Ｔ２（トルク値Ｔ１よりも小さいトルク値）よりも大きくかつトルク値Ｔ１未満である場合において、トルク指令値Ｔｒｅｆα（絶対値）が大きくなるにつれ、補正係数を線形的に減少させる。また、トルク指令値Ｔｒｅｆα（絶対値）が、ゼロ以上トルク値Ｔ２以下の場合は、補正係数は一定値（たとえば、１）に固定されている。
【００５０】
また、本実施形態では、図６に示すように、補正部１６は、トルク指令値Ｔｒｅｆα（絶対値）が、モータ２００の停止状態のトルク近傍であるトルク値Ｔ３（たとえば、モータ２００のトルクの定格値の１パーセント）よりも小さい場合において、トルク指令値の補償を行わないように構成されている。なお、トルク値Ｔ３は、特許請求の範囲の「第２しきい値」の一例である。
【００５１】
具体的には、図６（ａ）に示すように、時間ｔ１において、トルク指令値Ｔｒｅｆα（絶対値）がトルク値Ｔ３未満になったとする。この場合、図６（ｂ）に示すように、時間ｔ１から所定時間後（たとえば、１秒後）の時間ｔ２において、補正された逆トルク脈動成分を乗算する補正係数をゼロにする。この場合、補正のための演算処理は行われず、逆トルク脈動成分がゼロにされる。なお、補正係数がゼロにされるまでに所定時間が設けられることにより、トルク指令値Ｔｒｅｆβ（絶対値）の急激な変動を抑制することが可能である。
【００５２】
また、補正部１６は、時間ｔ１から時間ｔ２の間において、トルク指令値Ｔｒｅｆα（絶対値）が大きくなるにつれ、補正係数を線形的に減少させる。また、時間ｔ１までは、補正係数は一定値（たとえば、１）に固定されている。
【００５３】
（トルク定数Ｋｔの決定方法）
ここで、トルク定数Ｋｔの決定方法について説明する。なお、以下では、ｑ軸電流ｉｑ、ｄ軸電流ｉｄ、ｄ軸インダクタンスＬｄ、ｑ軸インダクタンスＬｑ、電機子抵抗Ｒａ、および、トルク定数Ｋｔ、ｄ軸電流指令ｉｄｒｅｆ、および、ｑ軸電流指令ｉｑｒｅｆを、それぞれ、ｉｑ、ｉｄ、Ｌｄ、Ｌｑ、Ｒａ、Ｋｔ、ｉｄｒｅｆ、および、ｉｑｒｅｆと記載する。
【００５４】
モータ２００を駆動するためのパラメータ（所望のトルクを出力するためのパラメータ）である、Ｋｔ、Ｒａ、ＬｄおよびＬｑは、モータ２００の状態（温度など）によって変化する。そこで、パラメータは、実際にモータ２００が駆動されている（電流が流されている）状態で、実測された様々な測定値と、下記の式（２）とに基づいて、決定部１８により決定（同定）される。なお、以下の説明では、Ｋｔの代わりに、ψaが決定される。なお、Ｋｔとψaとは、ψａ＝Ｋｔ／Ｐｎ（Ｐｎは対極数）の関係を有する。なお、式（２）のｉｄｒｅｆおよびｉｑｒｅｆは、電流電圧変換部４（図１参照）による電流のＰＩ偏差後の値である。
【数２】
2018098978.tif 000004
【００５５】
そして、上記の式（２）を、所定の条件（Ｒａ2＞＞ω2×Ｌｄ×Ｌｑなど）に基づいて修正することにより、下記の式（３ａ）〜式（３ｅ）が得られる。
【数３】
2018098978.tif 000005
【００５６】
ここで、Ｒａ、ｉｄｒｅｆ、ｉｑｒｅｆ、ψa、ＬｄおよびＬｑは、現在（周期Ｎ）の値である。ｉｄおよびｉｑは、実測値（ｉｄａ、ｉｑａ）である。Ｒａ＾、ψa＾、Ｌｄ＾およびＬｑ＾は、計算後（周期Ｎ＋１）の値である。そして、上記の式（３ａ）〜（３ｅ）に基づいて、次回の制御に用いられるパラメータが決定される。なお、Ｒａは、式（３ａ）および（３ｂ）のどちらからでも求められるが、ＳＰＭモータでは、ｄ軸電流（ｉｄ）がゼロなので、Ｒａは、式（３ｂ）により求められる。
【００５７】
（補正部の制御フロー）
次に、図７を参照して、本実施形態の補正部１６の制御フローについて説明する。
【００５８】
まず、ステップＳ１において、トルク脈動成分を正負反転させることによって、逆トルク脈動成分を算出する。なお、ステップＳ１は、１回目の制御周期（Ｎ＝０）においてのみ行われる。
【００５９】
次に、ステップＳ２において、ステップＳ１において算出された逆トルク脈動成分を比例補正する。すなわち、ステップＳ１において算出された逆トルク脈動成分を、（（Ｄ０＋(N+1)）／（Ｄ０＋(N)））倍する。なお、１回目の制御周期（Ｎ＝０）においては、Ｄ０＋(N)に１、Ｄ０＋(N+1)に所定の設計値を代入する。
【００６０】
次に、ステップＳ３において、角速度ω（絶対値）がω１以上否かを判定する。角速度ω（絶対値）がω１未満である場合は、ステップＳ４に進む。また、角速度ω（絶対値）がω１以上である場合は、ステップＳ５に進む。
【００６１】
次に、ステップＳ４において、ステップＳ２において補正された逆トルク脈動成分に、角速度ω（絶対値）に基づく補正係数（図４参照）を乗算する。次にステップＳ６に進む。
【００６２】
また、ステップＳ５において、ステップＳ２において補正された逆トルク脈動成分をゼロにする。次にステップＳ６に進む。
【００６３】
次に、ステップＳ６において、トルク指令値Ｔｒｅｆα（絶対値）が、トルク値Ｔ１以上か否かを判定する。トルク指令値Ｔｒｅｆα（絶対値）が、トルク値Ｔ１未満である場合は、ステップＳ７に進む。また、トルク指令値Ｔｒｅｆα（絶対値）が、トルク値Ｔ１以上である場合は、ステップＳ８に進む。
【００６４】
次に、ステップＳ７において、ステップＳ４またはＳ５において補正された逆トルク脈動成分に、トルク指令値Ｔｒｅｆα（絶対値）（モータ２００の回転時）の補正係数（図５参照）を乗算する。次にステップＳ９に進む。
【００６５】
また、ステップＳ８において、ステップＳ４またはＳ５において補正された逆トルク脈動成分をゼロにする。次にステップＳ９に進む。
【００６６】
次に、ステップＳ９において、トルク指令値Ｔｒｅｆα（絶対値）が、トルク値Ｔ３未満であるか否かを判定する。トルク指令値Ｔｒｅｆα（絶対値）が、トルク値Ｔ３以上である場合は、ステップＳ１０に進む。また、トルク指令値Ｔｒｅｆα（絶対値）が、トルク値Ｔ３未満である場合は、ステップＳ１１に進む。
【００６７】
次に、ステップＳ１０において、ステップＳ７またはＳ８において補正された逆トルク脈動成分に、トルク指令値Ｔｒｅｆα（絶対値）（モータ２００の停止時）の補正係数（図６（ｂ）参照）を乗算する。次にステップＳ１２に進む。
【００６８】
また、ステップＳ１１において、ステップＳ７またはＳ８において補正された逆トルク脈動成分をゼロにする。次にステップＳ１２に進む。
【００６９】
そして、ステップＳ１２において、補正脈動成分が決定される。すなわち、補正脈動成分は、ステップＳ１０における乗算によって得られた値か、または、ステップＳ１１によって得られたゼロに決定される。
【００７０】
そして、ステップＳ１２の後に、ステップＳ２に戻り、周期Ｎ＋２に移る。周期Ｎ＋２のステップＳ１２の後の周期Ｎ＋２のステップＳ２においては、周期Ｎ＋１のステップＳ１２において決定された補正脈動成分とトルク指令値Ｔｒｅｆα（絶対値）との和であるトルク指令値Ｔｒｅｆβ（絶対値）に基づいて、逆トルク脈動成分が比例補正される。具体的には、決定部１８により、トルク指令値Ｔｒｅｆβ（絶対値）に基づいて、ｉｄｒｅｆおよびｉｑｒｅｆが決定される。この時、モータ２００がＳＰＭモータの場合は、Ｌｑ＝Ｌｄなので、下記の式（４ａ）により、ｉｄｒｅｆおよびｉｑｒｅｆが決定される。また、モータ２００がＩＰＭモータの場合は、下記の式（４ｂ）により、ｉｄｒｅｆおよびｉｑｒｅｆが決定される。これにより、モータ２００がＳＰＭモータである場合、および、ＩＰＭモータである場合の各々に対応した、ｉｄｒｅｆおよびｉｑｒｅｆを決定することが可能である。
【数４】
2018098978.tif 000006
【００７１】
そして、決定部１８により、決定されたｉｄｒｅｆおよびｉｑｒｅｆと、上記の式（２）および（３ｃ）とに基づいて、周期Ｎ＋２におけるψa（Ｋｔ）が決定される。さらに、決定部１８により、決定された周期Ｎ＋２におけるＫｔと、上記の式（１ａ）に基づいて、周期Ｎ＋２における摩擦値であるＤ０＋(N+2)が取得される。そして、Ｄ０＋(N+2)とＤ０＋(N+1)とに基づいて、逆トルク脈動成分が比例補正され、その後、ステップＳ３〜Ｓ１２の制御に進む。なお、ステップＳ２〜Ｓ１２までの制御は、繰り返し行われる。
【００７２】
（本実施形態の効果）
本実施形態では、以下のような効果を得ることができる。
【００７３】
本実施形態では、上記のように、モータ２００のトルク脈動成分の正負を反転させた逆トルク脈動成分を、モータ２００およびモータ２００の負荷に生じる摩擦の大きさである摩擦値に基づいて補正することによって補正脈動成分を決定する補正部１６を含み、トルク指令値Ｔｒｅｆαと決定された補正脈動成分とに基づいてトルク指令値Ｔｒｅｆβを決定するトルクリップル低減制御部１５と、トルクリップル低減制御部１５により決定されたトルク指令値（トルク指令値Ｔｒｅｆβ）に基づいて、電流指令値を算出するトルク／電流変換部１とを備えるように、モータ制御装置１００を構成する。ここで、摩擦値は、モータ２００の経年劣化および複数のモータ２００間における個体差による数値のばらつきが比較的大きい。したがって、モータ２００の経年劣化および複数のモータ２００間における個体差に起因して数値が変動する摩擦値に基づいて、逆トルク脈動成分を補正し、補正脈動成分を決定することによって、モータ２００の経年劣化および複数のモータ２００間における個体差の影響を考慮した補正を容易に行うことができる。その結果、トルク脈動を適切に抑制することができる。
【００７４】
また、本実施形態では、上記のように、補正部１６が、所定の制御周期においてトルク指令値Ｔｒｅｆβに基づいて取得された摩擦値と、所定の制御周期の次の制御周期においてトルク指令値Ｔｒｅｆβに基づいて取得された摩擦値と、逆トルク脈動成分とに基づいて、所定の制御周期の次の制御周期の補正脈動成分を決定する制御を行うように、モータ制御装置１００を構成する。これにより、前回推定時の制御周期において取得された摩擦値に基づいて補正脈動成分を決定することによって、制御周期間におけるモータ２００の状態変化に起因する摩擦値の変動を加味しながら補正脈動成分を決定することができる。その結果、モータ２００を比較的長い期間使用することにより、モータ２００に経年劣化が生じた場合でも、トルク脈動をより適切に抑制することができる。
【００７５】
また、本実施形態では、上記のように、補正部１６が、所定の制御周期においてトルク指令値Ｔｒｅｆβに基づいて取得された摩擦値と、所定の制御周期の次の制御周期においてトルク指令値Ｔｒｅｆβに基づいて取得された摩擦値との比率と、逆トルク脈動成分とに基づいて、所定の制御周期の次の制御周期の補正脈動成分を決定する制御を行うように、モータ制御装置１００を構成する。これにより、前回推定時の制御周期において取得された摩擦値と、現時点の制御周期において取得された摩擦値との比率に基づいて補正脈動成分を決定することによって、制御周期間におけるモータ２００の状態（摩擦値）の変化率を直接的に加味しながら、補正脈動成分を決定することができる。その結果、制御周期間における摩擦値の差分等を考慮する場合に比べて、補正脈動成分を効率的に決定することができる。
【００７６】
また、本実施形態では、上記のように、補正部１６が、トルク指令値Ｔｒｅｆα（絶対値）がトルク値Ｔ１以上の場合において、トルク指令値の補償を行わないように、モータ制御装置１００を構成する。ここで、トルク指令値Ｔｒｅｆα（絶対値）が比較的大きい場合は、トルク脈動がモータ２００の動作（回転）に与える影響は比較的小さい。したがって、トルク指令値Ｔｒｅｆα（絶対値）がトルク値Ｔ１以上の場合において、トルク指令値の補償を行わないことによって、トルク脈動によるモータ２００の動作への影響を抑制しながら、トルク指令値Ｔｒｅｆα（絶対値）がトルク値Ｔ１以上の場合における制御を簡略化することができる。
【００７７】
また、本実施形態では、上記のように、補正部１６が、トルク指令値Ｔｒｅｆα（絶対値）が、モータ２００の停止状態のトルク近傍であるトルク値Ｔ３よりも小さい場合において、トルク指令値の補償を行わないように、モータ制御装置１００を構成する。ここで、モータ２００が停止または停止寸前の状態において、トルク脈動を考慮する必要性は比較的小さい。したがって、トルク指令値Ｔｒｅｆα（絶対値）が、モータ２００の停止状態のトルク近傍であるトルク値Ｔ３よりも小さい場合において、トルク指令値の補償を行わないことによって、トルク指令値Ｔｒｅｆα（絶対値）がトルク値Ｔ３よりも小さい場合における制御を簡略化することができる。また、トルク指令値Ｔｒｅｆα（絶対値）が比較的小さい場合でかつトルク指令値の補償を行った場合は、補償後のトルク指令値（トルク指令値Ｔｒｅｆβ（絶対値））に含まれる補正脈動成分の割合が比較的大きくなる。したがって、トルク指令値Ｔｒｅｆα（絶対値）がトルク値Ｔ３よりも小さい場合にトルク指令値の補償を行わないことによって、補正脈動成分に起因するＥＣＵおよびモータ２００の発熱を抑制することができる。
【００７８】
また、本実施形態では、上記のように、補正部１６が、モータ２００の正回転時において、モータ２００の正回転時の逆トルク脈動成分に基づいて補正脈動成分を決定し、モータ２００の負回転時において、モータ２００の負回転時の逆トルク脈動成分に基づいて補正脈動成分を決定する制御を行うように、モータ制御装置１００を構成する。これにより、モータ２００の正回転時および負回転時の各々において、トルク脈動を適切に抑制することができる。
【００７９】
なお、今回開示された実施形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施形態の説明ではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味および範囲内でのすべての変更（変形例）が含まれる。
【００８０】
たとえば、上記実施形態では、Ｄ０＋(N)とＤ０＋(N+1)との比率に基づいて、補正脈動成分が決定される例を示したが、本発明はこれに限られない。たとえば、Ｄ０＋(N)とＤ０＋(N+1)との比率以外（たとえば、差分）に基づいて、補正脈動成分が決定されてもよい。
【００８１】
また、上記実施形態では、角速度ω（絶対値）が大きい場合の補正（ステップＳ３）、トルク指令値Ｔｒｅｆα（絶対値）（要求トルク）が大きい場合の補正（ステップＳ６）、トルク指令値Ｔｒｅｆα（絶対値）（要求トルク）が小さい場合の補正（ステップＳ９）の順番に補正制御が行われる例を示したが、本発明はこれに限られない。たとえば、この補正制御の順番が互いに入れ替わってもよい。
【００８２】
また、上記実施形態では、角速度ω（絶対値）が大きい場合の補正（ステップＳ３）、トルク指令値Ｔｒｅｆα（絶対値）（要求トルク）が大きい場合の補正（ステップＳ６）、および、トルク指令値Ｔｒｅｆα（絶対値）（要求トルク）が小さい場合の補正（ステップＳ９）の各々において、所定の条件下で逆トルク脈動成分（補正係数）を線形的に減少させる例を示したが、本発明はこれに限られない。たとえば、逆トルク脈動成分を線形関数以外（たとえば、指数関数）により減少させてもよい。
【００８３】
また、上記実施形態では、トルク脈動成分は、補正部１６の補正制御が行われる以前に予め計測されたものであり、計測されたトルク脈動成分に基づいて逆トルク脈動成分が算出される例を示したが、本発明はこれに限られない。たとえば、予め準備された逆トルク脈動成分を示す特性マップを使用してもよい。
【００８４】
また、上記実施形態では、説明の便宜上、本発明の補正部１６の処理を処理フローに沿って順番に処理を行うフロー駆動型のフローチャートを用いて説明したが、本発明はこれに限られない。本発明では、補正部１６の処理動作を、イベントごとに処理を実行するイベント駆動型（イベントドリブン型）の処理により行ってもよい。この場合、完全なイベント駆動型で行ってもよいし、イベント駆動およびフロー駆動を組み合わせて行ってもよい。
【符号の説明】
【００８５】
１５  トルクリップル低減制御部（トルク指令値決定部）
１６  補正部
１００  モータ制御装置
２００  モータ
Ｔ１  トルク値（第１しきい値）
Ｔ３  トルク値（第２しきい値）
α  トルク指令値Ｔｒｅｆ（要求トルク）
β  トルク指令値Ｔｒｅｆ（補償されたトルク指令値）
ω  角速度
【図１】
2018098978.tif 000007
【図２】
2018098978.tif 000008
【図３】
2018098978.tif 000009
【図４】
2018098978.tif 000010
【図５】
2018098978.tif 000011
【図６】
2018098978.tif 000012
【図７】
2018098978.tif 000013