(57)【要約】【課題】より効果的なタイミングでエンジン振動の伝達を抑制することが可能なエンジンマウント制御装置及び車両を提供する。【解決手段】車両１０のエンジンマウント制御装置３０４は、第１エンジン振動周期Ｃ１におけるクランクパルス間隔Ｔｃｒｋで位相遅れＰ１を割り、位相遅れＰ１に含まれるクランクパルス数Ｎｃｒｋ及び余り時間Ｔｒ１を算出する。また、電流出力処理では、電流出力処理を行うエンジン振動周期Ｃ３において第Ｎｃｒｋ＋１番目のクランクパルスＰｃｒｋの受信開始時点から余り時間Ｔｒ１が経過したとき、目標電流波形に対応する電流をアクチュエータ３０６に対して出力する。【選択図】図４
2014234916.tif 000002
【特許請求の範囲】
【請求項１】
エンジンを車体に支持させるエンジンマウントに組み込まれたアクチュエータを駆動させることで前記車体へのエンジン振動の伝達を抑制する振動抑制制御を行うエンジンマウント制御装置であって、
前記エンジンマウント制御装置は、
前記エンジン振動が発生する周期であるエンジン振動周期を、上死点センサからの上死点信号及びクランクセンサからのクランクパルス信号の少なくとも一方に基づいて判定する振動周期判定処理と、
第１エンジン振動周期において前記クランクパルス信号を取得する信号取得処理と、
前記信号取得処理よりも後の又は前記信号取得処理と同じエンジン振動周期において、前記アクチュエータに対する目標電流波形を設定する目標電流波形設定処理と、
前記信号取得処理よりも後の又は前記信号取得処理と同じエンジン振動周期において、前記第１エンジン振動周期の開始時点から前記エンジン振動が前記アクチュエータに到達するまでの時間に対応する位相遅れを算出する位相遅れ算出処理と、
前記信号取得処理、前記目標電流波形設定処理及び前記位相遅れ算出処理よりも後のエンジン振動周期において、前記目標電流波形に基づく電流を前記アクチュエータに対して出力する電流出力処理と
を実行し、
さらに、前記エンジンマウント制御装置は、
前記位相遅れ算出処理では、前記第１エンジン振動周期におけるクランクパルスの間隔で前記位相遅れを割り、前記位相遅れに含まれるクランクパルスの数及び余り時間を算出し、
前記クランクパルスの数をＮｃｒｋとするとき、前記電流出力処理では、前記電流出力処理を行うエンジン振動周期において第Ｎｃｒｋ＋１番目のクランクパルスの受信開始時点から前記余り時間が経過したとき、前記目標電流波形に対応する電流を前記アクチュエータに対して出力する
ことを特徴とするエンジンマウント制御装置。
【請求項２】
請求項１記載のエンジンマウント制御装置において、
前記エンジンマウント制御装置は、
前記位相遅れ算出処理を行うか否かを判定するエンジン回転数閾値を設定し、
エンジン回転数が前記エンジン回転数閾値を下回ると判定した場合、前記位相遅れ算出処理を実行し、
前記エンジン回転数が前記エンジン回転数閾値を上回ると判定した場合、前記位相遅れ算出処理を中止する
ことを特徴とするエンジンマウント制御装置。
【請求項３】
請求項１又は２記載のエンジンマウント制御装置において、
前記エンジンマウント制御装置は、
運転者の加速意図を示す加速操作の有無を判定し、
前記加速操作があったと判定したとき、前記位相遅れ算出処理を実行し、
前記加速操作がないと判定したとき、前記位相遅れ算出処理を中止する
ことを特徴とするエンジンマウント制御装置。
【請求項４】
請求項１記載のエンジンマウント制御装置において、
前記エンジンマウント制御装置は、
前記エンジンに動力を伝達する電動機の回転位置を示すモータパルス信号を、前記クランクセンサよりも高い角度分解能を有するレゾルバから受信し、
前記位相遅れ算出処理で算出する前記余り時間を、前記レゾルバからの前記モータパルス信号におけるモータパルスの数に対応させてカウントし、
前記モータパルスの数をＮｍｏｔとするとき、前記電流出力処理では、前記電流出力処理を行うエンジン振動周期において第Ｎｃｒｋ＋１番目のクランクパルスの受信開始時点から第Ｎｍｏｔ番目のモータパルスを受信したとき、前記目標電流波形に対応する電流を前記アクチュエータに対して出力する
ことを特徴とするエンジンマウント制御装置。
【請求項５】
請求項１〜４のいずれか１項に記載のエンジンマウント制御装置において、
前記エンジンマウント制御装置は、
前記第１エンジン振動周期におけるｎ個（ｎは２以上の自然数）の前記クランクパルス信号からなるステージの間隔で前記位相遅れを割り、前記位相遅れに含まれるステージの数及び余り時間を算出する第２位相遅れ算出処理と前記位相遅れ算出処理とを切り替えて用い、
さらに、前記エンジンマウント制御装置は、
前記エンジンマウント制御装置の演算負荷を検出し、
前記位相遅れ算出処理又は前記第２位相遅れ算出処理を選択するための演算負荷閾値を設定し、
前記演算負荷が前記演算負荷閾値を下回るとき、前記位相遅れ算出処理を選択し、
前記演算負荷が前記演算負荷閾値を上回るとき、前記第２位相遅れ算出処理を選択し、
前記ステージの数をＮｓｔｇとするとき、前記第２位相遅れ算出処理が選択された場合の前記電流出力処理では、前記電流出力処理を行うエンジン振動周期において第Ｎｓｔｇ×ｎ＋１番目のクランクパルスの受信開始時点から前記余り時間が経過したとき、前記目標電流波形に対応する電流を前記アクチュエータに対して出力する
ことを特徴とするエンジンマウント制御装置。
【請求項６】
請求項５記載のエンジンマウント制御装置において、
前記第２位相遅れ算出処理では、各ステージに含まれる前記クランクパルスの数ｎを可変とし、
前記エンジンマウント制御装置は、
前記第１エンジン振動周期における前記位相遅れが大きいほど、各ステージに含まれる前記クランクパルスの数ｎを減少させ、
前記第１エンジン振動周期における前記位相遅れが小さいほど、各ステージに含まれる前記クランクパルスの数ｎを増加させる
ことを特徴とするエンジンマウント制御装置。
【請求項７】
請求項１〜６のいずれか１項に記載のエンジンマウント制御装置を備える車両。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンジンを車体に支持させるエンジンマウントに組み込まれたアクチュエータを駆動させることで前記車体へのエンジン振動の伝達を抑制する振動抑制制御を行うエンジンマウント制御装置及び車両に関する。
【背景技術】
【０００２】
特許文献１は、アクチュエータへの給電を停止することなく、エンジン振動に対する防振機能を発揮することができる能動型防振支持装置及びその防振制御方法を提供することを目的としている（［０００７］）。
【０００３】
この目的を達成するため、特許文献１の能動型防振支持装置３０１は、クランクパルスセンサＳａ及びＴＤＣセンサＳｂからの出力データを用いてエンジンの振動状態を推定するＡＣＭ＿ＥＣＵ２００が駆動部４１を伸縮駆動して、振動の伝達を抑制する。ＡＣＭ＿ＥＣＵ２００は、クランクパルスセンサＳａ及びＴＤＣセンサＳｂからの出力データを用いて算出されるエンジンの振動の伝達を抑制する目標電流値波形の位相遅れＰ１Fをエンジン信号の第１の周期Ｃ１の平均のＳＴＧ時間Ｔ１／４で割ったときの商であるＳＴＧ個数Ｓ１Fと、その余りの時間Ｐ’１Fを算出する。駆動部の駆動タイミングにおけるエンジン振動の第３の周期Ｃ３におけるＳＴＧ個数Ｓ１F分のＳＴＧ時間の経過を検出した時を位相遅れ基準とし、更に前記した余りの時間Ｐ’１F経過後に目標電流値波形を出力する（要約、図７、図８）。
【０００４】
特許文献１において、クランクパルスセンサＳａの角度分解能は６°であり、ＴＤＣセンサＳｂの角度分解能はクランクシャフトの１／３回転（＝１２０°）とされている（［００６６］）。また、特許文献１における各周期Ｃ１〜Ｃ３はクランクシャフトの１／３回転（＝１２０°）に対応する（［００６７］、図４、図７）。
【０００５】
さらに、各周期Ｃ１〜Ｃ３におけるＳＴＧ個数Ｓ１F（ステージＳＴＧの個数）に関し、特許文献１では、１つの演算処理サイクルＣＵＣＹＬを４個に分割することに限定されることなく、４個よりも大きい整数ｎ個のステージに分割するように、ステージＳＴＧに対応するクランク角を、６°の倍数で１２０°を割り切れるような、例えば、２４°（５個に分割）、１２°（１０個に分割）としてもよいとされている（［００６９］）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２０１１／００４７９２号パンフレット
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記のように、特許文献１では、目標電流値波形の位相遅れＰ１FをＳＴＧ個数Ｓ１F及び余りの時間Ｐ’１Fにより算出する。すなわち、第１の周期Ｃ１についてＳＴＧ個数Ｓ１F及び余りの時間Ｐ’１Fを算出し、これらを第３の周期Ｃ３の位相遅れδ１として用いる。換言すると、第３の周期Ｃ３全体においてエンジン回転数の変動がないと仮定した場合、位相遅れδ１は、実質的に下記の式（１）により算出することが可能である。
δ１＝Ｓ１F×（（Ｃ３）／４）＋Ｐ’１F      ・・・（１）
【０００８】
上記式（１）のうち、右辺第１項「Ｓ１F×（（Ｃ３）／４）」が、周期Ｃ１、Ｃ３の長さの変化を反映可能な値（可変値）であり、右辺第２項「Ｐ’１F」は、周期Ｃ１、Ｃ３の長さの変化を反映しない値（固定値）である。
【０００９】
このため、特許文献１では、右辺第２項「Ｐ’１F」は周期Ｃ１、Ｃ３の長さが相対的に変化するほど、誤差を含む可能性がある。例えば、各周期Ｃ１〜Ｃ３がクランクシャフトの１／３回転（＝１２０°）し、各ステージＳＴＧが３０°（＝１２０°／４）に対応する場合、理論上、「Ｐ’１F」は、周期Ｃ３（ステージＳＴＧ）との関係で０°より大きく３０°より小さい回転角度に対応する値を取り得ることとなる。
【００１０】
そうすると、各周期Ｃ１〜Ｃ３の長さが相対的に大きく変動した場合、特許文献１の方法では目標電流値波形の位相遅れδ１が含む誤差が増大し、適切なタイミングでエンジン振動の伝達を抑制できなくなるおそれがある。
【００１１】
本発明は上記のような課題を考慮してなされたものであり、より効果的なタイミングでエンジン振動の伝達を抑制することが可能なエンジンマウント制御装置及び車両を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係るエンジンマウント制御装置は、エンジンを車体に支持させるエンジンマウントに組み込まれたアクチュエータを駆動させることで前記車体へのエンジン振動の伝達を抑制する振動抑制制御を行うものであって、前記エンジンマウント制御装置は、前記エンジン振動が発生する周期であるエンジン振動周期を、上死点センサからの上死点信号及びクランクセンサからのクランクパルス信号の少なくとも一方に基づいて判定する振動周期判定処理と、第１エンジン振動周期において前記クランクパルス信号を取得する信号取得処理と、前記信号取得処理よりも後の又は前記信号取得処理と同じエンジン振動周期において、前記アクチュエータに対する目標電流波形を設定する目標電流波形設定処理と、前記信号取得処理よりも後の又は前記信号取得処理と同じエンジン振動周期において、前記第１エンジン振動周期の開始時点から前記エンジン振動が前記アクチュエータに到達するまでの時間に対応する位相遅れを算出する位相遅れ算出処理と、前記信号取得処理、前記目標電流波形設定処理及び前記位相遅れ算出処理よりも後のエンジン振動周期において、前記目標電流波形に基づく電流を前記アクチュエータに対して出力する電流出力処理とを実行し、さらに、前記エンジンマウント制御装置は、前記位相遅れ算出処理では、前記第１エンジン振動周期におけるクランクパルスの間隔で前記位相遅れを割り、前記位相遅れに含まれるクランクパルスの数及び余り時間を算出し、前記クランクパルスの数をＮｃｒｋとするとき、前記電流出力処理では、前記電流出力処理を行うエンジン振動周期において第Ｎｃｒｋ＋１番目のクランクパルスの受信開始時点から前記余り時間が経過したとき、前記目標電流波形に対応する電流を前記アクチュエータに対して出力することを特徴とする。
【００１３】
本発明によれば、第１エンジン振動周期における位相遅れを、電流出力処理を行うエンジン振動周期に反映する際、クランクパルスの数と余り時間を用いる。クランクパルスの間隔（時間）は、特許文献１におけるステージの間隔よりも短い。これに伴い、特許文献１の場合よりも、余り時間（固定値）が取り得る範囲を狭くすることが可能となる。このため、従来のようにステージ単位で位相遅れを反映する場合と比較して、第１エンジン振動周期における位相遅れを、電流出力処理を行うエンジン振動周期に反映し易くなる。従って、アクチュエータの作動開始タイミングの精度を向上させることができる。
【００１４】
前記エンジンマウント制御装置は、前記位相遅れ算出処理を行うか否かを判定するエンジン回転数閾値を設定し、エンジン回転数が前記エンジン回転数閾値を下回ると判定した場合、前記位相遅れ算出処理を実行し、前記エンジン回転数が前記エンジン回転数閾値を上回ると判定した場合、前記位相遅れ算出処理を中止してもよい。
【００１５】
位相遅れ算出処理及び電流出力処理においてクランクパルスの数に関連した演算を行うと、特許文献１の場合と比較して演算負荷が増大する。また、エンジン回転数が速いほど、クランクパルス間隔が短くなるため、演算負荷が増大する。上記構成によれば、エンジン回転数がエンジン回転数閾値を下回る場合にのみ、位相遅れをクランクパルス間隔に基づいて補正することで演算負荷の増大を抑制することができ、安定した制御の実施を行うことが可能となる。
【００１６】
前記エンジンマウント制御装置は、運転者の加速意図を示す加速操作の有無を判定し、前記加速操作があったと判定したとき、前記位相遅れ算出処理を実行し、前記加速操作がないと判定したとき、前記位相遅れ算出処理を中止してもよい。これにより、エンジン回転数の変化が大きい加速時において位相遅れ算出処理を実行することができる。このため、位相遅れ算出処理を効果的に利用することが可能となる。
【００１７】
前記エンジンマウント制御装置は、前記エンジンに動力を伝達する電動機の回転位置を示すモータパルス信号を、前記クランクセンサよりも高い角度分解能を有するレゾルバから受信し、前記位相遅れ算出処理で算出する前記余り時間を、前記レゾルバからの前記モータパルス信号におけるモータパルスの数に対応させてカウントし、前記モータパルスの数をＮｍｏｔとするとき、前記電流出力処理では、前記電流出力処理を行うエンジン振動周期において第Ｎｃｒｋ＋１番目のクランクパルスの受信開始時点から第Ｎｍｏｔ番目のモータパルスを受信したとき、前記目標電流波形に対応する電流を前記アクチュエータに対して出力してもよい。これにより、クランクセンサより角度分解能の高いレゾルバのモータパルスによって余り時間の経過を判定することができるため、より精度よくアクチュエータの作動タイミングを設定することが可能となる。
【００１８】
前記エンジンマウント制御装置は、前記第１エンジン振動周期におけるｎ個（ｎは２以上の自然数）の前記クランクパルス信号からなるステージの間隔で前記位相遅れを割り、前記位相遅れに含まれるステージの数及び余り時間を算出する第２位相遅れ算出処理と前記位相遅れ算出処理とを切り替えて用い、さらに、前記エンジンマウント制御装置は、前記エンジンマウント制御装置の演算負荷を検出し、前記位相遅れ算出処理又は前記第２位相遅れ算出処理を選択するための演算負荷閾値を設定し、前記演算負荷が前記演算負荷閾値を下回るとき、前記位相遅れ算出処理を選択し、前記演算負荷が前記演算負荷閾値を上回るとき、前記第２位相遅れ算出処理を選択し、前記ステージの数をＮｓｔｇとするとき、前記第２位相遅れ算出処理が選択された場合の前記電流出力処理では、前記電流出力処理を行うエンジン振動周期において第Ｎｓｔｇ×ｎ＋１番目のクランクパルスの受信開始時点から前記余り時間が経過したとき、前記目標電流波形に対応する電流を前記アクチュエータに対して出力してもよい。
【００１９】
これにより、エンジンマウント制御装置の演算負荷が高い場合、第２位相遅れ算出処理を選択して、ステージの数Ｎｓｔｇを基準として位相遅れを取り扱う。これにより、電流を出力する際の位相遅れの設定精度（及びアクチュエータの出力タイミングの設定精度）と、エンジンマウント制御装置の演算負荷とでバランスの取れた制御を実現することが可能となる。
【００２０】
前記第２位相遅れ算出処理では、各ステージに含まれる前記クランクパルスの数ｎを可変とし、前記エンジンマウント制御装置は、前記第１エンジン振動周期における前記位相遅れが大きいほど、各ステージに含まれる前記クランクパルスの数ｎを減少させ、前記第１エンジン振動周期における前記位相遅れが小さいほど、各ステージに含まれる前記クランクパルスの数ｎを増加させてもよい。
【００２１】
位相遅れが大きい場合（エンジン回転数が低い場合）、エンジン回転数の変化が位相遅れの変化に与える影響（すなわち、振動抑制制御の精度への影響）が大きい。上記構成によれば、位相遅れが大きいほど、各ステージに含まれるクランクパルスの数ｎを減少させて角度分解能を高める。このため、位相遅れの変化が大きい場合でも、当該変化をアクチュエータの出力タイミングに高精度に反映させることが可能となる。
【００２２】
一方、位相遅れが小さい場合（エンジン回転数が高い場合）、エンジン回転数の変化が位相遅れの変化に与える影響（すなわち、振動抑制制御の精度への影響）が小さい。上記構成によれば、位相遅れが小さいほど、各ステージに含まれるクランクパルスの数ｎを増加させて角度分解能を低下させる。このため、エンジンマウント制御装置の演算負荷を低減させることが可能となる。
【００２３】
以上より、アクチュエータの出力タイミングとエンジンマウント制御装置の演算負荷の両方についてバランスが取れた制御が可能となる。
【００２４】
本発明に係る車両は、前記エンジンマウント制御装置を備えることを特徴とする。
【発明の効果】
【００２５】
本発明によれば、第１エンジン振動周期における位相遅れを、電流出力処理を行うエンジン振動周期に反映する際、クランクパルスの数と余り時間を用いる。クランクパルスの間隔（時間）は、特許文献１におけるステージの間隔よりも短い。これに伴い、特許文献１の場合よりも、余り時間（固定値）が取り得る範囲を狭くすることが可能となる。このため、従来のようにステージ単位で位相遅れを反映する場合と比較して、第１エンジン振動周期における位相遅れを、電流出力処理を行うエンジン振動周期に反映し易くなる。従って、アクチュエータの作動開始タイミングの精度を向上させることができる。
【図面の簡単な説明】
【００２６】
【図１】本発明の一実施形態に係る車両の概略構成図である。
【図２】通常制御の各エンジン振動周期におけるＡＣＭへの電流出力開始タイミングを設定するための制御を説明するためのタイムチャートである。
【図３】位相遅れ補償第２制御を説明するためのタイムチャートである。
【図４】位相遅れ補償第１制御を説明するためのタイムチャートである。
【図５】通常制御において位相遅れ補償第１制御及び位相遅れ補償第２制御を選択するフローチャートである。
【図６】位相遅れ補償第１制御のフローチャート（図５のＳ３の詳細）である。
【図７】位相遅れ補償第２制御のフローチャート（図５のＳ４の詳細）である。
【図８】位相遅れ補償第１制御及び位相遅れ補償第２制御それぞれにおけるエンジン回転数と余り時間の最大値との関係の一例を示す図である。
【発明を実施するための形態】
【００２７】
Ａ．一実施形態
１．構成
［１−１．概要］
図１は、本発明の一実施形態に係る車両１０の概略構成図である。図１に示すように、車両１０は、駆動源としてエンジン１２及び走行モータ１４を有するいわゆるハイブリッド車両である。後述するように、車両１０は、走行モータ１４を有さないいわゆるエンジン車両であってもよい。
【００２８】
エンジン１２は、その回転軸が車幅方向とされた状態において、エンジンマウント３０２ｆ、３０２ｒを介して車体１６に支持されている。後に詳述するように、エンジンマウント３０２ｆ、３０２ｒは、アクチュエータ３０６を駆動することによりエンジン１２からの振動（以下「エンジン振動」ともいう。）を能動的に抑制する能動型防振支持装置３００の一部を構成する。
【００２９】
本実施形態の走行モータ１４は、バッテリ１８からの電力に基づいて車両１０の走行駆動力を生成する（すなわち、図示しない車輪に駆動力を伝達する）ことに加え、エンジン１２のモータリング（クランキング）に用いられるモータ（電動機）である。
【００３０】
車両１０は、能動型防振支持装置３００に加え、シフトスイッチ２０（以下「シフトＳＷ２０」という。）と、エンジン１２の制御に関連するエンジン制御系１００と、走行モータ１４の制御に関連するモータ制御系２００とを有する。さらに、車両１０は、アクセルペダル２４の操作量（以下「アクセルペダル操作量θａｐ」という。）を検出するアクセルペダルセンサ２２と、ブレーキペダル２８の操作量（以下「ブレーキペダル操作量θｂｐ」という。）を検出するブレーキペダルセンサ２６とを有する。なお、車両１０の基本的な構成要素については、例えば、特許文献１又は特開２０１１−２５２５５３号公報と同様のものを用いることができる。
【００３１】
本実施形態のシフトＳＷ２０は、シフトレバー３０の位置（以下「シフト位置Ｐｓ」という。）を検出してエンジン制御系１００及び能動型防振支持装置３００に出力する。ここにいうシフト位置Ｐｓは、例えば、１速〜５速、後退、パーキング等を含む。
【００３２】
［１−２．エンジン制御系１００］
エンジン制御系１００は、エンジン１２に関連する構成要素として、クランクセンサ１０２と、上死点センサ１０４（以下「ＴＤＣセンサ１０４」ともいう。）と、スタータモータ１０６と、燃料噴射電子制御装置１０８（以下「ＦＩ  ＥＣＵ１０８」という。）とを有する。
【００３３】
クランクセンサ１０２は、図示しないクランクシャフトの回転位置（以下「クランク回転位置θｃｒｋ」という。）を検出し、クランク回転位置θｃｒｋを示す信号（クランクパルス信号Ｓｃｒｋ）をＦＩ  ＥＣＵ１０８及び能動型防振支持装置３００のＡＣＭ電子制御装置３０４（以下「ＡＣＭ  ＥＣＵ３０４」という。）に出力する。ＴＤＣセンサ１０４は、図示しないエンジンピストンが上死点に来たこと（上死点タイミング）を検出し、上死点タイミングを示す信号（以下「ＴＤＣパルス信号Ｓｔｄｃ」という。）をＦＩ  ＥＣＵ１０８及びＡＣＭ  ＥＣＵ３０４に出力する。なお、各センサ１０２、１０４の出力は、ＦＩ  ＥＣＵ１０８及びＡＣＭ  ＥＣＵ３０４以外のＥＣＵ（例えば、後述するモータ電子制御装置２０６）に直接出力してもよい。
【００３４】
スタータモータ１０６は、エンジン１２のモータリングに用いられるモータ（電動機）であり、図示しない低電圧バッテリからの電力に基づいてエンジン１２に対してのみ駆動力を伝達する。本実施形態のスタータモータ１０６は、直流式であるが、交流式であってもよい。エンジン１２のモータリング時には、走行モータ１４及びスタータモータ１０６のいずれか一方が選択されて用いられる。
【００３５】
ＦＩ  ＥＣＵ１０８は、クランクパルス信号Ｓｃｒｋ、ＴＤＣパルス信号Ｓｔｄｃ等の各種入力信号に基づいてエンジン１２を制御する。例えば、ＦＩ  ＥＣＵ１０８は、クランクパルス信号Ｓｃｒｋに基づいてエンジン１２の回転数（以下「エンジン回転数Ｎｅ」という。）［ｒｐｍ］を算出して用いる。後述するＡＣＭ電子制御装置３０４と同様、ＦＩ  ＥＣＵ１０８は、図示しない入出力部、演算部及び記憶部を有する。
【００３６】
［１−３．モータ制御系２００］
図１に示すように、モータ制御系２００は、走行モータ１４に関連する構成要素として、レゾルバ２０２と、ＳＯＣセンサ２０４と、モータ電子制御装置２０６（以下「モータＥＣＵ２０６」又は「ＭＯＴ  ＥＣＵ２０６」という。）とを有する。
【００３７】
レゾルバ２０２（回転位置センサ）は、走行モータ１４の図示しないロータの回転位置（以下「走行モータ回転位置θｍｏｔ＿ｄ」、「モータ回転位置θｍｏｔ＿ｄ」又は「回転位置θｍｏｔ＿ｄ」という。）を検出し、回転位置θｍｏｔ＿ｄを示す信号（以下「走行モータ回転位置信号Ｓθｍｏｔ＿ｄ」という。）をＭＯＴ  ＥＣＵ２０６に出力する。本実施形態におけるレゾルバ２０２の角度分解能は、クランクセンサ１０２の角度分解能よりも高い。すなわち、クランクセンサ１０２がＤ１°毎に回転位置を検出し、レゾルバ２０２がＤ２°毎に回転位置を検出できる場合、Ｄ１＞Ｄ２となる。
【００３８】
ＳＯＣセンサ２０４は、バッテリ１８の残容量（ＳＯＣ）を検出してＭＯＴ  ＥＣＵ２０６に出力する。
【００３９】
モータＥＣＵ２０６は、回転位置θｍｏｔ＿ｄ、ＳＯＣ等の各種入力情報に基づいて走行モータ１４を制御する。後述するＡＣＭ電子制御装置３０４と同様、モータＥＣＵ２０６は、図示しない入出力部、演算部及び記憶部を有する。
【００４０】
なお、本実施形態では、例えば、車両１０の車速Ｖ、要求加速度、走行モータ１４用のバッテリ１８のＳＯＣ等の指標に応じてエンジン１２及び走行モータ１４の駆動の要否を判定する。例えば、車速Ｖが低速域（例えば、０〜２０ｋｍ／ｈ）であるとき、走行モータ１４のみを用いることを通常とする。また、車速Ｖが中速域（例えば、２１〜８０ｋｍ／ｈ）又は高速域（例えば、８１ｋｍ／ｈ以上）であるとき、エンジン１２を用いることを通常とし、要求加速度が高い場合、エンジン１２に加えて走行モータ１４を駆動させる。但し、例えば、バッテリ１８のＳＯＣが低い場合は、図示しないオルタネータを作動させるため、車速Ｖが低速域であっても、エンジン１２を作動させてもよい。
【００４１】
［１−４．能動型防振支持装置３００］
前述のように、能動型防振支持装置３００は、エンジンマウント３０２ｆ、３０２ｒ及びＡＣＭ  ＥＣＵ３０４を有する。
【００４２】
エンジンマウント３０２ｆ、３０２ｒは、例えば、特開２０１１−２５２５５３号公報の図１と同様、車両１０の前後方向に互いに離間して配置される。各エンジンマウント３０２ｆ、３０２ｒは、例えば、特許文献１の図１又は特開２０１１−２５２５５３号公報の図１と同様、その内部にアクチュエータ３０６を有する。アクチュエータ３０６は、例えば、ソレノイドにより構成することができる。或いは、アクチュエータ３０６は、エンジン１２の負圧を図示しない弁により調節する構成とすることも可能である。エンジンマウント３０２ｆ、３０２ｒの具体的な構成については、例えば、特許文献１又は特開２０１１−２５２５５３号公報と同様のものを用いることができる。
【００４３】
以下では、エンジンマウント３０２ｆ、３０２ｒを、能動的にエンジン振動を抑制するアクティブ・コントロール・マウントの意味でＡＣＭ３０２ｆ、３０２ｒともいう。ＡＣＭ  ＥＣＵ３０４における「ＡＣＭ」もアクティブ・コントロール・マウントの意味である。
【００４４】
ＡＣＭ  ＥＣＵ３０４は、エンジンマウント３０２ｆ、３０２ｒのアクチュエータ３０６を制御するものであり、入出力部３１０、演算部３１２及び記憶部３１４を有する。ＡＣＭ  ＥＣＵ３０４がアクチュエータ３０６を駆動させることにより、車体１６へのエンジン振動の伝達を抑制するための振動抑制制御を行う。
【００４５】
２．エンジン振動抑制のための各種制御
以下では、振動抑制制御に関連してＡＣＭ  ＥＣＵ３０４が行う制御について説明する。本実施形態のＡＣＭ  ＥＣＵ３０４は、振動抑制制御に関連して始動時制御と通常制御の両方を行う。始動時制御は、エンジン１２の始動時又は再始動時に発生するいわゆるロール固有振動（ロール共振）を抑制するための制御である。通常制御は、エンジン１２が爆発工程を伴って作動中である際のエンジン振動を抑制するための制御である。以下では、通常制御におけるＡＣＭ３０２ｆ、３０２ｒへの電流出力開始タイミング（ＡＣＭ３０２ｆ、３０２ｒの作動開始タイミング）の設定方法を中心に説明する。
【００４６】
［２−１．ＡＣＭ  ＥＣＵ３０４の演算で用いる各種の信号及び単位］
図２は、通常制御の各エンジン振動周期ＣにおけるＡＣＭ３０２ｆ、３０２ｒへの電流出力開始タイミングを設定するための制御を説明するためのタイムチャートである。図２では、エンジン振動周期Ｃ、ＴＤＣパルス信号Ｓｔｄｃ、ステージＳＴＧ、クランクパルス信号Ｓｃｒｋ、ＡＣＭ  ＥＣＵ３０４の処理及び目標ＡＣＭ電流Ｉａｃｍｆｔ、Ｉａｃｍｒｔが示されている。
【００４７】
（２−１−１．ＴＤＣパルスＰｔｄｃ）
ＴＤＣパルスＰｔｄｃは、上死点センサ１０４が検出した上死点タイミングをパルス（以下「ＴＤＣパルスＰｔｄｃ」という。）として示す信号である。各気筒が作動している場合、ＴＤＣパルスＰｔｄｃの間隔（以下「ＴＤＣパルス間隔Ｔｔｄｃ」という。）［ｓｅｃ］は、エンジン１２の各気筒が上死点に位置する間隔、すなわち、爆発工程の間隔を示す。
【００４８】
エンジン１２が４サイクルエンジンである場合、４サイクルを行うためには、エンジン１２（クランクシャフト）を２回転させる。ここで、エンジン１２が６気筒である場合、ＴＤＣパルスＰｔｄｃは、１２０°毎に出力されることとなる。或いは、エンジン１２が４気筒である場合、ＴＤＣパルスＰｔｄｃは、１８０°毎に出力されることとなる。
【００４９】
（２−１−２．エンジン振動周期Ｃ（＝演算周期Ｃｃ））
エンジン振動は、爆発工程毎に発生する。このため、爆発工程の間隔は、エンジン振動の周期（以下「エンジン振動周期Ｃ」又は「振動周期Ｃ」という。）を意味する。図２では、個別のエンジン振動周期Ｃを「Ｃ１〜Ｃ５」と番号付けしている。また、本実施形態では、ＡＣＭ  ＥＣＵ３０４における演算周期（以下「演算周期Ｃｃ」という。）を、エンジン振動周期Ｃに一致させて行う。ＡＣＭ  ＥＣＵ３０４は、ＴＤＣパルス間隔Ｔｔｄｃを検出することにより、演算周期Ｃｃ（＝エンジン振動周期Ｃ）を判定することができる。或いは、ＡＣＭ  ＥＣＵ３０４は、後述するクランクパルスＰｃｒｋの間隔を検出することにより、演算周期Ｃｃ（＝エンジン振動周期Ｃ）を判定してもよい。
【００５０】
（２−１−３．ステージＳＴＧ）
本実施形態では、ＡＣＭ  ＥＣＵ３０４の演算負荷（以下「演算負荷Ｌａｃｍ」という。）を考慮して、演算周期Ｃｃを複数（ここでは４つ）に分割したステージＳＴＧという単位を用いる。
【００５１】
エンジン１２が４サイクル且つ６気筒である場合、演算周期Ｃｃは、エンジン１２又はクランクシャフトの回転角度１２０°毎である。このため、ステージＳＴＧに対応する回転角度は、３０°（＝１２０°／４）となる。ステージＳＴＧは、後述する位相遅れ補償第２制御で利用する単位であるが、詳細については、図３及び図７を参照して後述する。
【００５２】
図２において、ステージＳＴＧに対応して示されている０〜３の数値は、各演算周期Ｃｃにおける各ステージＳＴＧに割り当てた数値である。このため、各演算周期ＣｃにおいてステージＳＴＧの番号として０〜３が繰り返される。
【００５３】
（２−１−４．クランクパルスＰｃｒｋ）
さらに、本実施形態では、クランクパルス信号Ｓｃｒｋに含まれるクランクパルスＰｃｒｋの間隔（以下「クランクパルス間隔Ｔｃｒｋ」という。）［ｓｅｃ］をＡＣＭ  ＥＣＵ３０４で用いる演算単位として用いる。本実施形態におけるクランクセンサ１０２の角度分解能は、例えば６°である。この場合、各演算周期Ｃｃ（＝１２０°）に含まれるクランクパルスＰｃｒｋの数は２０となる。また、各ステージＳＴＧ（＝３０°）に含まれるクランクパルスＰｃｒｋの数は５となる。各クランクパルスＰｃｒｋは、後述する位相遅れ補償第１制御で利用する単位であるが、詳細については、図４及び図６を参照して後述する。
【００５４】
（２−１−５．目標ＡＣＭ電流Ｉａｃｍｆｔ、Ｉａｃｍｒｔ）
目標ＡＣＭ電流Ｉａｃｍｆｔ、Ｉａｃｍｒｔは、ＡＣＭ３０２ｆ、３０２ｒに対して出力する電流の目標値である。目標ＡＣＭ電流Ｉａｃｍｆｔ、Ｉａｃｍｒｔの設定は、後述する演算処理において行う。
【００５５】
［２−２．ＡＣＭ  ＥＣＵ３０４の処理の概要］
図２に示すように、本実施形態のＡＣＭ  ＥＣＵ３０４は、クランクパルス間隔読取り処理、演算処理及び電流出力処理の３つの処理（工程）をそれぞれ１つ又は複数の演算周期Ｃｃ（＝エンジン振動周期Ｃ）に対応させて実行する。
【００５６】
すなわち、ＡＣＭ  ＥＣＵ３０４は、例えば、第１振動周期Ｃ１においてクランクパルス間隔読取り処理を行い、第２振動周期Ｃ２において演算処理を行い、第３及び第４振動周期Ｃ３、Ｃ４において電流出力処理を行う。同様に、ＡＣＭ  ＥＣＵ３０４は、第２振動周期Ｃ２においてクランクパルス間隔読取り処理を行い、第３振動周期Ｃ３において演算処理を行い、第４及び第５振動周期Ｃ４、Ｃ５において電流出力処理を行う。但し、電流出力処理については、対応する演算周期Ｃｃの数が必ずしも２つとなる訳ではなく、エンジン回転数Ｎｅに応じて可変となる。従って、ＡＣＭ  ＥＣＵ３０４では、例えば、連続する３つ以上の振動周期Ｃで電流出力処理を連続して行うため、３つ以上の系統において、クランクパルス間隔読取り処理、演算処理及び電流出力処理を並行して行う。
【００５７】
（２−２−１．クランクパルス間隔読取り処理）
クランクパルス間隔読取り処理では、クランクセンサ１０２からのクランクパルス信号Ｓｃｒｋを受信して、クランクパルス信号Ｓｃｒｋの立ち上がりから立ち下がりまでの間隔又は立ち下がりから立ち上がりまでの間隔（以下「クランクパルス間隔Ｔｃｒｋ」という。）を読み取る。なお、クランクパルス間隔読取り処理としては、例えば、特許文献１の段落［００７３］、［０１０４］等と同様の方法を用いてもよい。
【００５８】
（２−２−２．演算処理）
演算処理では、ＡＣＭ３０２ｆ、３０２ｒを制御するための各種設定を演算する。例えば、演算処理では、ＡＣＭ３０２ｆ、３０２ｒに対して電流を出力するための設定（例えば、目標電流波形の周波数、振幅及び出力開始タイミング）を算出する。
【００５９】
ここにいう出力開始タイミング（電流出力開始タイミング）は、ＡＣＭ３０２ｆ、３０２ｒの作動開始タイミングと同義である。本実施形態のＡＣＭ  ＥＣＵ３０４は、通常制御におけるＡＣＭ３０２ｆ、３０２ｒの作動開始タイミングを設定するための制御として、位相遅れ補償第１制御と位相遅れ補償第２制御とを切り替えて実行する。以下では、位相遅れ補償第１制御を「第１制御」と、位相遅れ補償第２制御を「第２制御」とも称する。第１制御及び第２制御の詳細は、図３〜図７を参照して後述する。
【００６０】
なお、目標電流波形の周波数及び振幅並びに出力タイミングのうち位相遅れ補償第２制御については、特許文献１の段落［０１０４］〜［０１０８］と同様の方法を用いてもよい。
【００６１】
（２−２−３．電流出力処理）
電流出力処理は、演算処理で算出した設定に基づいてＡＣＭ３０２ｆ、３０２ｒに対して電流を出力してＡＣＭ３０２ｆ、３０２ｒを作動させる。
【００６２】
［２−３．位相遅れ補償第１制御及び位相遅れ補償第２制御］
（２−３−１．概要）
上記のように、本実施形態のＡＣＭ  ＥＣＵ３０４は、通常制御におけるＡＣＭ３０２ｆ、３０２ｒの作動開始タイミング（電流出力開始タイミング）を設定するための制御として、位相遅れ補償第１制御と位相遅れ補償第２制御とを切り替えて実行する。
【００６３】
図２を参照して言及したように、本実施形態では、第１制御及び第２制御のいずれにおいても、３つ以上の振動周期Ｃ（＝演算周期Ｃｃ）を用いて１つの波形の電流をＡＣＭ３０２ｆ、３０２ｒに対して出力する。すなわち、３つ以上の振動周期Ｃでは、クランクパルス間隔読取り処理、演算処理及び電流出力処理を行う。
【００６４】
電流出力処理において、ＡＣＭ３０２ｆ、３０２ｒに対して電流を出力するタイミング（ＡＣＭ３０２ｆ、３０２ｒの作動開始タイミング）は、エンジン振動に同期させることを要する。上記のように、エンジン振動周期Ｃは、上死点センサ１０４から上死点信号Ｓｔｄｃ又はクランクセンサ１０２からのクランクパルス信号Ｓｃｒｋに基づいて判定可能である。
【００６５】
エンジン振動は、エンジン１２における爆発工程が行われた瞬間、すなわち、図示しないピストンが上死点に到達した時に発生すると考えられる。このため、ＴＤＣパルス信号Ｓｔｄｃが出力された時点がエンジン振動の発生時点と推定できる。
【００６６】
しかしながら、エンジン振動がアクチュエータ３０６に到達するまでには時間差（以下「位相遅れＰ」という。）がある。このため、位相遅れＰを考慮して、ＡＣＭ３０２ｆ、３０２ｒの作動開始タイミングを設定する必要がある。
【００６７】
後述するように、位相遅れＰは、一定期間（例えば、エンジン振動周期Ｃ）における複数のクランクパルス間隔Ｔｃｒｋに基づいて算出することが可能である。そして、クランクパルス間隔Ｔｃｒｋの読取りは、３つの工程のうち１つ目の工程（クランクパルス間隔読取り処理）として行う（図２参照）。
【００６８】
一方、ＡＣＭ３０２ｆ、３０２ｒに対して実際に電流を出力するのは、３つの工程のうち最後の工程（電流出力処理）である。このため、エンジン振動周期Ｃの長さＴ（又はエンジン回転数Ｎｅ）が変動することにより、１つ目の工程における位相遅れＰは、最後の工程における位相遅れＰ’との間でずれが生じる。
【００６９】
そこで、本実施形態の第１制御及び第２制御では、位相遅れＰ、Ｐ’間のずれを小さくするための処理を行う。
【００７０】
理解を容易化するため、以下では、位相遅れ補償第２制御の概要を先に説明した後、位相遅れ補償第１制御の概要を説明する。また、個別のエンジン振動周期Ｃ１〜Ｃ３に対応する位相遅れＰ、Ｐ’をＰ１〜Ｐ３、Ｐ１’〜Ｐ３’と番号付けて説明する。
【００７１】
（２−３−２．位相遅れ補償第２制御）
図３は、位相遅れ補償第２制御を説明するためのタイムチャートである。図３では、車両１０が加速していく場面において、エンジン振動周期Ｃ（Ｃ１〜Ｃ５）と、ステージＳＴＧと、位相遅れＰ（Ｐ１〜Ｐ３）、Ｐ’（Ｐ１’〜Ｐ３’）と、前側のＡＣＭ３０２ｆに対する目標ＡＣＭ電流Ｉａｃｍｆｔの波形（目標電流波形Ｐｉ）とが示されている。
【００７２】
ステージＳＴＧに関する数値０〜３は、各ステージＳＴＧに割り振られた番号である。すなわち、本実施形態では、１振動周期Ｃを４つのステージＳＴＧに分割するため、４つの数値０〜３が繰り返して用いられている。
【００７３】
上記のように、第３振動周期Ｃ３で出力される電流（目標電流波形Ｐｉ）は、第１振動周期Ｃ１で読み取られたクランクパルス間隔Ｔｃｒｋに基づいて出力タイミングが設定される。このため、第１振動周期Ｃ１で読み取られたクランクパルス間隔Ｔｃｒｋに基づく位相遅れＰ１は、第３振動周期Ｃ３において位相遅れＰ１’として用いられる。
【００７４】
同様に、第２振動周期Ｃ２で読み取られたクランクパルス間隔Ｔｃｒｋに基づく位相遅れＰ２は、第４振動周期Ｃ４において位相遅れＰ２’として用いられる。第３振動周期Ｃ３で読み取られたクランクパルス間隔Ｔｃｒｋに基づく位相遅れＰ３は、第５振動周期Ｃ５において位相遅れＰ３’として用いられる。
【００７５】
位相遅れ補償第２制御では、次のように位相遅れＰ’（Ｐ１’〜Ｐ３’）を設定する。すなわち、まず位相遅れＰ１全体を特定する。そして、位相遅れＰ１をステージＳＴＧと同じ長さの部分Ｓ１（第１振動周期Ｃ１のステージＳＴＧ「０」に相当する部分）と、余り部分（以下「余り時間Ｔｒ２」という。）とに分ける（Ｐ１＝Ｓ１＋Ｔｒ２）。
【００７６】
なお、部分Ｓ１は、ステージ数Ｎｓｔｇとステージ間隔Ｔｓｔｇの積として定義することができる（Ｓ１＝Ｎｓｔｇ×Ｔｓｔｇ）。このため、位相遅れＰ１は、ステージ数Ｎｓｔｇとステージ間隔Ｔｓｔｇの積と、余り時間Ｔｒ２との和として定義することも可能である（Ｐ１＝Ｎｓｔｇ×Ｔｓｔｇ＋Ｔｒ２）。
【００７７】
次いで、第３振動周期Ｃ３において実際に電流を出力する場合（電流出力処理）、ステージＳＴＧに対応する部分Ｓ１’については、第３振動周期Ｃ３のステージＳＴＧの間隔（ステージ間隔Ｔｓｔｇ）として算出する。すなわち、第３振動周期Ｃ３のステージＳＴＧ「０」に相当する部分Ｓ１’として算出する。次いで、部分Ｓ１’に余り時間Ｔｒ２をつなぎ合わせて位相遅れＰ１’とする（Ｐ１’＝Ｓ１’＋Ｔｒ２）。
【００７８】
以上より、位相遅れ補償第２制御では、ステージＳＴＧと同じ間隔の部分Ｓ１’については、エンジン振動周期Ｃ１、Ｃ３の長さの相違に合わせて変化する。従って、車両１０が加速して振動周期Ｃが短くなる又はエンジン回転数Ｎｅが多くなったとしても、部分Ｓ１’において当該相違を補償することが可能となる。
【００７９】
なお、図３では、位相遅れＰ１の長さがステージＳＴＧ１つ分の間隔と余り部分Ｔｒ２とであったが、位相遅れＰ１の長さがステージＳＴＧ２つ分を超える場合、ステージＳＴＧ２つ分の間隔と余り部分Ｔｒ２として位相遅れＰ１を分ける。
【００８０】
（２−３−３．位相遅れ補償第１制御）
図４は、位相遅れ補償第１制御を説明するためのタイムチャートである。図３では、位相遅れ補償第２制御との相違点を示すことで位相遅れ補償第１制御の説明をする。
【００８１】
上記のように、位相遅れ補償第２制御では、位相遅れＰ１を、ステージ間隔Ｔｓｔｇに相当する部分Ｓ１と余り時間Ｔｒ２とに分けた。これに対し、図４に示すように、位相遅れ補償第１制御では、クランクパルス間隔Ｔｃｒｋに相当する部分Ｋ１と余り時間Ｔｒ１とに位相遅れＰ１を分ける。
【００８２】
従って、位相遅れ補償第１制御では、次のように位相遅れＰ’（Ｐ１’〜Ｐ３’）を設定する。すなわち、まず位相遅れＰ１全体を特定する。そして、位相遅れＰ１をクランクパルスＰｃｒｋと同じ長さの部分Ｋ１（図４では、クランクパルスＰｃｒｋ８つ分に相当する部分）と、余り部分（以下「余り時間Ｔｒ１」という。）とに分ける（Ｐ１＝Ｋ１＋Ｔｒ１）。
【００８３】
なお、部分Ｋ１は、クランクパルス数Ｎｃｒｋとクランクパルス間隔Ｔｃｒｋの積として定義することができる（Ｋ１＝Ｎｃｒｋ×Ｔｃｒｋ）。このため、位相遅れＰ１は、クランクパルス数Ｎｃｒｋとクランクパルス間隔Ｔｃｒｋの積と、余り時間Ｔｒ１との和として定義することも可能である（Ｐ１＝Ｎｃｒｋ×Ｔｃｒｋ＋Ｔｒ１）。
【００８４】
次いで、第３振動周期Ｃ３において実際に電流を出力する場合（電流出力処理）、クランクパルスＰｃｒｋに対応する部分Ｋ１’については、第３振動周期Ｃ３のクランクパルス間隔Ｔｃｒｋとして算出する。すなわち、第３振動周期Ｃ３においてクランクパルスＰｃｒｋ８つ分に相当する部分Ｋ１’として算出する。次いで、部分Ｋ１’に余り時間Ｔｒ１をつなぎ合わせて位相遅れＰ１’とする（Ｐ１’＝Ｋ１’＋Ｔｒ１）。
【００８５】
以上より、位相遅れ補償第１制御では、クランクパルスＰｃｒｋと同じ間隔の部分Ｋ１’については、エンジン振動周期Ｃ１、Ｃ３の長さの相違に合わせて変化する。従って、車両１０が加速して振動周期Ｃが短くなる又はエンジン回転数Ｎｅが多くなったとしても、部分Ｋ１’において当該相違を補償することが可能となる。
【００８６】
位相遅れ補償第２制御ではステージ間隔Ｔｓｔｇを用いているのに対し、位相遅れ補償第１制御ではクランクパルス間隔Ｔｃｒｋを用いる。クランクパルス間隔Ｔｃｒｋは、ステージ間隔Ｔｓｔｇよりも短い。このため、余り時間Ｔｒ１を、余り時間Ｔｒ２よりも短くすることが可能となる。結果として、位相遅れ補償第１制御では、位相遅れ補償第２制御よりも高い角度分解能での処理が可能となる。
【００８７】
［２−４．具体的な流れ］
（２−４−１．制御の選択）
図５は、通常制御において位相遅れ補償第１制御及び位相遅れ補償第２制御を選択するフローチャートである。位相遅れ補償第１制御では、クランクパルス数Ｎｃｒｋを用いて位相遅れＰを補償するのに対し、位相遅れ補償第２制御では、ステージ数Ｎｓｔｇを用いて位相遅れＰを補償する。上記のように、位相遅れＰは、エンジン振動周期Ｃの開始時点（すなわち、エンジン振動の発生時点）からエンジン振動がアクチュエータ３０６に到達するまでの時間を意味する。
【００８８】
位相遅れ補償第１制御は、位相遅れ補償第２制御と比較して、ＡＣＭ  ＥＣＵ３０４の演算負荷は大きくなるが、ＡＣＭ３０２ｆ、３０２ｒの作動タイミングの設定精度は高い。このため、本実施形態では、可能な限り第１制御を用い、第１制御を用いるのが適切でない場面において第２制御を用いる。
【００８９】
図５のステップＳ１において、ＡＣＭ  ＥＣＵ３０４は、運転者の加速操作が行われたか否かを判定する。ここにいう加速操作には、例えば、アクセルペダル２４の踏込み又はシフトレバー３０に対するシフトアップ操作が含まれる。これらの加速操作により、エンジン回転数Ｎｅの単位時間当たりの変化量（以下「エンジン回転数変化量ΔＮｅ」という。）［ｒｐｍ／ｓ］が一時的に増加する。なお、加速操作に加えて又は加速操作に代えて、減速操作を判定してもよい。
【００９０】
ステップＳ１において加速操作がない場合（Ｓ１：ＮＯ）、位相遅れ補償第１制御及び位相遅れ補償第２制御を選択せずに通常制御を継続する。これは、例えば、車両１０が一定速走行をしている場合、クランクパルスＰｃｒｋの波形は略一定となるため、各位相遅れＰが略等しくなることを考慮したものである。すなわち、各位相遅れＰが略等しい場合、位相遅れ補償第１制御及び位相遅れ補償第２制御により位相遅れＰを補償する必要性が相対的に低くなるため、むしろＡＣＭ  ＥＣＵ３０４による演算負荷Ｌａｃｍの低減に焦点を当てる。一方、ステップＳ１において加速操作がある場合（Ｓ１：ＹＥＳ）、ステップＳ２に進む。
【００９１】
ステップＳ２において、ＡＣＭ  ＥＣＵ３０４は、第１制御を用いるのに適しているほどＡＣＭ  ＥＣＵ３０４の演算負荷Ｌａｃｍが低いか否かを判定する。具体的には、演算負荷Ｌａｃｍが演算負荷閾値ＴＨｌａｃｍ以下であるか否かを判定する。演算負荷Ｌａｃｍは、例えば、記憶部３１４（特にメモリ領域）の使用状態を判定することでＡＣＭ  ＥＣＵ３０４が取得する。
【００９２】
演算負荷閾値ＴＨｌａｃｍは、第１制御を用いるのに適しているほど演算負荷Ｌａｃｍが低いか否かを判定するための閾値である。第１制御を用いるのに適しているか否かの判定は、演算負荷Ｌａｃｍが低くないことにより、ＡＣＭ  ＥＣＵ３０４の演算速度がエンジン回転数Ｎｅに追従できるか否かにより判定する。
【００９３】
ステップＳ２の判定として、例えば、ＡＣＭ  ＥＣＵ３０４は、第１制御を用いるのに適しているほどエンジン回転数Ｎｅが低いか否かを判定してもよい。換言すると、エンジン回転数Ｎｅを用いて演算負荷Ｌａｃｍを推定する。この場合、例えば、エンジン回転数Ｎｅがエンジン回転数閾値ＴＨｎｅ［ｒｐｍ］以下であるか否かを判定する。エンジン回転数Ｎｅ以外の指標（例えば、ＡＣＭ  ＥＣＵ３０４の演算部３１２における処理の混雑具合又は記憶部３１４のうちメモリ領域の使用状態）により演算負荷Ｌａｃｍを判定してもよい。
【００９４】
エンジン回転数Ｎｅは、例えば、クランクパルス信号Ｓｃｒｋに基づいてＦＩ  ＥＣＵ１０８が算出したものをＡＣＭ  ＥＣＵ３０４に出力することでＡＣＭ  ＥＣＵ３０４が取得する。或いは、クランクパルス信号Ｓｃｒｋに基づいてＡＣＭ  ＥＣＵ３０４が算出してもよい。或いは、エンジン１２と走行モータ１４が連結されている場合、レゾルバ２０２の検出値を用いてモータＥＣＵ２０６が算出したものをＡＣＭ  ＥＣＵ３０４に出力することでＡＣＭ  ＥＣＵ３０４が取得してもよい。或いは、レゾルバ２０２の検出値をＡＣＭ  ＥＣＵ３０４に入力し、ＡＣＭ  ＥＣＵ３０４がレゾルバ２０２の検出値に基づいて算出することもできる。
【００９５】
エンジン回転数閾値ＴＨｎｅは、第１制御を用いるのに適しているほどエンジン回転数Ｎｅが低いか否かを判定するための閾値である。第１制御を用いるのに適しているか否かの判断は、エンジン回転数Ｎｅが増加に伴うＡＣＭ３０２、ｆ３０２ｒの作動開始タイミングの誤差の程度により判定する。作動開始タイミングの誤差の詳細は、図８を参照して後述する。
【００９６】
ステップＳ２において第１制御を用いるのに適しているほど演算負荷Ｌａｃｍが低い場合（Ｓ２：ＹＥＳ）、ステップＳ３において、ＡＣＭ  ＥＣＵ３０４は、位相遅れ補償第１制御を実行する。第１制御を用いるのに適しているほど演算負荷Ｌａｃｍが低くない場合（Ｓ２：ＮＯ）、ステップＳ４において、ＡＣＭ  ＥＣＵ３０４は、位相遅れ補償第２制御を実行する。
【００９７】
（２−４−２．位相遅れ補償第１制御）
図６は、位相遅れ補償第１制御のフローチャート（図５のＳ３の詳細）である。ステップＳ１１において、ＡＣＭ  ＥＣＵ３０４は、第１振動周期Ｃ１においてクランクパルス間隔Ｔｃｒｋを読み取る（クランクパルス間隔読取り処理。図２〜図４参照）。ここにいうクランクパルス間隔Ｔｃｒｋとしては、例えば、第１振動周期Ｃ１における各クランクパルス間隔Ｔｃｒｋの平均値を用いることができる。或いは、クランクパルス間隔Ｔｃｒｋは、第１振動周期Ｃ１における任意のクランクパルス間隔Ｔｃｒｋを代表値として用いることも可能である。
【００９８】
第２振動周期Ｃ２において、ＡＣＭ  ＥＣＵ３０４は、演算処理としてステップＳ１２〜Ｓ１５を行う。すなわち、ステップＳ１２において、ＡＣＭ  ＥＣＵ３０４は、ＴＤＣパルス信号Ｓｔｄｃ又はクランクパルス信号Ｓｃｒｋを用いて第１振動周期Ｃ１の長さＴ１を算出する。
【００９９】
ステップＳ１３において、ＡＣＭ  ＥＣＵ３０４は、クランクパルス間隔Ｔｃｒｋに基づいて第１振動周期Ｃ１での位相遅れＰ１を算出する。位相遅れＰ１の算出方法は、例えば、特許文献１に記載の方法を用いることができる（特許文献１の段落［００８６］参照）。
【０１００】
ステップＳ１４において、ＡＣＭ  ＥＣＵ３０４は、位相遅れＰ１に含まれるクランクパルス数Ｎｃｒｋと余り時間Ｔｒ１とを算出する。具体的には、クランクパルス数Ｎｃｒｋは、下記の式（１−１）を用いて算出する。
Ｎｃｒｋ＝［Ｐ１／Ｔｃｒｋ］      ・・・（１−１）
【０１０１】
上記式（１−１）において、Ｔｃｒｋは、ステップＳ１１で読み取ったクランクパルス間隔であり、Ｐ１は、ステップＳ１３で算出した位相遅れである。また、上記式（１−１）において、［Ｐ１／Ｔｃｒｋ］は、ガウス記号（床関数）を示し、Ｐ１／Ｔｃｒｋ以下の最大の整数を示す。このため、［Ｐ１／Ｔｃｒｋ］は、位相遅れＰ１に含まれるクランクパルス数Ｎｃｒｋを示すこととなる。
【０１０２】
また、余り時間Ｔｒ１は、下記の式（１−２）を用いて算出する。
Ｔｒ１＝Ｐ１−［Ｐ１／Ｔｃｒｋ］・Ｔｃｒｋ    ・・・（１−２）
【０１０３】
図６のステップＳ１５において、ＡＣＭ  ＥＣＵ３０４は、ステップＳ１２で算出した第１振動周期Ｃ１の長さＴ１に基づいて目標電流波形Ｐｉ（特に、周波数又は幅）を算出する。
【０１０４】
第３振動周期Ｃ３以降（図２の例では第３及び第４振動周期Ｃ３、Ｃ４）において、ＡＣＭ  ＥＣＵ３０４は、電流出力処理としてステップＳ１６〜Ｓ１９を行う。すなわち、ステップＳ１６において、ＡＣＭ  ＥＣＵ３０４は、第３振動周期Ｃ３における第Ｎｃｒｋ番目のクランクパルスＰｃｒｋの終わり（第Ｎｃｒｋ＋１番目のクランクパルスＰｃｒｋの始まり）を検出する。これにより、位相遅れＰ１のうちクランクパルス数Ｎｃｒｋに対応する部分Ｋ１の時間を判定することが可能となる。
【０１０５】
なお、クランクパルスＰｃｒｋが非常に短いオン時間で示される場合、第Ｎｃｒｋ番目のクランクパルスＰｃｒｋの終わり（第Ｎｃｒｋ＋１番目のクランクパルスＰｃｒｋの始まり）は、第Ｎｃｒｋ＋１番目のクランクパルスＰｃｒｋの受信時点として検出することができる。また、隣り合うクランクパルスＰｃｒｋが、クランクパルス信号Ｓｃｒｋの立ち上がりと立ち下がりで示される場合（例えば、あるクランクパルスＰｃｒｋがクランクパルス信号Ｓｃｒｋの立ち上がりとして検出され、次のクランクパルスＰｃｒｋがクランクパルス信号Ｓｃｒｋの立ち下がりとして検出される場合）、クランクパルス信号Ｓｃｒｋの立ち上がり又は立ち下がりを、第Ｎｃｒｋ番目のクランクパルスＰｃｒｋの終わり（第Ｎｃｒｋ＋１番目のクランクパルスＰｃｒｋの始まり）として検出することができる。
【０１０６】
続くステップＳ１７において、ＡＣＭ  ＥＣＵ３０４は、第Ｎｃｒｋ番目のクランクパルスＰｃｒｋの終わりの検出時（換言すると、第Ｎｃｒｋ＋１番目のクランクパルスＰｃｒｋの受信開始時点）から余り時間Ｔｒ１が経過したことを検出する。
【０１０７】
余り時間Ｔｒ１が経過したら、ステップＳ１８において、ＡＣＭ  ＥＣＵ３０４は、ステップＳ１５で算出した目標電流波形Ｐｉに対応する電流（目標ＡＣＭ電流Ｉａｃｍｆｔ）を前側のＡＣＭ３０２ｆに出力する。
【０１０８】
前側のＡＣＭ３０２ｆに対する電流の出力時からＴ１／２が経過した後、ＡＣＭ  ＥＣＵ３０４は、ステップＳ１５で算出した目標電流波形Ｐｉに対応する電流（目標ＡＣＭ電流Ｉａｃｍｒｔ）を後ろ側のＡＣＭ３０２ｒに出力する（図２参照）。
【０１０９】
なお、図２の例では、第３・第４振動周期Ｃ３、Ｃ４において電流出力処理を行ったが、第１振動周期Ｃ１の長さＴ１と比較して、第３振動周期Ｃ３の長さＴ３が著しく長い場合（例えば、シフトアップ直後の場合）、第３振動周期Ｃ３のみで電流出力処理を終える場合があり得る。反対に、第１振動周期Ｃ１の長さＴ１と比較して、第３振動周期Ｃ３の長さＴ３及び第４振動周期Ｃ４の長さＴ４が著しく短い場合（例えば、エンジン回転数Ｎｅの増加が急激な場合）、電流出力処理が第５振動周期Ｃ５以降まで入り込む場合もあり得る。
【０１１０】
（２−４−３．位相遅れ補償第２制御）
図７は、位相遅れ補償第２制御のフローチャート（図５のＳ４の詳細）である。ステップＳ２１〜Ｓ２３は、図６のＳ１１〜Ｓ１３と同様である。
【０１１１】
ステップＳ２４において、ＡＣＭ  ＥＣＵ３０４は、位相遅れＰ１に含まれるステージ数Ｎｓｔｇと余り時間Ｔｒ２とを算出する。具体的には、ステージ数Ｎｓｔｇは、下記の式（２−１）を用いて算出する。
Ｎｓｔｇ＝［Ｐ１／（Ｔｃｒｋ・ｎ）］      ・・・（２−１）
【０１１２】
上記式（２−１）において、ｎは、各ステージＳＴＧに含まれるクランクパルスＰｃｒｋの数である。また、上記式（２−１）において、［Ｐ１／（Ｔｃｒｋ・ｎ）］は、ガウス記号（床関数）を示し、Ｐ１／（Ｔｃｒｋ・ｎ）以下の最大の整数を示す。このため、［Ｐ１／（Ｔｃｒｋ・ｎ）］は、位相遅れＰ１に含まれるステージ数Ｎｓｔｇを示すこととなる。
【０１１３】
また、余り時間Ｔｒ２は、下記の式（２−２）を用いて算出する。
Ｔｒ２＝Ｐ１−［Ｐ１／（Ｔｃｒｋ・ｎ）］・Ｔｃｒｋ・ｎ    ・・・（２−２）
【０１１４】
図７のステップＳ２５において、ＡＣＭ  ＥＣＵ３０４は、ステップＳ２２で算出した第１振動周期Ｃ１の長さＴ１に基づいて目標電流波形Ｐｉ（特に、周波数又は幅）を算出する。
【０１１５】
第３振動周期Ｃ３以降（図２の例では第３及び第４振動周期Ｃ３、Ｃ４）において、ＡＣＭ  ＥＣＵ３０４は、電流出力処理としてステップＳ２６〜Ｓ２９を行う。すなわち、ステップＳ２６において、ＡＣＭ  ＥＣＵ３０４は、第３振動周期Ｃ３における第Ｎｓｔｇ・ｎ番目のクランクパルスＰｃｒｋの終わり（第Ｎｓｔｇ・ｎ＋１番目のクランクパルスＰｃｒｋの始まり）を検出する。これにより、位相遅れＰ１のうちステージＳＴＧに対応する部分の時間Ｓ１を判定することが可能となる。
【０１１６】
続くステップＳ２７において、ＡＣＭ  ＥＣＵ３０４は、第Ｎｓｔｇ・ｎ番目のクランクパルスＰｃｒｋの終わりの検出時（換言すると、第Ｎｓｔｇ・ｎ＋１番目のクランクパルスＰｃｒｋの受信開始時点）から余り時間Ｔｒ２が経過したことを検出する。
【０１１７】
ステップＳ２８、Ｓ２９は、図６のステップＳ１８、Ｓ１９と同様である。すなわち、余り時間Ｔｒ２が経過したら、ステップＳ２８において、ＡＣＭ  ＥＣＵ３０４は、ステップＳ２５で算出した目標電流波形Ｐｉに対応する電流（目標ＡＣＭ電流Ｉａｃｍｆｔ）を前側のＡＣＭ３０２ｆに出力する。前側のＡＣＭ３０２ｆに対する電流の出力時からＴ１／２が経過した後、ＡＣＭ  ＥＣＵ３０４は、ステップＳ２５で算出した目標電流波形Ｐｉに対応する電流（目標ＡＣＭ電流Ｉａｃｍｒｔ）を後ろ側のＡＣＭ３０２ｒに出力する（図２参照）。
【０１１８】
（２−４−４．位相遅れ補償第１制御及び位相遅れ補償第２制御の比較）
次に、位相遅れ補償第１制御（図６）及び位相遅れ補償第２制御（図７）についての比較を行う。上記のように、位相遅れ補償第１制御では、位相遅れＰ１をクランクパルス間隔Ｔｃｒｋで割り切れる部分Ｋ１と余り時間Ｔｒ１とに分ける。このため、余り時間Ｔｒ１は、クランクパルス間隔Ｔｃｒｋ未満となる（図４）。一方、位相遅れ補償第２制御では、位相遅れＰ１をステージ間隔Ｔｓｔｇで割り切れる部分Ｓ１と余り時間Ｔｒ２とに分ける（図３及び図４）。このため、余り時間Ｔｒ２は、ステージ間隔Ｔｓｔｇ未満となる。
【０１１９】
図８は、位相遅れ補償第１制御及び位相遅れ補償第２制御それぞれにおけるエンジン回転数Ｎｅと余り時間Ｔｒ１、Ｔｒ２の最大値Ｔｒ１＿ｍａｘ、Ｔｒ２＿ｍａｘとの関係の一例を示す図である。
【０１２０】
余り時間Ｔｒ１は、クランクパルス間隔Ｔｃｒｋで割り切れなかった数値である。このため、余り時間Ｔｒ１の最大値Ｔｒ１＿ｍａｘは、クランクパルス間隔Ｔｃｒｋに限りなく近づく。一方、余り時間Ｔｒ２は、ステージ間隔Ｔｓｔｇで割り切れなかった数値である。上記のように、本実施形態では、各ステージＳＴＧに含まれるクランクパルスＰｃｒｋの数は５である。このため、余り時間Ｔｒ２の最大値Ｔｒ２＿ｍａｘは、ステージ間隔Ｔｓｔｇ（＝クランクパルス間隔Ｔｃｒｋ×５）に限りなく近づく。
【０１２１】
図８に示すように、エンジン回転数Ｎｅが小さいほど、最大値Ｔｒ１＿ｍａｘ、Ｔｒ２＿ｍａｘはそれぞれ大きくなる。このため、エンジン回転数Ｎｅが小さいほど、位相遅れ補償第１制御は効果を発揮することとなる。
【０１２２】
３．本実施形態の効果
以上説明したように、本実施形態の位相遅れ補償第１制御によれば、第１エンジン振動周期Ｃ１における位相遅れＰ１を、電流出力処理を行う第３エンジン振動周期Ｃ３に反映する際、クランクパルス数Ｎｃｒｋと余り時間Ｔｒ１を用いる（図４及び図６）。クランクパルス間隔Ｔｃｒｋは、ステージ間隔Ｔｓｔｇよりも短い。これに伴い、位相遅れ補償第２制御（図３及び図７）の場合よりも、余り時間Ｔｒ１（固定値）が取り得る範囲を狭くすることが可能となる。このため、ステージＳＴＧ単位で位相遅れＰ１を反映する場合と比較して、第１エンジン振動周期Ｃ１における位相遅れＰ１を、電流出力処理を行う第３エンジン振動周期Ｃ３に反映し易くなる。従って、アクチュエータ３０６の作動開始タイミングの精度を向上させることができる。
【０１２３】
本実施形態において、ＡＣＭ  ＥＣＵ３０４（エンジンマウント制御装置）は、位相遅れ補償第１制御（位相遅れ算出処理）を行うか否かを判定するエンジン回転数閾値ＴＨｎｅを設定し（図５のＳ２）、エンジン回転数Ｎｅがエンジン回転数閾値ＴＨｎｅを下回ると判定した場合（Ｓ２：ＹＥＳ）、位相遅れ補償第１制御を実行し（Ｓ３）、エンジン回転数Ｎｅがエンジン回転数閾値ＴＨｎｅを上回ると判定した場合（Ｓ２：ＮＯ）、位相遅れ補償第２制御を実行することで（Ｓ４）、位相遅れ補償第１制御位を中止する。
【０１２４】
位相遅れ補償第１制御においてクランクパルス数Ｎｃｒｋに関連した演算を行うと、位相遅れ補償第２制御の場合と比較して演算負荷Ｌａｃｍが増大する。また、エンジン回転数Ｎｅが速いほど、クランクパルス間隔Ｔｃｒｋが短くなるため、演算負荷Ｌａｃｍが増大する。本実施形態によれば、エンジン回転数Ｎｅがエンジン回転数閾値ＴＨｎｅを下回る場合にのみ、位相遅れＰ１をクランクパルス間隔Ｔｃｒｋに基づいて補正することで演算負荷Ｌａｃｍの増大を抑制することができ、安定した制御の実施を行うことが可能となる。
【０１２５】
本実施形態において、ＡＣＭ  ＥＣＵ３０４は、運転者の加速意図を示す加速操作の有無を判定し（図５のＳ１）、加速操作があったと判定したとき（Ｓ１：ＹＥＳ）、位相遅れ補償第１制御（位相遅れ算出処理）を実行し（Ｓ３）、加速操作がないと判定したとき（Ｓ１：ＮＯ）、位相遅れ補償第１制御を中止する。これにより、エンジン回転数Ｎｅの変化が大きい加速時において位相遅れ補償第１制御を実行することができる。このため、位相遅れ補償第１制御を効果的に利用することが可能となる。
【０１２６】
また、加速操作があったと判定したとき（Ｓ１：ＹＥＳ）、ＡＣＭ  ＥＣＵ３０４の演算負荷Ｌａｃｍが低い場合（Ｓ２：ＹＥＳ）、位相遅れ補償第１制御を実行する（Ｓ３）。一方、加速操作があったと判定したとき（Ｓ１：ＹＥＳ）、ＡＣＭ  ＥＣＵ３０４の演算負荷Ｌａｃｍが低くない場合（Ｓ２：ＮＯ）、位相遅れ補償第２制御を実行する（Ｓ４）。これにより、演算負荷Ｌａｃｍに応じて位相遅れ補償第１制御又は位相遅れ補償第２制御を選択し、振動抑制制御を安定して行うことができる。
【０１２７】
本実施形態において、ＡＣＭ  ＥＣＵ３０４は、位相遅れ補償第１制御（位相遅れ算出処理）と位相遅れ補償第２制御（第２位相遅れ算出処理）とを切り替えて用いる（図５）。さらに、ＡＣＭ  ＥＣＵ３０４は、ＡＣＭ  ＥＣＵ３０４の演算負荷Ｌａｃｍを検出し、位相遅れ補償第１制御又は位相遅れ補償第２制御を選択するための演算負荷閾値ＴＨｌａｃｍを設定し、演算負荷Ｌａｃｍが演算負荷閾値ＴＨｌａｃｍを下回るとき（図５のＳ２：ＹＥＳ）、位相遅れ補償第１制御を選択し（Ｓ３）、演算負荷Ｌａｃｍが演算負荷閾値ＴＨｌａｃｍを上回るとき（Ｓ２：ＮＯ）、位相遅れ補償第２制御を選択する（Ｓ４）。
【０１２８】
これにより、ＡＣＭ  ＥＣＵ３０４の演算負荷Ｌａｃｍが高い場合、位相遅れ補償第２制御を選択して、ステージ数Ｎｓｔｇを基準として位相遅れＰ１を取り扱う。これにより、電流を出力する際の位相遅れＰ１’の設定精度（及びアクチュエータ３０６の出力タイミングの設定精度）と、ＡＣＭ  ＥＣＵ３０４の演算負荷Ｌａｃｍとでバランスの取れた制御を実現することが可能となる。
【０１２９】
Ｂ．変形例
なお、本発明は、上記実施形態に限らず、本明細書の記載内容に基づき、種々の構成を採り得ることはもちろんである。例えば、以下の構成を採用することができる。
【０１３０】
１．適用対象
上記実施形態では、能動型防振支持装置３００（ＡＣＭ  ＥＣＵ３０４）をハイブリッド車両である車両１０に適用したが、例えば、位相遅れ補償第１制御に着目すれば、走行モータ１４を有さないエンジン車両としての車両１０に能動型防振支持装置３００を適用してもよい。或いは、能動型防振支持装置３００の適用対象は、車両１０に限らず、エンジン１２を備える移動体（船舶や航空機等）に用いることもできる。或いは、能動型防振支持装置３００を、エンジン１２を備える製造装置、ロボット又は家電製品に適用してもよい。
【０１３１】
２．エンジン１２
上記実施形態では、エンジン１２を走行用（車両１０の走行駆動力を生成するもの）としたが、例えば、走行モータ１４を駆動力生成手段とする車両１０であれば、エンジン１２は、図示しない発電機を作動させるためのみに用いられるものであってもよい。
【０１３２】
３．走行モータ１４及びスタータモータ１０６（電動機）
上記実施形態では、走行モータ１４及びスタータモータ１０６の両方をモータリング用の電動機として用いたが、例えば、スタータモータ１０６を省略することも可能である。また、走行モータ１４を有さないエンジン車両として車両１０を構成する場合、スタータモータ１０６のみを前記電動機として用いることができる。
【０１３３】
４．クランクセンサ１０２及びレゾルバ２０２
上記各実施形態では、クランクセンサ１０２の角度分解能は、レゾルバ２０２よりも低いものとした。しかしながら、クランクセンサ１０２の角度分解能は、レゾルバ２０２と同じ又はそれ以上としてもよい。
【０１３４】
５．ＡＣＭ  ＥＣＵ３０４における制御
［５−１．制御の選択］
上記実施形態では、図５のステップＳ１、Ｓ２を用いて、位相遅れ補償第１制御及び位相遅れ補償第２制御の選択を行った。しかしながら、例えば、位相遅れ補償第１制御に着目すれば、ステップＳ１、Ｓ２の一方を省略してもよい。或いは、ステップＳ１、Ｓ２以外の判定を用いて、位相遅れ補償第１制御又は位相遅れ補償第２制御を選択してもよい。例えば、位相遅れ補償第１制御の実行を許可するか否かを判定するためのエンジン回転数変化量閾値ＴＨΔｎｅを設定しておき、エンジン回転数変化量ΔＮｅ［ｒｐｍ／ｓ］が閾値ＴＨΔｎｅを下回る場合、位相遅れ補償第１制御の実行を許可し、エンジン回転数変化量ΔＮｅが閾値ＴＨΔｎｅを上回る場合、位相遅れ補償第１制御の実行を禁止してもよい。
【０１３５】
上記実施形態では、位相遅れ補償第１制御及び位相遅れ補償第２制御の両方を用いた（図５）。しかしながら、例えば、位相遅れ補償第１制御に着目すれば、位相遅れ補償第２制御を用いない構成も可能である。
【０１３６】
［５−２．クランクパルス間隔Ｔｃｒｋ］
上記実施形態では、位相遅れ補償第１制御及び位相遅れ補償第２制御のいずれにおいてもクランクパルス間隔Ｔｃｒｋを用いた（図６のＳ１１、Ｓ１３、Ｓ１４、図７のＳ２１、Ｓ２３、Ｓ２４）。しかしながら、エンジン１２と走行モータ１４の両方が駆動している場合（エンジン１２と走行モータ１４とが連結している場合）、レゾルバ２０２が検出したモータ回転位置θｍｏｔ＿ｄに基づくモータパルス間隔Ｔｍｏｔをクランクパルス間隔Ｔｃｒｋの代わりに用いてもよい。
【０１３７】
上記実施形態では、クランクセンサ１０２（エンジン１２自体の回転位置センサ）よりもレゾルバ２０２の方が角度分解能が高い。このため、位相遅れＰ１の算出等の処理を精度よく行うことが可能となる。
【０１３８】
［５−３．余り時間Ｔｒ１、Ｔｒ２］
上記実施形態では、余り時間Ｔｒ１を固定時間［ｓｅｃ］として算出した（図６のＳ１４）。しかしながら、エンジン１２及び走行モータ１４の両方が作動し且つレゾルバ２０２の方がクランクセンサ１０２よりも角度分解能が高い場合、余り時間Ｔｒ１を固定時間として算出した後、当該固定時間に含まれるモータパルスＰｍｏｔの数を算出して用いてもよい。
【０１３９】
すなわち、前記固定時間をモータパルス間隔Ｔｍｏｔで割った商Ｑを求める。そして、第３振動周期Ｃ３において、第Ｎｃｒｋ番目のクランクパルスＰｃｒｋを検出した後（図６のＳ１６）、第Ｑ番目のモータパルスＰｍｏｔを検出した時点で前側のＡＣＭ３０２ｆに電流を出力する（Ｓ１８）。なお、モータパルスＰｍｏｔの数は、レゾルバ２０２からのモータパルス信号Ｓｍｏｔに基づいて判定することが可能である。
【０１４０】
これにより、クランクセンサ１０２より角度分解能の高いレゾルバ２０２のモータパルスＰｍｏｔによって余り時間Ｔｒ１の経過を判定することができるため、より精度よくアクチュエータ３０６の作動タイミングを設定することが可能となる。余り時間Ｔｒ２についても同様である。
【０１４１】
［５−４．ステージＳＴＧ］
上記実施形態の位相遅れ補償第２制御では、１つのステージＳＴＧが５つのクランクパルスＰｃｒｋに対応すること、換言すると、ステージＳＴＧの長さ（ステージ間隔Ｔｓｔｇ）に対応するクランクパルスＰｃｒｋの数ｎが固定であることを前提としていた。しかしながら、ステージ間隔Ｔｓｔｇに対応するクランクパルスＰｃｒｋの数ｎを可変としてもよい。
【０１４２】
例えば、位相遅れ補償第２制御において、ＡＣＭ  ＥＣＵ３０４は、第１エンジン振動周期Ｃ１における位相遅れＰ１が大きいほど、各ステージＳＴＧに含まれるクランクパルスＰｃｒｋの数ｎを減少させ、第１エンジン振動周期Ｃ１における前記位相遅れが小さいほど、各ステージに含まれる前記クランクパルスの数ｎを増加させることができる。
【０１４３】
図８を参照して説明したように、エンジン回転数Ｎｅが低い場合、位相遅れＰ１が大きくなる可能性が高くなる。そこで、位相遅れＰ１が大きい場合、エンジン回転数Ｎｅの変化が位相遅れＰ１の変化に与える影響（すなわち、振動抑制制御の精度への影響）が大きいといえる。このため、位相遅れＰ１が大きいほど、各ステージＳＴＧに含まれるクランクパルスＰｃｒｋの数ｎを減少させることで、電流出力処理（アクチュエータ３０６の出力タイミング）に関する角度分解能を高めることが可能となる。従って、位相遅れＰ１の変化が大きい場合でも、当該変化をアクチュエータ３０６の出力タイミングに高精度に反映させることが可能となる。
【０１４４】
一方、位相遅れＰ１が小さい場合（エンジン回転数Ｎｅが高い場合）、エンジン回転数Ｎｅの変化が位相遅れＰ１の変化に与える影響（すなわち、振動抑制制御の精度への影響）が小さいといえる。このため、位相遅れＰ１が小さいほど、各ステージＳＴＧに含まれるクランクパルスＰｃｒｋの数ｎを増加させることで、電流出力処理（アクチュエータ３０６の出力タイミング）に関する角度分解能を低下させることが可能となる。従って、ＡＣＭ  ＥＣＵ３０４の演算負荷Ｌａｃｍを低減させることが可能となる。
【０１４５】
以上より、アクチュエータ３０６の出力タイミングとＡＣＭ  ＥＣＵ３０４の演算負荷Ｌａｃｍの両方についてバランスが取れた制御が可能となる。
【０１４６】
［５−５．演算処理］
上記実施形態では、第１振動周期Ｃ１で行ったクランクパルス間隔読取り処理に対応する演算処理を第２振動周期Ｃ２で行った（図２）。しかしながら、例えば、第１振動周期Ｃ１の前半でクランクパルス間隔読取り処理を実行し、第１振動周期Ｃ１の後半で演算処理を実行するように割り当てれば、演算処理を第１振動周期Ｃ１で行うことも可能である。
【符号の説明】
【０１４７】
１０…車両                              １２…エンジン
１４…走行モータ（電動機）              １６…車体
１０２…クランクセンサ                  １０４…上死点センサ
２０２…レゾルバ
３０２ｆ、３０２ｒ…ＡＣＭ（エンジンマウント）
３０４…ＡＣＭ  ＥＣＵ（エンジンマウント制御装置）
３０６…アクチュエータ                  Ｃ…エンジン振動周期
Ｃ１…第１エンジン振動周期              Ｌａｃｍ…ＡＣＭ  ＥＣＵの演算負荷
Ｎｃｒｋ…位相遅れに含まれるクランクパルス数
Ｎｅ…エンジン回転数
Ｎｓｔｇ…位相遅れに含まれるステージ数  Ｐ…位相遅れ
Ｓｃｒｋ…クランクパルス信号            Ｓｍｏｔ…モータパルス信号
Ｓｔｄｃ…ＴＤＣパルス信号（上死点信号）
ＳＴＧ…ステージ
Ｔｃｒｋ…クランクパルス間隔（クランクパルスの間隔）
ＴＨｌａｃｍ…演算負荷閾値              ＴＨｎｅ…エンジン回転数閾値
Ｔｒ１…位相遅れ補償第１制御における余り時間
Ｔｒ２…位相遅れ補償第２制御における余り時間
Ｔｓｔｇ…ステージ間隔
【図１】
2014234916.tif 000003
【図２】
2014234916.tif 000004
【図３】
2014234916.tif 000005
【図４】
2014234916.tif 000006
【図５】
2014234916.tif 000007
【図６】
2014234916.tif 000008
【図７】
2014234916.tif 000009
【図８】
2014234916.tif 000010