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