(57)【要約】【課題】モータシャフトで発生する捩れトルクを低減し、結果的にドライブシャフトの振動（共振）の低減ができるモータ制御装置を提供する。【解決手段】実施形態にかかるモータ制御装置は、モータ制御装置は、モータシャフトの回転角度としてのモータ角とダンパの下流側のトランスミッションのトランスミッションシャフトの回転角としてのシャフト角との差分に基づいて、エンジントルクの変動に応じてモータシャフトが発生させる第１捩れトルクを算出する第１トルク算出部と、第１捩れトルクとエンジンの駆動状態を示す駆動状態値とに基づいて、モータシャフトの振動を制振するためにモータジェネレータに出力させる第１制振トルクを算出する第１制振トルク算出部と、第１制振トルクに基づいて、モータジェネレータに与えるモータトルク指令値を出力するモータトルク指令出力部と、を備える。【選択図】図３
2020100355.tif 000002
【特許請求の範囲】
【請求項１】
動力源としてのエンジンおよびモータジェネレータと、前記エンジンのクランクシャフトのエンジントルクおよび前記モータジェネレータのモータシャフトのモータトルクのうち少なくとも一方に基づく駆動トルクを選択された変速比で車輪側に伝達するトランスミッションと、前記エンジンと前記トランスミッションとの間に設けられて前記クランクシャフトの振動を弾性部材によって低減するダンパと、を備えた車両のモータ制御装置であって、
前記モータシャフトの回転角度としてのモータ角と前記ダンパの下流側の前記トランスミッションのトランスミッションシャフトの回転角度としてのシャフト角との差分に基づいて、前記エンジントルクの変動に応じて前記モータシャフトが発生させる第１捩れトルクを算出する第１トルク算出部と、
前記第１捩れトルクと前記エンジンの駆動状態を示す駆動状態値とに基づいて、前記モータシャフトの振動を制振するために前記モータジェネレータに出力させる第１制振トルクを算出する第１制振トルク算出部と、
前記第１制振トルクに基づいて、前記モータジェネレータに与えるモータトルク指令値を出力するモータトルク指令出力部と、
を備える、モータ制御装置。
【請求項２】
前記クランクシャフトの回転角度としてのクランク角と前記シャフト角との差分に基づいて、前記エンジントルクの変動に応じて前記ダンパが発生させる第２捩れトルクを算出する第２トルク算出部と、
前記第２捩れトルクと前記エンジンの前記駆動状態値とに基づいて、前記ダンパの振動を制振するために前記モータジェネレータに出力させる第２制振トルクを算出する第２制振トルク算出部と、
を、さらに含み、
前記モータトルク指令出力部は、前記エンジンの回転数に応じて、前記第１制振トルクと前記第２制振トルクの少なくとも一方に基づいて、前記モータジェネレータに与えるモータトルク指令値を出力する、請求項１に記載のモータ制御装置。
【請求項３】
前記モータトルク指令出力部は、前記エンジンの回転数に応じて、前記第１制振トルクと前記第２制振トルクの切替ゲインを取得し、当該切替ゲインにしたがう前記第１制振トルクに基づく前記モータトルク指令値と前記第２制振トルクに基づく前記モータトルク指令値を出力する、請求項２に記載のモータ制御装置。
【請求項４】
前記駆動状態値は、前記エンジンの回転数および前記エンジンの負荷率に基づいて決定する、請求項１から請求項３のいずれか１項に記載のモータ制御装置。
【請求項５】
前記モータトルク指令出力部は、前記エンジンと前記トランスミッションとの間に設けられるクラッチが、前記クランクシャフトと前記トランスミッションシャフトとを接続する接続状態になっている場合に、前記モータトルク指令値を出力し、前記クラッチが前記クランクシャフトと前記トランスミッションシャフトとの接続を遮断する遮断状態になっている場合に、または、前記クラッチが接続状態になっている場合に前記車両を加速させる加速操作が行われていない場合に、前記モータトルクをゼロにする前記モータトルク指令値を出力する、請求項１から請求項４のいずれか１項に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、モータ制御装置に関する。
【背景技術】
【０００２】
従来、動力源としてのエンジンおよびモータジェネレータと、エンジンのエンジントルクおよびモータジェネレータのモータトルクのうち少なくとも一方に基づく駆動トルクを選択された変速比で車輪側に伝達するトランスミッションと、エンジンのクランクシャフトの振動を低減するダンパと、を備えた車両が知られている。また、エンジンの振動（トルク変動）によってダンパが発生させる捩れトルクとは逆位相のモータトルクを出力してダンパの捩れトルクを相殺することで、ダンパにおける捩れトルクに応じてドライブシャフト等で発生する振動を低減する技術が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１６９９５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述したような車両の場合、ダンパ以外で発生する捩れトルクが原因でドライブシャフトが振動（共振）する場合がある。例えば、モータジェネレータのモータシャフトは、トランスミッションを介してドライブシャフトにトルク伝達を行う。そのため、エンジンのクランクシャフトの振動（トルク変動）によりモータシャフトに捩れトルクが発生させられ、その捩れトルクに起因する振動によりドライブシャフトが共振して大きな振動が生じてしまう場合がある。
【０００５】
そこで、実施形態の課題の一つは、モータジェネレータのモータシャフトで発生する捩れトルクを低減し、結果的にドライブシャフトの振動（共振）の低減ができるモータ制御装置を提供することである。
【課題を解決するための手段】
【０００６】
本発明の実施形態にかかるモータ制御装置は、例えば、動力源としてのエンジンおよびモータジェネレータと、上記エンジンのクランクシャフトのエンジントルクおよび上記モータジェネレータのモータシャフトのモータトルクのうち少なくとも一方に基づく駆動トルクを選択された変速比で車輪側に伝達するトランスミッションと、上記エンジンと上記トランスミッションとの間に設けられて上記クランクシャフトの振動を弾性部材によって低減するダンパと、を備える。そして、モータ制御装置は、上記モータシャフトの回転角度としてのモータ角と上記ダンパの下流側の上記トランスミッションのトランスミッションシャフトの回転角としてのシャフト角との差分に基づいて、上記エンジントルクの変動に応じて上記モータシャフトが発生させる第１捩れトルクを算出する第１トルク算出部と、上記第１捩れトルクと上記エンジンの駆動状態を示す駆動状態値とに基づいて、上記モータシャフトの振動を制振するために上記モータジェネレータに出力させる第１制振トルクを算出する第１制振トルク算出部と、上記第１制振トルクに基づいて、上記モータジェネレータに与えるモータトルク指令値を出力するモータトルク指令出力部と、を備える。この構成によれば、例えば、モータシャフトで発生する振動の原因となる第１捩れトルクを第１制振トルクにより低減可能となり、結果的にドライブシャフトの振動（共振）が低減できる。
【０００７】
また、実施形態のかかるモータ制御装置は、例えば、上記クランクシャフトの回転角度としてのクランク角と上記シャフト角との差分に基づいて、上記エンジントルクの変動に応じて上記ダンパが発生させる第２捩れトルクを算出する第２トルク算出部と、上記第２捩れトルクと上記エンジンの上記駆動状態値とに基づいて、上記ダンパの振動を制振するために上記モータジェネレータに出力させる第２制振トルクを算出する第２制振トルク算出部と、を、さらに含む。そして、上記モータトルク指令出力部は、上記エンジンの回転数に応じて、上記第１制振トルクと上記第２制振トルクの少なくとも一方に基づいて、上記モータジェネレータに与えるモータトルク指令値を出力してもよい。この構成によれば、例えば、ダンパで発生する振動の原因となる第２捩れトルクを第２制振トルクにより低減可能となる。この場合、エンジン状態（回転数）によりドライブシャフトにおける振動（共振）で支配的となる振動元が、ダンパとなったりモータシャフトとなったりする。そのため、エンジン回転数に応じて、第１制振トルクと第２制振トルクをそれぞれ使い分けることにより、ドライブシャフトの振動（共振）の低減をより効果的に行うことができる。
【０００８】
また、実施形態のかかるモータ制御装置の上記モータトルク指令出力部は、例えば、上記エンジンの回転数に応じて、上記第１制振トルクと上記第２制振トルクの切替ゲインを取得し、当該切替ゲインにしたがう上記第１制振トルクに基づく上記モータトルク指令値と上記第２制振トルクに基づく上記モータトルク指令値を出力するようにしてもよい。この構成によれば、エンジンの状態（回転数）により、変化するドライブシャフトの共振（振動）を、エンジン回転数に応じて、第１制振トルクと第２制振トルクの大きさを変化させることにより、効果的に低減することができる。
【０００９】
また、実施形態のかかるモータ制御装置の上記駆動状態値は、例えば、上記エンジンの回転数および上記エンジンの負荷率に基づいて決定するようにしてもよい。この構成によれば、例えば、ドライブシャフトで発生している振動（共振）の原因となるエンジンの駆動状態をより反映させた制振トルクの算出が可能になり、ドライブシャフトの振動（共振）の低減をより効果的に行うことができる。
【００１０】
また、実施形態のかかるモータ制御装置の上記モータトルク指令出力部は、例えば、上記エンジンと上記トランスミッションとの間に設けられるクラッチが、上記クランクシャフトと上記トランスミッションシャフトとを接続する接続状態になっている場合に、上記モータトルク指令値を出力し、上記クラッチが上記クランクシャフトと上記トランスミッションシャフトとの接続を遮断する遮断状態になっている場合に、または、上記クラッチが接続状態になっている場合に上記車両を加速させる加速操作が行われていない場合に、上記モータトルクをゼロにする上記モータトルク指令値を出力するようにしてもよい。この構成によれば、例えば、クランクシャフトの振動がクラッチを介して車輪側に伝達されるか否かに応じて、ドライブシャフトの振動（共振）の影響を低減するためのモータトルクを発生させるか否かを切り替えることができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施形態にかかるモータ制御装置を含む車両の駆動システムの構成を示した例示的かつ模式的なブロック図である。
【図２】図２は、実施形態において考慮すべき、ドライブシャフトで発生しているトルクの変動（振動）の原因となるダンパ共振とモータシャフト共振の位置を例示的かつ模式的な図である。
【図３】図３は、実施形態にかかるモータ制御装置が有する機能モジュール群を示した例示的かつ模式的なブロック図である。
【図４】図４は、エンジンの回転数とエンジン負荷率に応じて変化するクランクシャフトのトルク変動（振動）に対応して変化させる制振トルクのトルクゲインの遷移を示す例示的かつ模式的な説明図である。
【図５】図５は、実施形態にかかるモータ制御装置において、ドライブシャフトで発生しているトルクの変動（振動）を示す図であり、ダンパの振動に対応する制振トルクを付与する制御を実行した場合のドライブシャフトのトルク変動の変化の様子を示す例示的かつ模式的な説明である。
【図６】図６は、実施形態にかかるモータ制御装置において、ドライブシャフトで発生しているトルクの変動（振動）を示す図であり、モータシャフトの振動に対応する制振トルクを付与する制御を実行した場合のドライブシャフトのトルク変動の変化の様子を示す例示的かつ模式的な説明である。
【図７】図７は、実施形態にかかるモータ制御装置において、ダンパの振動に対応する制振トルクとモータシャフトの振動に対応する制振トルクを用いた制御を切り替える場合のシフト段ごとのエンジン回転数と切替ゲインの関係を示す例示的かつ模式的な説明図である。
【図８】図８は、図７の切替ゲインを用いて制振トルクの切替制御を実行した場合の、ドライブシャフトのトルクの変動を示す例示的かつ模式的な説明図である。
【図９】図９は、実施形態にかかるモータ制御装置において、ダンパの振動に対応する制振トルクとモータシャフトの振動に対応する制振トルクを用いた制御を切り替える場合のシフト段ごとのエンジン回転数と切替ゲインの他の関係を示す例示的かつ模式的な説明図である。
【図１０】図１０は、実施形態にかかるモータ制御装置が実行する一連の処理を示した例示的なフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の例示的な実施形態が開示される。以下に示される実施形態の構成、ならびに当該構成によってもたらされる作用、結果、および効果は、一例である。本発明は、以下の実施形態に開示される構成以外によっても実現可能であるとともに、基本的な構成に基づく種々の効果や、派生的な効果のうち、少なくとも一つを得ることが可能である。
【００１３】
図１は、実施形態にかかるモータ制御装置１０を含む車両Ｖの駆動システム１００の構成を示した例示的かつ模式的なブロック図である。
【００１４】
図１に示されるように、実施形態にかかる車両Ｖの駆動システム１００は、エンジン１２と、モータジェネレータ１４と、トランスミッション１６と、ダンパ１８と、クラッチ２０と、モータ制御装置１０と、を備えている。
【００１５】
エンジン１２およびモータジェネレータ１４は、車両Ｖの動力源である。エンジン１２は、エンジンＥＣＵ（不図示）の制御に応じてエンジントルクを出力し、クランクシャフト２２を回転させる。同様に、モータジェネレータ１４は、モータ制御装置１０の制御に応じてモータトルクを出力し、モータシャフト２４を回転させる。
【００１６】
トランスミッション１６は、エンジン１２のクランクシャフト２２のエンジントルクおよびモータジェネレータ１４のモータシャフト２４のモータトルクのうち少なくとも一方に基づく駆動トルクを選択された変速比で車輪Ｗ側に伝達する。駆動トルクは、ドライブシャフト２６を介して車輪Ｗ側に伝達される。
【００１７】
ダンパ１８は、クランクシャフト２２の振動（エンジントルクの変動）を低減（吸収）するトルク変動吸収装置である。ダンパ１８は、一般的なダンパと同様の弾性部材を有しており、エンジントルクの変動に応じて、ダンパトルクを発生させる。
【００１８】
クラッチ２０は、エンジン１２（ダンパ１８）とトランスミッション１６との間に設けられ、エンジン１２のクランクシャフト２２とトランスミッション１６のトランスミッションシャフト２８との接続／遮断を切り替える。クラッチ２０は、クランクシャフト２２とトランスミッションシャフト２８とを接続する接続状態になっている場合に、クランクシャフト２２とトランスミッションシャフト２８との間のトルク（の少なくとも一部）の伝達を実施する。また、クラッチ２０は、クランクシャフト２２とトランスミッションシャフト２８との接続を遮断する遮断状態になっている場合に、ダンパ１８と当該ダンパ１８の下流側に配置されたトランスミッション１６のトランスミッションシャフト２８との間のトルクの伝達を遮断する。
【００１９】
モータ制御装置１０は、例えば、プロセッサやメモリなどを備えたマイクロコンピュータとして構成されたＥＣＵ（Electronic  Control  Unit）である。モータ制御装置１０は、モータジェネレータ１４に指令値としてのモータトルク指令値を与えることで、モータジェネレータ１４のモータトルクを制御する。
【００２０】
モータ制御装置１０は、車両Ｖに設けられる各種のセンサを、制御に利用することができる。図１に示される例では、各種のセンサとして、クランク角センサ３０と、モータ角センサ３２と、シャフト角センサ３４、アクセルポジションセンサ３６と、ストロークセンサ３８と、シフトポジションセンサ４０等が例示されている。
【００２１】
クランク角センサ３０は、クランクシャフト２２の回転角度としてのクランク角を検出する。モータ角センサ３２は、モータシャフト２４の回転角度としてのモータ角を検出する。シャフト角センサ３４は、トランスミッション１６のトランスミッションシャフト２８の回転角度としてシャフト角を検出する。
【００２２】
アクセルポジションセンサ３６は、例えばアクセルペダルなどといった、車両Ｖを加速させる加速操作を行うための加速操作部（不図示）の操作量（踏み込み量、操作位置）などを検出することで、ドライバにより加速操作が行われているか否かを検出する。ストロークセンサ３８は、例えばクラッチペダルなどといった、クラッチ２０を操作するためのクラッチ操作部（不図示）の操作量（踏み込み量、操作位置）などを検出することで、クラッチ２０が接続状態になっているか遮断状態になっているかを検出する。シフトポジションセンサ４０は、トランスミッション１６に現在設定されている変速段（シフト段）を検出する。
【００２３】
ところで、実施形態にかかるダンパ１８のような一般的なダンパが設けられた構成において、エンジン１２（クランクシャフト２２）のトルク変動（振動）に起因してダンパ１８に捩れトルクが発生して、当該ダンパ１８が振動する場合がある。この場合、ダンパ１８で発生した捩れトルクとは逆位相のモータトルクを出力することで、ダンパ１８における捩れトルクを相殺して振動を低減する技術が知られている。
【００２４】
しかしながら、車両Ｖの駆動システム１００場合、ダンパ１８以外で発生する捩れトルクが原因でドライブシャフト２６が振動（共振）する場合がある。例えば、モータジェネレータ１４のモータシャフト２４は、トランスミッション１６を介してドライブシャフト２６にトルク伝達を行う。そのため、エンジン１２のクランクシャフト２２の振動（トルク変動）によりモータシャフト２４に捩れトルクが発生させられ、その捩れトルクに起因する振動によりドライブシャフトが共振して大きな振動が生じてしまう場合がある。
【００２５】
図２は、ドライブシャフト２６で発生しているトルクの変動（振動）を示す図である。図２において、エンジン１２の回転数の低い領域で発生しているトルク変動が、ダンパ１８の捩れトルクに起因する振動によりドライブシャフト２６で表れるダンパ共振Ｍである。また、エンジン１２の回転数の高い領域で発生しているトルク変動が、モータシャフト２４の捩れトルクに起因する振動によりドライブシャフト２６で表れるシャフト共振Ｓである。エンジン１２の回転数の低域側で主として発生するダンパ共振Ｍは、前述したように、ダンパ１８で発生した捩れトルクとは逆位相のモータトルクを与えることで低減できる。つまり、ダンパ１８における捩れトルクを相殺して、ダンパ１８における振動を低減することができる。一方、エンジン１２の回転数の高域側で主として発生するシャフト共振Ｓについては、エンジン１２の回転数が高くなるほど振動が小さくなることから、従来考慮されなかった。しかし、駆動システム１００の構成によって、シャフト共振Ｓの位置が低域側にシフトして、例えば制振対象領域（車両Ｖの通常走行において常用されるエンジン回転数の領域）に入ってしまう場合がある。シャフト共振Ｓの位置は、車両Ｖの構成、例えば、トランスミッション１６の構成や剛性、慣性等、種々の要素によって変化する。そこで、本実施形態では、シャフト共振Ｓに着目し、当該シャフト共振の低減により、車両Ｖ自体の振動抑制による乗り心地の向上を実現する。具体的には、モータシャフト２４の捩れトルクを算出し、当該捩れトルクを相殺するような制振トルクをモータジェネレータ１４で発生させることにより、モータシャフト２４のトルク変動（振動）を低減し、結果的にドライブシャフト２６におけるシャフト共振Ｓの発生を低減する。
【００２６】
図３は、実施形態にかかるモータ制御装置１０が有する機能モジュール群を示した例示的かつ模式的なブロック図である。
【００２７】
図３に示されるように、モータ制御装置１０は、制振要否判定部４２、シャフトトルク算出部４４（第１トルク算出部ともいう）、第１ゲイン算出部４６、第１制振トルク算出部４８、ダンパトルク算出部５０（第２トルク算出部ともいう）、第２ゲイン算出部５２、第２制振トルク算出部５４、切替ゲイン算出部５６、制振トルク算出部５８、フィルタ処理部６０、指令トルク決定部６２、駆動制御部６４等を備える。実施形態では、これらの機能モジュール群の一部または全部が、専用のハードウェア（回路）によって実現されてもよい。なお、本実施形態において、切替ゲイン算出部５６、制振トルク算出部５８、フィルタ処理部６０、指令トルク決定部６２、駆動制御部６４をまとめて、「モータトルク指令出力部」ともいう。
【００２８】
また、図３に示されるように、モータ制御装置１０は、第１ゲイン算出部４６が参照するデータとして、第１ゲインマップ６６を備える。また、第２ゲイン算出部５２が参照するデータとして第２ゲインマップ６８を備える。
【００２９】
制振要否判定部４２は、アクセルポジションセンサ３６およびストロークセンサ３８の検出結果に基づいて、ダンパ１８の振動の原因となるダンパトルクおよびモータシャフト２４の振動の原因となるシャフトトルクを相殺してドライブシャフト２６の振動（共振）を低減するためのモータトルクの出力の要否を判定する。なお、以下の説明では、ドライブシャフト２６の振動を低減するためのモータトルクを、制振トルクと表現することがある。
【００３０】
例えば、クラッチ２０が遮断状態になっている場合や、クラッチ２０が接続状態になっていたとしても加速操作が行われていない場合（アクセルペダルがオフ状態のとき）などにおいては、エンジントルクの変動がドライブシャフト２６側に伝達されないので、制振トルクを出力する必要がない。したがって、このような場合、制振要否判定部４２は、制振トルクがゼロになるように、制振トルクを出力する必要がない旨を指令トルク決定部６２に通知する。なお、駆動システム１００がモータジェネレータ１４のみのモータトルクで走行している場合、エンジン１２は停止し、エンジントルクの変動がドライブシャフト２６側に伝達されないので、制振トルクを出力する必要がない。制振要否判定部４２は、この判定を、エンジン１２とモータジェネレータ１４を統合的に制御する図示しないハイブリッドＥＣＵ等からの信号に基づいて実行することができる。
【００３１】
一方、クラッチ２０が接続状態になっており、かつ加速操作が行われている場合は、エンジントルクの変動がドライブシャフト２６側に伝達されるので、制振トルクによって振動を低減する必要がある。したがって、このような場合、制振要否判定部４２は、ダンパトルクおよびシャフトトルクを相殺するための制振トルクが出力されるように、制振トルクを出力する必要がある旨を指令トルク決定部６２に通知する。
【００３２】
シャフトトルク算出部４４は、シャフト角センサ３４およびモータ角センサ３２の検出結果に基づいて、モータシャフト２４が発生させるシャフトトルクＴｓ（第１捩れトルク）を算出（推定）する。モータシャフト２４の捩れ角は、シャフト角センサ３４の検出結果としてのトランスミッションシャフト２８のシャフト角θ１とし、モータ角センサ３２の検出結果としてのモータ角θ２とした場合、シャフト角θ１とモータ角θ２との差分に基づいて算出することができる。そして、モータシャフト２４のばね定数をＫｓとすると、シャフトトルクＴｓは、Ｔｓ＝Ｋｓ（θ１−θ２）で算出することができる。
【００３３】
第１ゲイン算出部４６は、第１制振トルク算出部４８において、モータシャフト２４の制振トルク（第１制振トルク）を決定する場合に利用する第１ゲインＧｓ（シャフトトルクゲイン）を算出する。エンジン１２（クランクシャフト２２）で発生する振動の大きさは、エンジン１２の回転数とエンジン１２の負荷率に応じて変化する。例えば、図４に示すように、エンジン１２の負荷率が大きい程、エンジン１２（クランクシャフト２２）の振動が大きくなる。その結果、モータシャフト２４における振動（トルク変動）も大きくなり、制振のためにはより大きな制振トルクが必要になる。逆に、エンジン１２の負荷率が小さければ、エンジン１２（クランクシャフト２２）の振動は小さくなる。つまり、モータシャフト２４における振動（トルク変動）も小さくなり、制振のために必要な制振トルクは小さくて済む。図４に示すような、エンジン１２の回転数と負荷率とトルクゲインとの関係は、予め試験等により算出可能であり、例えばマップ化しておき、第１ゲインマップ６６に記憶しておくことができる。エンジン１２の回転数は、エンジン回転数取得部７０から取得する。エンジン回転数取得部７０は、例えば、クランク角センサ３０の検出結果に基づいてエンジン１２の回転数を推定して取得してもよいし、専用のセンサにより回転数を検出して取得してもよい。また、エンジン回転数取得部７０は、モータジェネレータ１４とエンジン１２とが動力的に繋がっている場合には、エンジン１２の回転数をモータジェネレータ１４の回転数から取得してもよい。また、エンジン１２の負荷率は、例えば、アクセルポジションセンサ３６の検出結果と、予め試験等で取得した負荷率とアクセルペダルの踏み込み量（アクセルポジション）とを対応付けたマップとを参照して推定することができる。また、図示を省略しているが、エンジン１２のスロットル開度を検出するスロットルセンサの検出結果やエンジンＥＣＵからの情報に基づいてエンジン１２の負荷率を推定してもよい。なお、エンジン１２の回転数が高くなるほど、ドライブシャフト２６における振動（共振）が小さくなる傾向が知られている。したがって、図４に示すように、エンジン１２の回転数が例えば一定値を超えるとトルクゲインが減少するようにマップを設定するようにしてもよい。なお、トルクゲインは、エンジン１２の駆動状態を示す駆動状態値と表現することもできる。
【００３４】
第１制振トルク算出部４８は、第１制振トルクＴｍ１を、シャフトトルク算出部４４で算出したシャフトトルクＴｓと第１ゲイン算出部４６で算出した第１ゲインＧｓ（駆動状態値）との乗算（Ｔｍ１＝Ｔｓ×Ｇｓ）に基づいて算出する。なお、モータシャフト２４の制振には、同位相の制振トルクを用いるため、第１制振トルクＴｍ１は、「＋」となる。
【００３５】
ダンパトルク算出部５０は、クランク角センサ３０およびシャフト角センサ３４の検出結果に基づいて、ダンパ１８が発生させるダンパトルクＴｄ（第２捩れトルク）を算出（推定）する。ダンパ１８の捩れ角は、クランク角センサ３０の検出結果としてのクランク角θ３とし、トランスミッションシャフト２８のシャフト角θ１とした場合、クランク角θ３とシャフト角θ１との差分に基づいて算出することができる。そして、ダンパ１８の弾性部材のばね定数をＫｄとすると、ダンパトルクＴｄは、Ｔｄ＝Ｋｄ（θ３−θ１）で算出することができる。
【００３６】
第２ゲイン算出部５２は、第２制振トルク算出部５４において、ダンパ１８の制振トルク（第２制振トルク）を決定する場合に利用する第２ゲインＧｄ（ダンパトルクゲイン）を算出する。前述したように、エンジン１２（クランクシャフト２２）で発生する振動の大きさは、エンジン１２の回転数とエンジン１２の負荷率に応じて変化する。したがって、図４に示すマップと同様のダンパ１８用のマップを第２ゲインマップ６８に記憶しておくことにより、エンジン回転数取得部７０が取得するエンジン１２の回転数と、アクセルポジションセンサ３６の検出結果に基づいて推定されるエンジン１２の負荷率に応じた第２ゲインＧｄ（ダンパトルクゲイン）を算出することができる。
【００３７】
第２制振トルク算出部５４は、第２制振トルクＴｍ２を、ダンパトルク算出部５０で算出したダンパトルクＴｄと第２ゲイン算出部５２で算出した第２ゲインＧｄ（駆動状態値）との乗算（Ｔｍ２＝−Ｔｄ×Ｇｄ）に基づいて算出する。なお、前述したように、ダンパ１８の制振には、逆位相の制振トルクを用いるため、第２制振トルクＴｍ２は、「−」が付される。
【００３８】
ところで、図２で示したように、ドライブシャフト２６のトルク変動（振動）は、エンジン１２の回転数によって支配的となる共振が異なる。図５は、ダンパ１８のみが振動していると仮定した場合に駆動システム１００を駆動させて、ドライブシャフト２６が振動（共振）している場合に、ダンパ１８に対応する第２制振トルクＴｍ２を付与する制御を実行した場合のドライブシャフト２６のトルク変動の変化の様子を示す例示的かつ模式的な説明である。二点鎖線で示すトルク変動Ｔ０が、上述した第２制振トルクＴｍ２を付与しない場合のトルク変動（制御なし変動）を示す例である。一方、一点鎖線で示すトルク変動Ｔ２が、第２制振トルクＴｍ２を付与した場合のトルク変動（制御あり変動）を示す例である。図５に示されるように、エンジン１２の回転数が低い領域（例えば、回転数Ａ未満の領域）では、ダンパ１８の振動に対応する制振効果が表れ、ドライブシャフト２６の振動が低減されている。一方、回転数Ａ以上の高域側では、ドライブシャフト２６の振動は低減されているものの十分には、低減されず、車両Ｖの乗り心地の悪化の原因になりうる。
【００３９】
図６は、モータシャフト２４のみが振動していると仮定した場合に、駆動システム１００を駆動させて、ドライブシャフト２６が振動（共振）している場合に、モータシャフト２４に対応する第１制振トルクＴｍ１を付与する制御を実行した場合のドライブシャフト２６のトルク変動の変化の様子を示す例示的かつ模式的な説明である。二点鎖線で示すトルク変動Ｔ０が、上述した第１制振トルクＴｍ１を付与しない場合のトルク変動（制御なし変動）を示す例である。一方、破線で示すトルク変動Ｔ１が、第１制振トルクＴｍ１を付与した場合のトルク変動（制御あり変動）を示す例である。図６に示されるように、エンジン１２の回転数が高い領域（例えば、回転数Ａ以上の領域）では、モータシャフト２４の振動に対応する制振効果が表れ、ドライブシャフト２６の振動が低減されている。一方、回転数Ａ未満の低域側では、ドライブシャフト２６の振動は悪化して、非制御の場合より振動が大きくなっている。つまり、車両Ｖの乗り心地の悪化の原因になりうる。
【００４０】
したがって、エンジン１２の回転数に応じて、制振対象を切り替えることにより、エンジン１２の回転数の全域において、効果的な制振が可能となる。そこで、本実施形態のモータ制御装置１０は、切替ゲイン算出部５６を備える。切替ゲイン算出部５６は、例えば、エンジン回転数取得部７０から取得されるエンジン１２の回転数に基づいて、切替ゲインを算出する。例えば、切替ゲイン算出部５６は、シフトポジションセンサ４０から取得されるシフト段情報Ｓｈおよびエンジン回転数取得部７０から取得されるエンジン１２の回転数Ｎｅに基づいて、ダンパ１８の振動に対応する制振制御とモータシャフト２４の振動に対応する制振制御のいずれを支配的に実行させるかを決定する切替ゲインＧ１，Ｇ２を算出する（Ｇ１＝ｆ（Ｎｅ，Ｓｈ），Ｇ２＝ｆ（Ｎｅ，Ｓｈ））。
【００４１】
図７は、モータ制御装置１０において、ダンパ１８の振動に対応する制振トルクとモータシャフト２４の振動に対応する制振トルクを用いた制御を切り替える場合のシフト段ごとのエンジン回転数と切替ゲインの関係を示す例示的かつ模式的な説明図である。図７は、例えば、トランスミッション１６のシフト段が「５ｔｈ」の場合の切替パターンを示す図である。図７の場合、エンジン１２の回転数が低域側でダンパ１８の振動に対応する制振制御を最大で実施するように一点鎖線で示す切替ゲインＧ２（５）を例えば、「１」としている。一方、この場合、モータシャフト２４の振動に対応する制振制御を非実施とするように実線で示す切替ゲインＧ１（５）を「０」としている。そして、シフト段が「５ｔｈ」の場合に予め試験等で定めたエンジン１２の回転数Ａに達した場合、ダンパ１８の制振制御用の切替ゲインＧ２（５）を漸減させる。また、モータシャフト２４の制振制御用の切替ゲインＧ１（５）を漸増させる。そして、シフト段が「５ｔｈ」の場合に予め試験等で定めたエンジン１２の回転数Ｂに達した場合に、完全にダンパ１８の制振制御用の切替ゲインＧ２（５）からモータシャフト２４の制振制御用の切替ゲインＧ１（５）に切り替わるようにする。
【００４２】
図３に戻り、制振トルク算出部５８は、第１制振トルク算出部４８で算出された第１制振トルクＴｍ１（モータシャフト２４の制振用のトルク）と第２制振トルク算出部５４算出された第２制振トルクＴｍ２（ダンパ１８の制振用のトルク）と、切替ゲイン算出部５６で算出された切替ゲインＧ１，Ｇ２とに基づき、エンジン１２の回転数に応じたトルク指令値Ｔｍを算出する。すなわち、トルク指令値Ｔｍは、Ｔｍ＝Ｔｍ１×Ｇ１＋Ｔｍ２×Ｇ２で算出できる。
【００４３】
フィルタ処理部６０は、制振トルク算出部５８の算出結果にフィルタリング処理を施し、エンジン１２の爆発による脈動周波数に対応した振動成分を抽出する。フィルタ処理部６０は、まず、エンジン１２の脈動周波数ｆｅを算出する。脈動周波数ｆｅは、エンジン回転数取得部７０等によって取得可能なエンジン１２の回転数Ｎｅと、エンジン１２の気筒数ｎ、エンジン１２のサイクル数ｃに基づき、ｆｅ＝Ｎｅ×ｎ／６０×ｃで算出できる。なお、気筒数ｎとサイクル数ｃは、エンジン１２に対して固定値であるため、脈動周波数ｆｅは、回転数によって変化する。フィルタ処理部６０は、現在のエンジン１２の回転数に応じた脈動周波数ｆｅを通過帯域とするバンドパスフィルタＦ（ｓ）を算出する。そして、フィルタ処理部６０は、制振トルク算出部５８で算出したトルク指令値Ｔｍに算出したバンドパスフィルタＦ（ｓ）を適用し、モータジェネレータ１４の性能や目標制振性能によって決定される上下限処理を実行する。つまり、モータジェネレータ１４に適した実トルク指令値Ｔｍ_ｂｐｆ（Ｔｍ_ｂｐｆ＝Ｆ（ｓ）×Ｔｍ）を決定する。
【００４４】
指令トルク決定部６２は、制振要否判定部４２の判定結果に基づき、駆動制御部６４に対してモータトルク指令値Ｔｍ_ｒｅｑを出力する。つまり、ドライブシャフト２６の振動（共振）を低減するためのモータトルクの出力の要否の判定結果に基づき、振動（共振）の低減が必要な場合、フィルタ処理部６０を通過させた結果として得られた実トルク指令値Ｔｍ_ｂｐｆに基づきモータトルク指令値Ｔｍ_ｒｅｑを駆動制御部６４に出力する。したがって、指令トルク決定部６２は、適切なタイミングで、モータジェネレータ１４を性能範囲内で動作させるようなモータトルク指令値Ｔｍ_ｒｅｑを出力する。そして、駆動制御部６４は、モータトルク指令値Ｔｍ_ｒｅｑにしたがいモータジェネレータ１４を駆動する。
【００４５】
図８において、制振制御を非実行の場合のドライブシャフト２６のトルク変動Ｔ０が二点鎖線で示され、モータシャフト２４のみの制振制御を行った場合のドライブシャフト２６のトルク変動Ｔ１が破線で示され、ダンパ１８のみの制振制御を行った場合のドライブシャフト２６のトルク変動Ｔ２が一点鎖線で示されている。そして、切替ゲイン算出部５６の切替ゲインにしたがう切替制御を行った場合のドライブシャフト２６のトルク変動Ｔが実線で示されている。図８に示されるように、制振制御において、切替制御を実行して決定したモータトルク指令値Ｔｍ_ｒｅｑにしたがいモータジェネレータ１４に制振制御トルクを発生させることにより、エンジン１２の回転数Ａ未満の領域では、ダンパ１８の振動に対応する制振制御が支配的となる。その結果、回転数Ａ未満の領域でドライブシャフト２６の振動（共振）の低減が実行できる。また、エンジン１２の回転数Ａ以上の領域では、モータシャフト２４の振動に対応する制振制御が支配的となる。その結果、回転数Ａ以上の領域でドライブシャフト２６の振動（共振）の低減が実行できる。すなわち、エンジン１２の回転数の全領域において、制振制御の非実行時に比べドライブシャフト２６の振動（共振）の低減が実行できる。
【００４６】
切替ゲインＧ１，Ｇ２を用いた第１制振トルクＴｍ１と第２制振トルクＴｍ２との切り替えのタイミング（例えば、図７のおける回転数Ａのタイミング）は、ドライブシャフト２６の振動（共振）の特徴が切り替わるタイミングで行われるように予め設定することができる。ドライブシャフト２６の振動（共振）の位置は、車種やエンジン１２、モータジェネレータ１４等、駆動システム１００の構成によって予め算出することができる。例えば、ダンパ１８の振動に起因するダンパ共振Ｍは算出可能である。同様に、モータシャフト２４の振動に起因するシャフト共振Ｓは算出可能である。したがって、ドライブシャフト２６の振動において、ダンパ共振Ｍが支配的となる領域とシャフト共振Ｓが支配的となる領域とが切り替わる、「節」の位置が特定可能である。この「節」の位置（例えば、図７の回転数Ａの位置）で、第１制振トルクＴｍ１と第２制振トルクＴｍ２との切り替えを実施すれば、第１制振トルクＴｍ１と第２制振トルクＴｍ２のそれぞれによって効果的に制振ができる制振制御が実現できる。
【００４７】
なお、ドライブシャフト２６の共振点（ダンパ１８の振動による共振点およびモータシャフト２４の振動による共振点）は、ドライブシャフト２６の剛性やドライブシャフト２６に作用する慣性によって変化する。例えば、トランスミッション１６がシフトダウンする場合、ドライブシャフト２６に影響する慣性が変化する。また、トランスミッション１６がシフトダウンするとエンジン１２の回転数が上昇し、それに伴い共振点の位置も高回転側に移動する。したがって、切替ゲインＧ１，Ｇ２を用いた第１制振トルクＴｍ１と第２制振トルクＴｍ２との切り替えのタイミングは、トランスミッション１６のシフト段に応じて変更するようにしてもよい。例えば、シフト段が「５ｔｈ」からシフトダウンして「４ｔｈ」になった場合、図７に示すように、切替タイミングが高回転側にシフトし、二点鎖線で示すダンパ１８の制振制御用の切替ゲインＧ２（４）および太破線で示すモータシャフト２４の制振制御用の切替ゲインＧ２（４）となる。逆に、シフト段が「６ｔｈ」の場合、切替タイミングが低回転側にシフトする。このように、トランスミッション１６のシフト段によって、ダンパ１８の振動に対応する制振制御とモータシャフト２４の振動に対応する制振制御を切り替えることによって、駆動システム１００の駆動状態に応じた、より効率的な制振制御が可能となる。
【００４８】
図９は、モータ制御装置１０において、ダンパ１８の振動に対応する制振トルクとモータシャフト２４の振動に対応する制振トルクを用いた制御を切り替える場合のシフト段ごとのエンジン回転数と切替ゲインの他の関係を示す例示的かつ模式的な説明図である。図５、図８に示すように、ダンパ１８の振動に対応する制振制御は、エンジン１２の回転数の高域側（例えば、回転数Ａ以上の領域）においても、ドライブシャフト２６の振動（共振）の低減に寄与する。したがって、図９の切替ゲインの切替パターンでは、トランスミッション１６のシフト段に拘わらず（例えば、５ｔｈ，４ｔｈに拘わらず）、ダンパ１８の振動に対応する制振制御をエンジン１２の回転数の全領域について、最大で実施するように切替ゲインＧ２（５）を例えば「１」としている。そして、例えば、シフト段が「５ｔｈ」の場合に予め試験等で定めたエンジン１２の回転数Ａに達した場合、実線で示すモータシャフト２４の制振制御用の切替ゲインＧ１（５）を漸増させる。その結果、回転数Ａ以上の領域においては、モータシャフト２４の振動に対応する制振効果が追加され、ドライブシャフト２６振動（共振）をさらに効果的に低減させることができる。また、この場合、ダンパ１８の振動に対応する制振制御を実施する場合の切替ゲインＧ２（５）は一定とするので、制御が簡略化される。なお、図９の切替パターンにおいても、例えば、シフト段が「５ｔｈ」からシフトダウンして「４ｔｈ」になった場合、図９に示すように、切替タイミングが高回転側にシフトし、太破線で示すモータシャフト２４の制振制御用の切替ゲインＧ１（４）となる。逆に、シフト段が「６ｔｈ」の場合、切替タイミングが低回転側にシフトする。図９に示すような切替ゲインＧ１，Ｇ２を用いる場合も、図８で示す例と同様に、エンジン１２の回転数の全領域において、制振制御の非実行時に比べドライブシャフト２６の振動（共振）の低減が実行できる。
【００４９】
以上のように構成されるモータ制御装置１０が実行する一連の処理の流れの例を図１０に示すフローチャートを用いて説明する。なお、図１０のフローチャートの処理は、所定の処理周期で繰り返し実行されるものとする。
【００５０】
図１０に示されるように、モータ制御装置１０の制振要否判定部４２は、制振トルクによる制振が必要か否かを判断する。前述したように、この判断は、アクセルポジションセンサ３６の検出結果と、ストロークセンサ３８の検出結果と、に基づいて行われる（Ｓ１００）。
【００５１】
Ｓ１００において、制振が必要だと判断された場合（Ｓ１００のＹｅｓ）、ダンパトルク算出部５０は、クランク角センサ３０の検出結果（クランク角θ３）と、シャフト角センサ３４の検出結果（シャフト角θ１）と、ダンパ１８の弾性部材のばね定数Ｋｄとに基づき、ダンパトルクＴｄ（Ｔｄ＝Ｋｄ（θ３−θ１））を算出する（Ｓ１０２）。そして、第２制振トルク算出部５４は、ダンパトルク算出部５０が算出したダンパトルクＴｄと、第２ゲイン算出部５２がエンジン回転数と負荷率および第２ゲインマップ６８を参照して算出した第２ゲインＧｄと、に基づき、ダンパ１８の振動を制振するための第２制振トルクＴｍ２（Ｔｍ２＝−Ｔｄ×Ｇｄ）を算出する（Ｓ１０４）。
【００５２】
また、シャフトトルク算出部４４は、シャフト角センサ３４の検出結果（シャフト角θ１）と、モータ角センサ３２の検出結果（モータ角θ２）とモータシャフト２４のばね定数Ｋｓとの基づき、シャフトトルクＴｓ（Ｔｓ＝Ｋｓ（θ１−θ２））を算出する（Ｓ１０６）。そして、第１制振トルク算出部４８は、シャフトトルク算出部４４が算出したシャフトトルクＴｓと、第１ゲイン算出部４６がエンジン回転数と負荷率および第１ゲインマップ６６を参照して算出した第１ゲインＧｓと、に基づき、モータシャフト２４の振動を制振するための第１制振トルクＴｍ１（Ｔｍ１＝Ｔｓ×Ｇｓ）を算出する（Ｓ１０８）。
【００５３】
また、切替ゲイン算出部５６は、シフトポジションセンサ４０から取得されるシフト段情報Ｓｈおよびエンジン回転数取得部７０から取得されるエンジン１２の回転数Ｎｅに基づいて、切替ゲインＧ１（Ｇ１＝ｆ（Ｎｅ，Ｓｈ））、切替ゲインＧ２（Ｇ２＝ｆ（Ｎｅ，Ｓｈ））を算出する（Ｓ１１０）。前述したように、切替ゲインＧ１，Ｇ２は、ダンパ１８の振動に対応する制振制御とモータシャフト２４の振動に対応する制振制御のいずれを支配的に実行させるかを決定する。
【００５４】
制振トルク算出部５８は、第１制振トルク算出部４８が算出した第１制振トルクＴｍ１と第２制振トルク算出部５４が算出した第２制振トルクＴｍ２と、切替ゲイン算出部５６が算出した切替ゲインＧ１，Ｇ２とに基づき、エンジン１２の回転数に応じたトルク指令値Ｔｍ（Ｔｍ＝Ｔｍ１×Ｇ１＋Ｔｍ２×Ｇ２）を算出する（Ｓ１１２）。
【００５５】
続いて、フィルタ処理部６０は、エンジン回転数取得部７０によって取得可能なエンジン１２の回転数Ｎｅと、エンジン１２の気筒数ｎ、エンジン１２のサイクル数ｃに基づき、エンジン１２の脈動周波数ｆｅ（ｆｅ＝Ｎｅ×ｎ／６０×ｃ）を算出する（Ｓ１１４）。また、フィルタ処理部６０は、現在のエンジン１２の回転数に応じた脈動周波数ｆｅを通過帯域とするバンドパスフィルタＦ（ｓ）を算出する（Ｓ１１６）。そして、フィルタ処理部６０は、算出したバンドパスフィルタＦ（ｓ）を制振トルク算出部５８で算出したトルク指令値Ｔｍに適用するモータトルクフィルタ処理を実行する（Ｓ１１８）。つまり、モータジェネレータ１４の性能や目標制振性能によって決定される上下限処理を実行し、モータジェネレータ１４に適した実トルク指令値Ｔｍ_ｂｐｆ（Ｔｍ_ｂｐｆ＝Ｆ（ｓ）×Ｔｍ）を決定する。
【００５６】
指令トルク決定部６２は、フィルタ処理部６０を通過させた結果として得られた実トルク指令値Ｔｍ_ｂｐｆに基づきモータトルク指令値Ｔｍ_ｒｅｑを決定する（Ｓ１２０）。そして、駆動制御部６４は、モータトルク指令値Ｔｍ_ｒｅｑにしたがう制御信号をモータジェネレータ１４に出力し（Ｓ１２２）、モータジェネレータ１４もよる制振制御を実行し、このフローを一旦終了し、次の制御周期で、Ｓ１００からの処理を繰り返し実行する。その結果、図８に実線で示すように、ドライブシャフト２６のトルク変動Ｔを低減することができる。
【００５７】
なお、Ｓ１００において、制振が不必要だと判断された場合（Ｓ１００のＮｏ）、例えば、ドライバが操作するアクセルペダルが踏み込まれていない場合やクラッチペダルが踏み込まれ、クラッチ２０が遮断状態になっている場合である。この場合、指令トルク決定部６２は、モータトルクをゼロにするモータトルク指令値Ｔｍ_ｒｅｑを決定する（Ｓ１２４）。そして、Ｓ１２２に移行し、駆動制御部６４は、モータトルクをゼロにする、モータトルク指令値Ｔｍ_ｒｅｑにしたがう制御信号をモータジェネレータ１４に出力して、このフローを一旦終了する。
【００５８】
なお、図１に示す駆動システム１００のブロック図、図３に示すモータ制御装置１０が有する機能モジュール群、図１０に示すフローチャートは、一例であり、同様の機能を実現できればよく、適宜変更可能であり、同様の効果を得ることができる。
【００５９】
以上、本開示のいくつかの実施形態を説明したが、上述した実施形態および変形例はあくまで一例であって、発明の範囲を限定することは意図していない。上述した新規な実施形態は、様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。上述した実施形態およびその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲とに含まれる。
【符号の説明】
【００６０】
１０…モータ制御装置、１２…エンジン、１４…モータジェネレータ、１６…トランスミッション、１８…ダンパ、２０…クラッチ、２２…クランクシャフト、２４…モータシャフト、２６…ドライブシャフト、２８…トランスミッションシャフト、３０…クランク角センサ、３２…モータ角センサ、３４…シャフト角センサ、３６…アクセルポジションセンサ、３８…ストロークセンサ、４０…シフトポジションセンサ、４２…制振要否判定部、４４…シャフトトルク算出部、４６…第１ゲイン算出部、４８…第１制振トルク算出部、５０…ダンパトルク算出部、５２…第２ゲイン算出部、５４…第２制振トルク算出部、５６…切替ゲイン算出部、５８…制振トルク算出部、６０…フィルタ処理部、６２…指令トルク決定部、６４…駆動制御部、６６…第１ゲインマップ、６８…第２ゲインマップ、７０…エンジン回転数取得部、１００…駆動システム。
【図１】
2020100355.tif 000003
【図２】
2020100355.tif 000004
【図３】
2020100355.tif 000005
【図４】
2020100355.tif 000006
【図５】
2020100355.tif 000007
【図６】
2020100355.tif 000008
【図７】
2020100355.tif 000009
【図８】
2020100355.tif 000010
【図９】
2020100355.tif 000011
【図１０】
2020100355.tif 000012