(57)【要約】【課題】  クランク角度を精度よく推定できるハイブリッド車両のクランク角度制御方法およびクランク角度制御装置を提供する。【解決手段】  モータジェネレータ5およびエンジン1を動力源とするハイブリッド車両のクランク角度推定方法であって、モータジェネレータ5を駆動してエンジン1を連れ回したときのモータ回転角度θmを検出すると共に、モータジェネレータ5に作用する外乱トルク推定値Trbstを演算し、外乱トルク推定値Trbstが最大となったときのモータ回転角度θmと、エンジン1の圧縮反力が最大のときの圧縮反力最大クランク角度θmaxとの関係に基づき、モータ回転角度θmからクランク角度推定値θcを演算する。【選択図】  図１
2019077282.tif 000002
【特許請求の範囲】
【請求項１】
モータおよびエンジンを動力源とするハイブリッド車両のクランク角度制御方法であって、
前記モータを駆動して停止状態の前記エンジンを連れ回したときのモータ回転角度を検出または推定すると共に、前記モータに作用する外乱トルクを推定し、
前記推定された外乱トルクが極値のときの前記モータ回転角度と、前記エンジンのクランク角度と圧縮反力との関係と、に基づき、前記モータ回転角度からクランク角度を推定し、
前記推定されたクランク角度に基づき、前記エンジンのクランク角度を所定の目標クランク角度に停止させるモータトルク指令値を演算し、
前記モータトルク指令値に応じてモータトルクを制御する際、前記推定されたクランク角度と、前記エンジンのクランク角度と圧縮反力との関係、とに基づき前記エンジンの圧縮反力を推定し、
前記推定された圧縮反力に応じた補償値により前記モータトルク指令値を補償するハイブリッド車両のクランク角度制御方法。
【請求項２】
請求項１に記載のハイブリッド車両のクランク角度制御方法において、
前記補償は、前記推定された外乱トルクが極値となったとき開始し、前記推定されたクランク角度が前記エンジンの上死点から所定角度回転したとき終了するハイブリッド車両のクランク角度制御方法。
【請求項３】
請求項２に記載のハイブリッド車両のクランク角度制御方法において、
前記補償の開始時には前記推定された外乱トルクから前記補償値を減じ、前記補償の終了時には前記推定された外乱トルクに前記補償値を加えるハイブリッド車両のクランク角度制御方法。
【請求項４】
請求項１ないし３のいずれかに記載のハイブリッド車両のクランク角度制御方法において、
前記停止状態のときのクランク角度である初期クランク角度を推定し、
前記推定された初期クランク角度が上死点に近いほど、前記圧縮反力を小さく推定するハイブリッド車両のクランク角度制御方法。
【請求項５】
請求項４に記載のハイブリッド車両のクランク角度制御方法において、
前記推定されたクランク角度から前記エンジンのクランク角度に対する圧縮反力のベース特性を参照して得られた値にゲインを乗じて圧縮反力推定値を演算し、
前記ベース特性は、前記推定された初期クランク角度を異ならせて前記エンジンを連れ回したとき、初回の極値が最大となる初期クランク角度に対応するクランク角度に対する圧縮反力の特性であり、
前記ゲインは、前記モータによる前記エンジンの連れ回り開始から前記推定された外乱トルクが極値となるまでの時間が短いほど小さくするハイブリッド車両のクランク角度制御方法。
【請求項６】
モータおよびエンジンを動力源とするハイブリッド車両のクランク角度制御装置であって、
前記モータを駆動して停止状態の前記エンジンを連れ回したときのモータ回転角度を検出または推定するモータ回転角度検出部と、
前記モータに作用する外乱トルクを推定する外乱トルク推定部と、
前記推定された外乱トルクが極値のときの前記モータ回転角度と、前記エンジンのクランク角度と圧縮反力との関係と、に基づき、前記モータ回転角度からクランク角度を推定するクランク角度推定部と、
前記推定されたクランク角度に基づき、前記エンジンのクランク角度を所定の目標クランク角度に停止させるモータトルク指令値を演算するモータトルク指令値演算部と、
前記推定されたクランク角度と、前記エンジンのクランク角度と圧縮反力との関係、とに基づき前記エンジンの圧縮反力を推定する圧縮反力推定部と、
前記推定された圧縮反力に応じた補償値を演算する補償値演算部と、
前記演算された補償値に基づき、前記モータトルク指令値を補償するモータトルク補償部と、
前記補償された前記モータトルク指令値に応じてモータトルクを制御するモータ制御部と、
を備えるハイブリッド車両のクランク角度制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハイブリッド車両のクランク角度制御方法およびクランク角度制御装置に関する。
【背景技術】
【０００２】
特許文献１には、モータおよびエンジンを動力源とするハイブリッド車両において、モータによりエンジンのクランク角度を目標クランク角度に停止させる際、クランク角度センサで計測したクランク角度に基づきモータ回転角度を制御する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第5709026号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記従来技術において、クランク角度を精度よく推定して欲しいとのニーズがあった。
本発明の目的は、クランク角度を精度よく推定できるハイブリッド車両のクランク角度制御方法およびクランク角度制御装置を提供することにある。
【課題を解決するための手段】
【０００５】
本発明の一実施形態に係るハイブリッド車両のクランク角度制御方法では、モータを駆動してエンジンを停止状態から連れ回したときのモータ回転角度を検出または推定すると共に、モータに作用する外乱トルクを推定し、外乱トルクが極値のときのモータ回転角度と、エンジンのクランク角度と圧縮反力との関係と、に基づき、モータ回転角度からクランク角度推定値を演算する。
【発明の効果】
【０００６】
よって、本発明にあっては、クランク角度を精度よく推定できる。
【図面の簡単な説明】
【０００７】
【図１】実施形態１のハイブリッド車両におけるパワートレインの概略構成図である。
【図２】実施形態１のパワートレインの制御系を示す概略構成図である。
【図３】実施形態１のモータコントローラ12の概略構成図である。
【図４】初期クランク角度と最大圧縮反力比との関係図である。
【図５】エンジン1のクランク角度に対するエンジン圧縮反力特性図である。
【図６】実施形態１のクランク角度推定制御を示すブロック線図である。
【図７】初期クランク角度と圧縮反力との関係図である。
【図８】実施形態１のクランク角度推定制御および最適クランク角度制御の流れを示すフローチャートである。
【図９】実施形態１のクランク角度推定制御および最適クランク角度制御の流れを示すフローチャートである。
【図１０】実施形態１のクランク角度推定制御および最適クランク角度制御の流れを示すフローチャートである。
【図１１】初期クランク角度推定マップである。
【図１２】FF補償ゲインマップである。
【図１３】実施形態１のクランク角度推定作用を示す圧縮反力推定値、モータ回転角度およびクランク角度推定値のタイムチャートである。
【図１４】実施形態１のFF補償作用を示す最終モータトルク指令値、モータ回転速度およびモータ回転角度のタイムチャートである。
【図１５】初期クランク角度が下死点に近い場合の実施形態１のFF補償作用を示す最終モータトルク指令値、FF補償値、外乱トルク推定値およびクランク角度推定値のタイムチャートである。
【図１６】初期クランク角度が上死点に近い場合の実施形態１のFF補償作用を示す最終モータトルク指令値、FF補償値、外乱トルク推定値およびクランク角度推定値のタイムチャートである。
【発明を実施するための形態】
【０００８】
〔実施形態１〕
図１は、実施形態１のハイブリッド車両におけるパワートレインの概略構成図である。実施形態１のハイブリッド車両は、動力源であるエンジン1の車両前後方向後方側に自動変速機3がタンデム配置されている。エンジン1のクランクシャフト1aからの回転を自動変速機3の変速機入力軸3aへ伝達する軸4には、動力源であるモータジェネレータ5（以下、モータ）が結合されている。モータ5は、エンジン1および自動変速機3間に位置し、軸（モータジェネレータ軸）4にトルクを出力する。モータ5は、運転状態に応じて電動機または発電機として機能する。クランクシャフト1aおよびモータジェネレータ軸4間には、第１クラッチ6が介装されている。第１クラッチ6により、エンジン1およびモータ5間が切り離し可能に結合されている。第1クラッチ6は、伝達トルク（クラッチ締結）容量を連続的に変更可能なものであって、例えば、比例ソレノイドでクラッチ作動油流量およびクラッチ作動油圧を連続的に制御して伝達トルク容量を変更可能な湿式多板クラッチが用いられている。
【０００９】
モータ5および自動変速機3間は、モータジェネレータ軸4と変速機入力軸3aとの結合により相互に直結されている。自動変速機3は有段式であり、変速機入力軸3aからの回転を選択変速段に応じたギヤ比で変速して変速機出力軸3bに出力する。変速機出力軸3bの回転は、ディファレンシャルギヤ装置8により駆動輪である左右の後輪2,2へ分配して伝達され、車両の走行に供される。実施形態１では、モータ5および後輪2,2を切り離し可能に結合する第２クラッチ7として、自動変速機3内に既存する前進変速段選択用の変速摩擦要素または後退変速段選択用の変速摩擦要素を流用している。第２クラッチ7は、第１クラッチ6と同様に、伝達トルク容量を連続的に変更可能である。
【００１０】
図１に示したパワートレインでは、停車状態からの発進時などを含む低負荷・低車速時に用いられる電気走行(EV)モードが要求されると、第1クラッチ6を解放し、第2クラッチ7を締結し、自動変速機3を動力伝達状態にする。この状態でモータ5を駆動することにより、車両はモータ5の出力のみで走行する（EV走行）。一方、高速走行時や大負荷走行時などで用いられるハイブリッド走行(HEV走行)モードが要求されると、第1クラッチ6および第2クラッチ7を共に締結し、自動変速機3を動力伝達状態にする。この状態でエンジン1およびモータ5を駆動することにより、車両はエンジン1およびモータ5双方の出力により走行する（HEV走行）。HEV走行モードにおいて、エンジン1を最適燃費で運転させるとエネルギーが余剰となる場合、この余剰エネルギーによりモータ5を発電機として作動させることで余剰エネルギーを電力に変換し、この発電電力をモータ5のモータ駆動に用いるよう蓄電しておくことでエンジン1の燃費を向上できる。
【００１１】
図２は、実施形態１のパワートレインの制御系の概略構成図である。
車両制御コントローラ10は、エンジン回転数、モータ回転および車両情報（アクセル開度、車速、ギアポジション、発電要求、第1クラッチ締結状態等）に基づき、車両の目標駆動トルクを演算し、目標駆動トルクを目標エンジントルクと目標モータトルクとに分配して各コントローラ11,12へ出力する。エンジンコントローラ11は、目標エンジントルクを実現するエンジントルク指令を演算し、エンジン1を駆動する。エンジンコントローラ11は、クランク角度センサ13で検出されたクランク角度からエンジン回転数を演算する。モータコントローラ12は、目標モータトルクを実現するモータトルク指令値を演算し、モータ5を駆動する。モータコントローラ12は、レゾルバ（モータ回転角度検出部）14で検出されたモータ回転角度からモータ回転数を演算する。
【００１２】
図３は、実施形態１のモータコントローラ12の概略構成図である。
モータコントローラ12は、車両制御コントローラ10からの目標モータトルクおよびモータ回転数を入力し、モータ回転速度を車両制御コントローラ10へ出力する。モータコントローラ12は、回転速度演算部15、モータトルク制御部16、モータ電流制御部（モータ制御部）17およびクランク角度推定部18を有する。回転速度演算部15は、レゾルバ14の出力からモータ回転速度を演算する。モータトルク制御部16は、目標モータトルク、モータ回転角度、モータ回転速度および後述するクランク角度推定値からモータトルク指令値を演算し、モータ電流制御部17へ出力する。モータ電流制御部17は、モータトルク指令値に応じてモータ駆動電流を決定し、インバータ19へ出力する。インバータ19は、モータ駆動電流に応じてモータ5に三相電流を供給する。クランク角度推定部18は、モータ回転角度および後述する外乱トルク推定値からクランク角度推定値を演算し、モータトルク制御部16へ出力する。
【００１３】
モータコントローラ12は、エンジン始動時に発生するフロア振動の低減を狙いとし、エンジン停止状態で停車したとき、第１クラッチ6を締結し、第２クラッチ7を解放し、クランク角度推定部18により演算されたクランク角度推定値に基づき、クランク角度が最適クランク角度（目標クランク角度）となるようにモータ5を回転数制御する最適クランク角度制御を実行する。最適クランク角度は、エンジン回転数が共振帯を通過する際に発生するフロア振動の振幅レベルを所定レベルまで抑制可能なクランク角度とする。クランク角度とフロア振動の振幅レベルとは相関が有るため、最適クランク角度はあらかじめ実験やシミュレーション等により得られる。エンジン1のクランキング前に最適クランク角度制御を実行することにより、エンジン始動時のフロア振動を低減できる。
【００１４】
図４は、初期クランク角度と最大圧縮反力比との関係図である。縦軸は最大圧縮反力比[-]、横軸は初期クランク角度θinit[deg]（ATDC換算）である。初期クランク角度θinitはエンジン回転開始前のクランク角度である。縦軸は任意の気筒の圧縮上死点を基準（ゼロ点）として、圧縮反力周期θcycにおける、任意の刻み値毎の最大圧縮反力比を示している。縦軸の最大圧縮反力比とは、エンジン回転中のシリンダ内部空気の圧縮・膨張によって生じる圧力において、モータトルク軸に作用する力の比率を示しており、ATDC 0°のときを1.0としている。モータトルク軸に作用する力としては、気筒毎に、シリンダ表面積、バルブ開閉タイミング等のエンジン諸元および回転量から演算し、全ての気筒で発生する力を合算した。また、エンジン始動直後の振動に対する影響をみるために、回転開始からの回転量としては、圧縮反力周期θcycの1周期分とした。このとき、各初期クランク角度θinitで発生する圧縮反力の最大値をATDC 0°の値を基準として正規化した値をプロットしている。図４から、初期クランク角度θinitに応じて、エンジン始動後、圧縮反力周期θcycまで回転したときの最大圧縮反力比には差が見られ、圧縮反力がエンジン始動直後に生じる振動の加振力であると仮定した場合、振動抑制に効果的な初期クランク角度である最適クランク角度θidealが存在することが分かる。
【００１５】
図５は、エンジン1のクランク角度に対するエンジン圧縮反力特性図である。縦軸は反力（推進力）[N・m]、横軸はクランク角度[deg]である。第１クラッチ6を締結してモータ5を駆動し、エンジン1を連れ回しさせると、モータジェネレータ軸4にはエンジン1からの圧縮反力が作用する。「連れ回し」とは、エンジン1に対する燃料噴射および点火を停止した状態でクランクシャフト1aをモータ5で回している状態である。図５に示すように、圧縮反力は、クランク角度に対して周期性があり（１周期＝θcyc）、そのピーク値Tmaxは常に一定のクランク角度（圧縮反力最大クランク角度θmax）となる。実施形態１では、圧縮反力がモータ5に外乱トルクとして作用する点に着目し、外乱トルク推定値を圧縮反力とみなし、外乱トルク推定値を基にクランク角度を推定する。クランク角度推定部18は、外乱トルク推定値の初回最小ピーク値を検出した際のモータ回転角度およびエンジン1のクランク角度に対するエンジン圧縮反力特性に基づいてクランク角度推定値を演算する。外乱トルクが初回最小ピーク値となるときのクランク角度は、あらかじめ実験やシミュレーション等から求められる。モータコントローラ12は、クランク角度推定部18によるクランク角度推定値の演算を可能とするためのクランク角度推定制御を実行する。モータコントローラ12は、最適クランク角度制御を実行する前にクランク角度推定制御を実行し、クランク角度推定制御で得たクランク角度推定値を用いて最適クランク角度制御を行う。
【００１６】
図６は、実施形態１のクランク角度推定制御を示すブロック線図である。
モータコントローラ12は、クランク角度の推定に必要な回転角度指令値として、モータ5にかかる圧縮反力が少なくとも１回以上のピーク値を生じるよう、エンジン1の諸元（燃焼行程と気筒数）から得られる圧縮反力周期θcycの２倍となる回転角度指令値θm*を演算する。
加え合わせ点20は、θm*とモータ回転角度θmとの差を演算する。
ゲインブロック21は、加え合わせ点20の出力に所定のゲインaを乗じてモータ回転速度指令値ωm*を演算する。
加え合わせ点22は、ωm*とモータ回転速度ωmとの差を演算する。
乗算器23は、加え合わせ点22の出力に所定のゲインbを乗じてモータトルク目標値Ttgt*を演算する。
加え合わせ点（モータトルク指令値演算部）24は、Ttgt*と外乱トルク推定値Trbstとの差であるモータトルク指令値Tm*を演算する。
【００１７】
加え合わせ点（モータトルク補償部）32は、Ttgt*に後述するフィードフォワード（以下、FF）補償値Tffを加えて最終モータトルク指令値Tfin*を演算する。
実プラントブロック25は、制御対象（モータ5）としての実プラントを代替的に表す。実プラントブロック25は、Tfin*に伝達関数Gp'(s)を乗じてωmを演算する。
積分ブロック26は、ωmを積分してモータ回転角度θmを演算する。
フィルタブロック27は、ローパスフィルタとしての機能を有し、Tfin*に伝達関数H(s)を乗じて規範モータトルクTrefを演算する。
フィルタブロック28は、フィルタとして機能し、ωmに伝達関数H(s)/Gp(s)を乗じてモータ印加トルク推定値Tactを演算する。Gp(s)は制御対象へのトルク入力とモータ回転速度との伝達関数のモデルである。つまり、伝達関数H(s)/Gp(s)は、伝達関数H(s)と、制御対象へのトルク入力とモータ回転速度との伝達関数Gp(s)の逆モデル1/Gp(s)との積である。なお、H(s)/Gp(s)はプロパーな伝達関数である。つまり、H(s)/Gp(s)を表す分数関数において、分子次数は分母次数よりも低い。
加え合わせ点29は、TactとTrefとの差であるTrbstを演算する。Trbstは、圧縮反力推定値Tcとしてクランク角度推定部18に入力される。フィルタブロック27,28および加え合わせ点29は、外乱トルク推定部である。
【００１８】
フィルタブロック30は、トルクリップルの周波数帯域を阻止帯域とするノッチフィルタ（阻止帯域が狭いバンドエリミネーションフィルタ）として機能し、加え合わせ点29により演算された外乱トルク推定値Trbstに伝達関数Gn(s)を乗じることにより、Trbstからトルクリップル成分のみを除去する。下式(1)はGn(s)の一例である。実際の演算はタスティン近似等で離散化して得られた漸化式を用いる。
【数１】
2019077282.tif 000003
なお、ωnはノッチフィルタの特性を決める周波数、ζnはノッチフィルタの特性を決める減衰係数であり、トルクリップルのみが除去されるように設定する。実際にはモータ回転速度ωmに応じてωn,ζnを変化させる。
【００１９】
フィルタブロック31は、計測ノイズが持つ高周波成分を除去するローパスフィルタとして機能し、フィルタブロック30の出力に伝達関数Hlpf(s)を乗じてフィルタブロック30の出力から計測ノイズの高周波成分を除去した圧縮反力推定値Tcを演算する。下式(2)はHlpf(s)の一例である。実際の演算はタスティン近似等で離散化して得られた漸化式を用いる。
【数２】
2019077282.tif 000004
なお、τhはローパスフィルタの特性を決める時定数であり、ノイズの高周波成分のみを除去するように設定する。
フリクション補償値演算ブロック33は、モータ回転速度ωmからフリクションマップを参照してフリクション補償値Tfrcを演算する。フリクションマップは、モータ回転速度に対するエンジンフリクションの特性をマップ化したものであり、あらかじめ実験やシミュレーションにより求められる。
【００２０】
圧縮反力補償値演算ブロック34は、クランク角度推定値θcから圧縮反力推定マップを参照して、圧縮反力補償ベース値Tcompを演算する。圧縮反力推定マップは、エンジン1のクランク角度に対する圧縮反力特性をマップ化したものであり、あらかじめ実験やシミュレーションにより求められる。図７は、初期クランク角度と圧縮反力との関係図である。横軸はクランク角度[deg]、縦軸は反力（推進力）[N・m]である。エンジン1が一定速度で回転中にモータ5にかかる反力ピーク値Tmaxは基本的に一定値であるが、エンジン回転開始直後の初回ピーク値は、エンジン回転開始前の圧縮行程におけるピストンの位置、言い換えれば、初期クランク角度θinitに応じて決まる。例えば、θinitがθ1のような場合、すなわち圧縮行程のピストンが下死点に近い場合には、定速回転中と同様に十分な圧縮工程を経るため、Tmaxは回転中のTmaxと同等となる。これに対し、θinitがθ2、θ3のような場合、すなわち圧縮行程のピストンが上死点に近い場合には、上死点に近いほど圧縮量が少なくなり、結果として反力ピーク値Tmaxも小さな値となる(Tmax1>Tmax2>Tmax3)。圧縮反力補償値演算ブロック34では、圧縮反力推定マップとして、Tmaxが最大となる初期クランク角度に対応する圧縮反力特性を用いてTcompを演算する。
【００２１】
ゲインブロック（圧縮反力推定部）35は、TcompにFF補償ゲインkを乗じて圧縮反力推定値に相当する圧縮反力補償値Tcomp×kを演算する。FF補償ゲインkは、推定した初期クランク角度θinitに応じて可変とする。FF補償ゲインkの演算方法は後述する。
加え合わせ点（補償値演算部）36は、Tcomp×kにTfrcを加えてFF補償値Tffを演算する。
スイッチ37は、加え合わせ点36の出力または0をFF補償値Tffとして出力する。具体的には、スイッチ37は、外乱トルク推定値Trbstが初回最小ピーク値となってから、すなわちクランク角度推定値θcを演算してからクランク角度推定値θcが上死点から所定角度回転してFF補償停止クランク角度θfinに到達するまでの間は、加え合わせ点36の出力をTffとし、それ以外、すなわちθcの演算前およびθcがθfinを超えた後は、0をTffとする。
【００２２】
図８、９および１０は、実施形態１のクランク角度推定制御および最適クランク角度制御の流れを示すフローチャートであり、市街地走行中に信号待ちでアイドルストップした際の、クランク角度推定制御から最適クランク角度制御完了までを示す。
ステップS1では、エンジン1が停止状態であるかを把握するため、車速0[km/h]、かつ、エンジン回転数0[rpm]であるかを検知する。
ステップS2では、モータ5とエンジン1を直結するために第１クラッチ6を締結すると共に、制御中も停止状態を保持するために第２クラッチ7を解放する。
ステップS3では、クランク角度推定に必要な回転角度指令値θm*として、モータ5にかかる圧縮反力が少なくとも２回の最小ピーク値を生じるよう、圧縮反力周期θcycの２倍以上の値（例えば２×θcyc）とする。ここで、回転角度指令値θm*は、ステップ入力による急回転によって車両が振動することを防ぐため、ある一定以上の変化率制限が設定されている。
ステップS4では、モータ回転角度θmがθm*に追従するようクランク角度推定制御（モータ角度制御）を行う。
【００２３】
ステップS5では、クランク角度推定値θcとして、θmをθcycで除した余りの角度を補正前クランク角度推定値θconとして格納する。
ステップS6では、圧縮反力推定値Tcがその前回値Tc_zよりも大きく、かつ、圧縮反力推定値の前々回値Tc_z2がTc_z以上であるかを判定する。YESの場合はステップS7へ進み、NOの場合はステップS4に戻る。上記条件の成立は、Tc_zが圧縮反力波形の最小ピーク値であることを意味する。つまり、このステップでは、圧縮反力の前回値が最小ピーク値であるかを判定している。
ステップS7では、最小ピーク値検出時間t_estに時刻tを格納する。
ステップS8では、Tc_zから図５に示したような特性を持つクランク角度推定マップを参照して圧縮反力最大クランク角度θmaxを算出する。
ステップS9では、θmaxと補正前クランク角度推定値の前回値θcon_zとの偏差をクランク角度推定補正値θoffに格納する。θoffの初期値は0とする。
ステップS10では、クランク角度推定後もモータ角度制御を継続させて、振動抑制に最適な位置へクランク角度を制御するために、θm*を再設定する。具体的には、モータ回転角度の前回値θm_zに対し、上死点到達までに必要な回転角度であるθcycとθmaxとの差分値と、最適クランク角度θidealと、を加えた値を新たなθm*とする。
【００２４】
ステップS11では、最小ピーク値検出時間t_estから初期クランク角度推定マップを参照してクランク角度推定前の初期クランク角度θinitを算出（推定）する。図１１は、初期クランク角度推定マップであり、縦軸はクランク角度推定制御直前の初期クランク角度θinit[deg]、横軸は反力ピーク値検出時間[s]である。初期クランク角度推定マップにおいて、θinitは、t_estが長いほど小さくなる特性を有する。この関係は、あらかじめ実験やシミュレーションにより設計する。例えば、クランク角度推定開始（クランク角度推定制御開始）からクランク角度が初回最小ピーク値に達するまでの時間が短い場合には、クランク角度推定開始からθmax到達までの回転角度量が少ない、すなわち初期クランク角度が上死点に近いことを意味する。逆にクランク角度推定開始からクランク角度が初回最小ピーク値に達するまでの時間が長い場合には、クランク角度推定開始からθmax到達までの回転角度量が多い、すなわち初期クランク角度が下死点に近いことを意味する。
ステップS12では、θinitからFF補償ゲインマップを参照してFF補償ゲインkを算出する。図１２は、FF補償ゲインマップであり、縦軸はFF補償ゲインk[-]、横軸は初期クランク角度[deg]である。FF補償ゲインマップにおいて、FF補償ゲインkはθinitが所定値以下の場合は1.0であり、θinitが所定値を超えると、θinitに反比例する特性を有する。図７で説明したように、θinitとピーク値Tmaxとは相関があり、θinitが下死点に近いほどTmaxは大きくなる。この関係は、あらかじめ実験やシミュレーションにより設計する。このとき、エンジン回転運動によって圧縮反力が生じるのは、圧縮工程におけるインテークバルブが閉じてからとなるため、そのときのクランク角度よりも初期クランク角度が下死点側にある場合をゲイン1.0とし、より上死点側になるほどゲインを小さく設定する。
【００２５】
ステップS13では、θmが新たに設定されたθm*に追従するよう、最適クランク角度制御（モータ角度制御）を行う。
ステップS14では、θconにθoffを加えてクランク角度推定値θcを演算する。
ステップS15では、θcから圧縮反力推定マップを参照して圧縮反力補償ベース値Tcompを算出する。
ステップS16では、モータ回転速度ωmからフリクションマップを参照してフリクション補償値Tfrcを算出する。
ステップS17では、TcompにFF補償ゲインkを乗じた圧縮反力補償値Tcomp×kにTfrcを加算してFF補償値Tffを演算する。
ステップS18では、時刻tが最小ピーク値検出時間t_estに一致しないかを判定する。YESの場合はステップS20へ進み、NOの場合はステップS19へ進む。
ステップS19では、Trbst今回値からTffを減じた値をTrbstとして再設定する。つまり、t=t_estのときは最小ピーク値検出タイミングであるため、Trbstを初期化させる。
【００２６】
ステップS20では、θcが、上死点からのFF補償停止クランク角度θfinを超えたか(θfin≦θc)を判定する。YESの場合はステップS21へ進み、NOの場合はステップS13へ戻る。このステップでは、加え合わせ点32、フリクション補償値演算ブロック33、圧縮反力補償値演算ブロック34およびゲインブロック35から構成されるFF補償器を停止させるか否かを判定している。ただし、ステップS14でθoffの加算によりθfin≦θcが成立する可能性があるため、これを防ぐために、併せてθc<(θfin+α)なる判定も行う。αは任意に設定する値とする。
ステップS21では、ステップS20でFF補償停止判定がなされた後の処理であり、具体的には、TrbstにTffを加えた値をTrbstとして再設定することにより、後述するステップS22によるFF補償停止によるトルク変動を抑制する。つまり、加え合わせ点24、実プラントブロック25、フィルタブロック27、フィルタブロック28および加え合わせ点29から構成されるフィードバック（以下、FB）補償器を初期化する。
ステップS22では、Tffに0を格納する。つまり、FF補償器を停止する。
ステップS23では、FF補償器が停止した後も最適クランク角度制御を継続させる。
ステップS24では、θmがθm*以上であるか、すなわちクランク角度がθidealに到達したか否かを判定する。YESの場合は本制御を終了し、NOの場合はステップS23へ戻る。
【００２７】
図１３は、実施形態１のクランク角度推定作用を示す圧縮反力推定値、モータ回転角度およびクランク角度推定値のタイムチャートである。
時刻t1では、車両停止を検知したため、モータコントローラ12はクランク角度制御を開始し、クランク角度推定部18では、クランク角度の推定を開始する。回転角度指令値θm*としては、モータ5にかかる圧縮反力が少なくとも１回以上の最小ピーク値を生じるよう、圧縮反力周期θcycの２倍以上の値（例えば2×θcyc）とする。またθm*にはステップ入力による急回転によって車両が振動するのを抑制するために、ある一定以上の変化率制限をかける。圧縮反力推定値Tcは最小ピーク値に達していないため、クランク角度推定補正値θoffは0である。よって、クランク角度推定値θcは、補正前クランク角度推定値θcon、すなわちモータ回転角度θmをθcycで除した余りの角度となる。
【００２８】
時刻t2では、圧縮反力推定値Tcが最小ピーク値に到達したとの判定により、あらかじめ実験やシミュレーションにより得られたクランク角度推定マップを参照し、最小ピーク値（Tcの前回値Tc_z）に応じた圧縮反力最大クランク角度θmaxを格納し、θoffはθmaxと補正前クランク角度推定値の前回値θcon_zとの偏差となる。これにより、時刻t2以降では、θconとクランク角度真値とのずれが補正された、高精度のクランク角度推定値θcが得られる。また、引き続きエンジン始動時の振動抑制に最適な位置へクランク角を制御するため、θm*を再設定する。具体的には、θm*を、最小ピーク値を検知したとき（時刻t2）のモータ回転角度の前回値θm_zに対し、上死点到達までに必要な回転角度であるθcycとθmaxとの差分値と、最適クランク角度θidealと、を加えた値とする。
時刻t3では、θmがθm*に到達、すなわちクランク角度が最適クランク角度θidealに一致したため、最適クランク角度制御を終了する。
【００２９】
従来の最適クランク角度制御では、モータコントローラは、クランク角度センサで計測されたクランク角度情報に基づきモータ回転角度を制御している。このため、クランク角度センサの故障や通信異常によってクランク角度情報が得られない場合は、最適クランク角度制御を実行できない。よって、モータコントローラでクランク角度を精度よく推定して欲しいとのニーズがあった。
これに対し、実施形態１では、モータ5によりエンジン1を連れ回したときの外乱トルク推定値Trbstを、モータ5に作用するエンジン1の圧縮反力とみなし、Trbst、モータ回転角度θmおよびクランク角度に対するエンジン圧縮反力特性に基づいてクランク角度推定値θcを演算する。Trbstを圧縮反力とみなすことにより、圧縮反力が最小ピーク値となるときのモータ回転角度θm（実際はθmを圧縮反力の周期θcycで除した余りの角度）が判るため、モータ回転角度θmとクランク角度との対応付けが可能となる。θmとクランク角度との対応付けができれば、逐次検出されるθmからクランク角度を推定できる。一般的に、モータの回転角度を検出するレゾルバは、クランク角度センサよりも高い分解能を持つ。よって、θmからクランク角度を推定することにより、クランク角度情報を持たないモータコントローラ12において、クランク角度を精度よく推定できる。この結果、最適クランク角度制御の制御精度が向上するため、エンジン始動時のフロア振動を低減できる。
【００３０】
図１４は、実施形態１のFF補償作用を示す最終モータトルク指令値、モータ回転速度およびモータ回転角度のタイムチャートである。各時刻t1,t2,t3およびその間の区間におけるクランク角度推定制御および最適クランク角度制御の動作は、図１３と同じである。図１４では、上段に実施形態１（FF補償有り）、下段に比較例（FF補償無し）を示している。まず、比較例を見ると、時刻t2以降はモータ5にかかる圧縮反力が急激に小さくなるにもかかわらず、加え合わせ点24、実プラントブロック25、フィルタブロック27、フィルタブロック28および加え合わせ点29から構成されるFB補償器の遅れにより、最終モータトルク指令値Tfin*は増加を続けた後に減少に転じる。この遅れ分によって、圧縮反力を適宜補正できない結果、モータ回転速度ωmが急上昇後に急降下し、モータ回転速度θmも回転角度指令値θm*をオーバーシュートする。この際のモータ5の急回転により、フロア振動が発生するため、乗員に違和感を与えてしまう。つまり、比較例では、上死点通過（時刻t2-1）前後における圧縮反力の急変動に対し、FB制御の遅れにより十分な補償ができず、モータ5が急回転するため、フロア振動が発生する。
【００３１】
一方、実施形態１では、クランク角度推定値θcが得られる時刻t2から、加え合わせ点32、フリクション補償値演算ブロック33、圧縮反力補償値演算ブロック34、ゲインブロック35および加え合わせ点36から構成されるFF補償器が作動する。フリクション補償値演算ブロック33は、モータ回転速度ωmからフリクションマップを参照してフリクション補償値Tfrcを演算する。圧縮反力補償値演算ブロック34は、クランク角度推定値θcから圧縮反力推定マップを参照して圧縮反力補償ベース値Tcompを演算する。ゲインブロック35は、TcompにFF補償ゲインkを乗じて圧縮反力補償値Tcomp×kを演算する。加え合わせ点36は、Tcomp×kにTfrcを加算してFF補償値Tffを演算する。加え合わせ点32は、モータトルク目標値Ttgt*にTffを加えて最終モータトルク指令値Tfin*を演算する。つまり、実施形態１では、クランク角度推定値θcから圧縮反力（圧縮反力補償値Tcomp×k）を推定し、推定した圧縮反力に応じたFF補償値Tffによりモータトルク指令値Tm*をFF補償する。これにより、上死点通過後前後における圧縮反力の急変動に対して遅れなくTm*を補償できるため、モータ回転速度ωmの急変動が抑えられる。よって、モータ回転角度θmがオーバーシュートすることなく回転角度指令値θm*に追従するため、フロア振動を抑制できる。この結果、乗員に違和感を与えることなく最適クランク角度制御を実行できる。
【００３２】
図１５は、実施形態１のFF補償作用を示す最終モータトルク指令値、FF補償値、外乱トルク推定値およびクランク角度推定値のタイムチャートである。各時刻t1,t2,t3およびその間の区間におけるクランク角度推定制御および最適クランク角度制御の動作は、図１３と同じである。クランク角度推定制御開始前の初期クランク角度θinit1は、下死点に近いものとする。
時刻t1〜t2の区間、すなわちクランク角度推定制御の実行中は、クランク角度が不明であるため、FF補償器は使用できず(Tff=0)、主に外乱トルク推定値Trbstによって外乱である圧縮反力の変動を補償している。
時刻t2では、最小ピーク値の検出によりクランク角度推定値θcが演算されるため、θcに基づいて圧縮反力を推定でき、FF補償器が使用可能となる。このとき、これまでTff=0であったFF補償器がある一定の初期値を持つようになるため、遅れを持つTrbstをそのまま使用した場合、過補償となって最終モータトルク指令値Tfin*が急変し、結果としてモータ5が急回転してしまう。そこで、実施形態１では、FF補償の開始時においてTfin*を滑らかに繋ぐ（段差を無くす）ために、時刻t2において、TrbstからTff分を減じる。
時刻t2-2では、θcがFF補償停止クランク角度θfinに達するため、FF補償を終了する。実施形態１では、FF補償の終了時においてTfin*を滑らかに繋ぐために、時刻t2-2において、TrbstにTff分を加算する。
【００３３】
図１６は、実施形態１のFF補償作用を示す最終モータトルク指令値、FF補償値、外乱トルク推定値およびクランク角度推定値のタイムチャートである。クランク角度推定制御開始前の初期クランク角度θinit2は、図１５のθinit1よりも上死点側にあるものとする。また、回転角度指令値θm*は図１５と同一とする。
時刻t1-2では、最小ピーク値の検出によりクランク角度推定値θcが演算される。初期クランク角度θinit2は図１５のθinit1よりも上死点側に近いため、時刻t1-2は図１５の時刻t2よりも先に訪れる。ここで、時刻t1-2と時刻t2におけるクランク角度は共にθmaxで同一であり、かつ、回転角度指令値θm*は同一であるため、クランク角度推定開始から最小ピーク値判定までの時間が短いということは、θinit2がθinit1よりも上死点側にあったことが推定できる。このことから、図１５の場合よりもシリンダ内部の空気量が少ない状態であったことが推定でき、FF補償として用いる圧縮反力推定値をより小さく設定することが最適であると判断できる。すなわち、FF補償値Tffの出力演算時に用いる圧縮反力補償ベース値Tcompに乗じるFF補償ゲインkを、図１５のkよりも小さな値に設定する。これにより、FF補償量が実際の外乱に対して最適化されるため、モータ5の急回転を抑制できる。この結果、最適クランク角度制御中のフロア振動を抑制できる。
【００３４】
実施形態１では、以下の効果を奏する。
(1) モータ5およびエンジン1を動力源とするハイブリッド車両のクランク角度制御方法であって、モータ5を駆動して停止状態のエンジン1を連れ回したときのモータ回転角度θmを検出すると共に、モータ5に作用する外乱トルク推定値Trbstを演算し、外乱トルク推定値Trbstが初回の最小ピーク値（極値）のときのモータ回転角度θmと、エンジン1のクランク角度と圧縮反力との関係と、に基づき、モータ回転角度θmからクランク角度推定値θcを演算し、クランク角度推定値θcに基づき、エンジン1のクランク角度を所定の最適クランク角度θidealに停止させるモータトルク指令値Tm*を演算し、モータトルク指令値Tm*に応じてモータトルクを制御する際、クランク角度推定値θcと、エンジン1のクランク角度と圧縮反力との関係、とに基づきエンジン1の圧縮反力補償値Tcomp×kを演算し、圧縮反力補償値Tcomp×kに応じたFF補償値Tffによりモータトルク指令値Tm*をFF補償する。
モータ5に作用する外乱トルク推定値Trbstをモータ5に作用するエンジン1の圧縮反力とみなすことにより、クランク角度情報を持たないモータコントローラ12において、クランク角度を精度よく推定できる。この結果、最適クランク角度制御の制御精度が向上するため、エンジン始動時のフロア振動を低減できる。
また、圧縮反力の急変動に対して遅れなくモータトルク指令値Tm*を補償できるため、モータ回転速度ωmの急変動が抑えられる。これにより、モータ回転角度θmがオーバーシュートすることなく回転角度指令値θm*に追従するため、フロア振動を抑制できる。この結果、乗員に違和感を与えることなく最適クランク角度制御を実行できる。
【００３５】
(2) FF補償は、外乱トルク推定値Trbstが初回の最小ピーク値となったとき開始し、クランク角度推定値θcがFF補償停止クランク角度θfinに到達したとき終了する。
クランク角度推定値θcがFF補償停止クランク角度θfinを超えた後もFF補償を継続した場合、最適クランク角度制御終了に伴いエンジン1が停止した後、シリンダ内部から空気が抜けて圧力が低下するにもかかわらず、ある一定のFF補償値Tffが出力されるため、その分の誤差が生じてしまう。よって、クランク角度推定値θcがFF補償停止クランク角度θfinに達したときFF補償を終了することにより、クランク角度が最適クランク角度θidealからずれるのを抑制できる。
【００３６】
(3) FF補償の開始時には外乱トルク推定値TrbstからFF補償値Tffを減じ、FF補償の終了時には外乱トルク推定値TrbstにFF補償値Tffを加える。
これにより、FF補償の開始および終了時における最終モータトルク指令値Tfin*が滑らかに繋がるため、トルク飛びを抑制できる。
【００３７】
(4) 停止状態のときのクランク角度である初期クランク角度θinitを推定し、初期クランク角度θinitが上死点に近いほど、圧縮反力補償値Tcomp×kを小さくする。
クランク角度推定制御前の初期クランク角度θinitに応じてピストン位置は異なるため、クランク角度推定制御前のシリンダ内部空気量、すなわち圧縮される空気量は異なり、より下死点側であるほど空気量は多い。よって、初期クランク角度θinitが上死点に近いほど圧縮反力補償値Tcomp×kを小さくすることにより、エンジン1の圧縮反力に伴うクランク角度と最適クランク角度θidealとの誤差を補償するための最適なFF補償値Tffを出力できる。
【００３８】
(5) クランク角度推定値θcからエンジン1のクランク角度に対する圧縮反力のベース特性を参照して得られた圧縮反力補償ベース値TcompにFF補償ゲインkを乗じて圧縮反力補償値Tcomp×kを演算し、ベース特性は、初期クランク角度θinitを異ならせてエンジン1を連れ回したとき、初回の最小ピーク値が最大となる初期クランク角度θinitに対応するクランク角度に対する圧縮反力の特性であり、FF補償ゲインkは、モータ5によるエンジン1の連れ回り開始から外乱トルク推定値Trbstが初回の最小ピーク値となるまでの時間が短いほど小さくする。
クランク角度推定制御開始（モータ5によるエンジン1の連れ回り開始）から外乱トルク推定値Trbstが初回の最小ピーク値となるまでの時間が短いほど、クランク角度推定制御開始時からのクランク角度変化量は少なくなる。よって、当該時間が短いほどFF補償ゲインkを小さくすることにより、圧縮反力補償値Tcomp×kを最適化できる。
【００３９】
(6) モータ5およびエンジン1を動力源とするハイブリッド車両のクランク角度制御装置であって、モータ5を駆動して停止状態のエンジン1を連れ回したときのモータ回転角度θmを検出するレゾルバ14と、モータ5の外乱トルク推定値Trbstを演算する外乱トルク推定部（フィルタブロック27,28、加え合わせ点29）と、外乱トルク推定値Trbstが初回の最小ピーク値のときのモータ回転角度θmと、エンジン1のクランク角度と圧縮反力との関係と、に基づき、モータ回転角度θmからクランク角度推定値θcを演算するクランク角度推定部18と、クランク角度推定値θcに基づき、エンジン1のクランク角度を所定の最適クランク角度θidealに停止させるモータトルク指令値Tm*を演算する加え合わせ点24と、クランク角度推定値θcと、エンジン1のクランク角度と圧縮反力との関係、とに基づき圧縮反力補償値Tcomp×kを演算するゲインブロック35と、圧縮反力補償値Tcomp×kに応じたFF補償値Tffを演算する加え合わせ点36と、FF補償値Tffに基づき、モータトルク指令値Tm*を補償する加え合わせ点32と、補償された最終モータトルク指令値Tfin*に応じてモータトルクを制御するモータ電流制御部17と、を備える。
モータ5に作用する外乱トルク推定値Trbstをモータ5に作用するエンジン1の圧縮反力とみなすことにより、クランク角度情報を持たないモータコントローラ12において、クランク角度を精度よく推定できる。この結果、最適クランク角度制御の制御精度が向上するため、エンジン始動時のフロア振動を低減できる。
また、圧縮反力の急変動に対して遅れなくモータトルク指令値Tm*を補償できるため、モータ回転速度ωmの急変動が抑えられる。これにより、モータ回転角度θmがオーバーシュートすることなく回転角度指令値θm*に追従するため、フロア振動を抑制できる。この結果、乗員に違和感を与えることなく最適クランク角度制御を実行できる。
【００４０】
（他の実施形態）
以上、本発明を実施するための形態を説明したが、本発明の具体的な構成は、実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。
例えば、実施形態１では、圧縮反力補償値Tcomp×kにフリクション補償値Tfrcを加えたものをFF補償値Tffとしたが、Tcomp×kをTffとしてもよい。
図９のS11,S12の処理は、S8〜S10よりも先、またはS8〜S10と同時に行ってもよい。
【符号の説明】
【００４１】
1  エンジン（動力源）
5  モータジェネレータ（動力源）
12  モータコントローラ
14  レゾルバ（モータ回転角度検出部）
17  モータ電流制御部（モータ制御部）
18  クランク角度推定部
24  加え合わせ点（モータトルク指令値演算部）
27  フィルタブロック（外乱トルク推定部）
28  フィルタブロック（外乱トルク推定部）
29  加え合わせ点（外乱トルク推定部）
32  加え合わせ点（モータトルク補償部）
34  圧縮反力補償値演算ブロック
35  ゲインブロック（圧縮反力推定部）
36  加え合わせ点（補償値演算部）
【図１】
2019077282.tif 000005
【図２】
2019077282.tif 000006
【図３】
2019077282.tif 000007
【図４】
2019077282.tif 000008
【図５】
2019077282.tif 000009
【図６】
2019077282.tif 000010
【図７】
2019077282.tif 000011
【図８】
2019077282.tif 000012
【図９】
2019077282.tif 000013
【図１０】
2019077282.tif 000014
【図１１】
2019077282.tif 000015
【図１２】
2019077282.tif 000016
【図１３】
2019077282.tif 000017
【図１４】
2019077282.tif 000018
【図１５】
2019077282.tif 000019
【図１６】
2019077282.tif 000020