"エンジン出力を無段階に変速して車輪に伝達するベルト式無段変速機の制御装置であって、車速および加速指示情報に基づいて目標変速比および目標変速比変化速度を求め、変速機入力トルクおよび変速比に応じてベルトスリップを発生させずに動力伝達を行わせるために必要な従動側プーリ必要軸推力を求め、前記従動側プーリ必要軸推力を従動側プーリ目標軸推力として設定し、前記従動側プーリ目標軸推力を用いて変速比を前記目標変速比まで前記目標変速比変化速度で変化させるために前記駆動側プーリに必要とされる軸推力を駆動側プーリ目標軸推力として設定し、前記従動側プーリ目標軸推力及び駆動側プーリ目標軸推力に応じて設定される目標供給油圧に基づいて変速制御を行うベルト式無段変速機の制御装置において、油圧センサによる油圧検出値に基づいて油圧脈動の振幅と周期を検出し、検出した周期中の最大振幅に基づいて油圧補正量を求め、該油圧補正量により前記目標供給油圧を増加するよう補正する補正手段を具備することを特徴とするベルト式無段変速機の制御装置。前記補正手段は、前記油圧脈動に含まれる第1の脈動周期を検出し、該第1の脈動周期に対応する油圧脈動のバイアス成分を検出し、該バイアス成分の変動から前記第1の脈動周期よりも長い第2の脈動周期の有無を検出する手段を含み、前記油圧脈動に含まれる複数の周波数成分に対応する脈動周期を短い周期から長い周期へと順次階層的に検出することにより、より長い脈動周期中の最大振幅に基づいて前記油圧補正量を求めることを特徴とする請求項1に記載のベルト式無段変速機の制御装置。ベルト式無段変速機CVTのベルト側圧クランプ圧はベルトスリップ防止のために必要最低圧以上の油圧を必ず出力する必要があるため、脈動、環境変化、経年劣化、物バラツキ個別CVT製品毎のバラツキ等種々の要素による油圧低下を見込んで、余剰圧を設定する必要があった。油圧センサを採用することにより、環境変化や経年劣化による油圧低下を検知し、余剰圧を定常的に低くする技術が開発されてきているが、瞬間的な油圧低下や脈動の発生に対応するために、余剰圧を或る程度確保しておく必要があった。しかし、余剰圧を余分に確保しておくことは、燃費を低下させるのみならず、ベルト耐久性も低下させるおそれがあるので、改善が望まれる。本発明は上述の点に鑑みてなされたもので、定常的に必要とされる余剰圧を必要最低限に低減し得るように、該余剰圧を油圧脈動に対して適切に補正できるようにしたベルト式無段変速機の制御装置を提供しようとするものである。本発明は、エンジン出力を無段階に変速して車輪に伝達するベルト式無段変速機の制御装置であって、車速および加速指示情報に基づいて目標変速比itgtおよび目標変速比変化速度ditgtを求め、変速機入力トルクTinおよび変速比iに応じてベルトスリップを発生させずに動力伝達を行わせるために必要な従動側プーリ必要軸推力Qdnnecを求め、前記従動側プーリ必要軸推力Qdnnecを従動側プーリ目標軸推力Qdncmdとして設定し、前記従動側プーリ目標軸推力Qdncmdを用いて変速比を前記目標変速比itgtまで前記目標変速比変化速度ditgtで変化させるために前記駆動側プーリに必要とされる軸推力を駆動側プーリ目標軸推力Qdrcmdとして設定し、前記従動側プーリ目標軸推力Qdncmd及び駆動側プーリ目標軸推力Qdrcmdに応じて設定される目標供給油圧Pdrsup,Pdnsupに基づいて変速制御を行うベルト式無段変速機の制御装置50であることを前提としており、そのようなベルト式無段変速機の制御装置50において、油圧センサ35による油圧検出値に基づいて油圧脈動の振幅と周期を検出し、検出した周期中の最大振幅に基づいて油圧補正量を求め、該油圧補正量により前記目標供給油圧を増加するよう補正する補正手段B5を具備したことを特徴としている。本発明によれば、油圧脈動の振幅と周期を検出し、検出した周期中の最大振幅に基づいて油圧補正量を求め、該油圧補正量により前記目標供給油圧を増加するよう補正するので、適切な脈動油圧補正が可能となり、脈動が発生していないときには余剰圧を低減するすることができ、燃費向上及びベルト耐久性の向上を期待することができる。また、油圧脈動発生時には適切な余剰圧を確保するよう補正することができるので、ベルトスリップを防止し、タフネスを向上させることができ、また、過剰油圧の防止によるベルト負荷軽減が可能となる。好ましくは、前記補正手段B5は、前記油圧脈動に含まれる第1の脈動周期を検出し、該第1の脈動周期に対応する油圧脈動のバイアス成分を検出し、該バイアス成分の変動から前記第1の脈動周期よりも長い第2の脈動周期の有無を検出する手段を含み、前記油圧脈動に含まれる複数の周波数成分に対応する脈動周期を短い周期から長い周期へと順次階層的に検出することにより、より長い脈動周期中の最大振幅に基づいて前記油圧補正量を求めるものとする。これにより、複合的な周波数成分の混じった脈動の周期的特性を有効に検出でき、かつ、より長い脈動周期中の最大振幅に基づいて脈動油圧補正を行うので、脈動中に安定した油圧補正を実施することが可能となる。以下、本発明の一実施例を添付図面を参照して詳細に説明する。図1は、本発明に従う制御が行われるベルト式無段変速機の構成を示している。なお、ベルト式無段変速機それ自体は前記特許文献1等で公知の装置を用いてよい。ベルト式無段変速機CVTは、入力軸1とカウンター軸2との間に配設された金属Vベルト機構10と、入力軸1と駆動側可動プーリ11との間に配設された遊星歯車式前後進切換機構20と、カウンター軸2と出力部材ディファレンシャル機構8などとの間に配設されたメインクラッチ5とから構成される。なお、本無段変速機CVTは車両用として用いられ、入力軸1はカップリング機構CPを介してエンジンENGの出力軸に繋がり、ディファレンシャル機構8に伝達された動力は左右の車輪に伝達される。金属Vベルト機構10は、入力軸1上に配設された駆動側プーリ11と、カウンター軸2上に配設された従動側プーリ16と、両プーリ11,16間に巻き掛けられた金属Vベルト15とからなる。駆動側プーリ11は、入力軸1上に回転自在に配設された固定プーリ半体12と、この固定プーリ半体12に対して軸方向に相対移動可能な可動プーリ半体13とからなる。可動プーリ半体13の側方には、固定プーリ半体12に結合されたシリンダ壁12aにより囲まれて駆動側シリンダ室14が形成されており、駆動側シリンダ室14内に供給される油圧Pdrにより、可動プーリ半体13を軸方向に移動させる側圧、すなわち、駆動側プーリの軸推力Qdrが発生される。従動側プーリ16は、カウンター軸2に固設された固定プーリ半体17と、この固定プーリ半体17に対して軸方向に相対移動可能な可動プーリ半体18とからなる。可動プーリ半体18の側方には、固定プーリ半体17に結合されたシリンダ壁17aにより囲まれて従動側シリンダ室19が形成されており、従動側シリンダ室19内に供給される油圧Pdnにより、可動プーリ半体18を軸方向に移動させる側圧、すなわち、従動側プーリの軸推力Qdnが発生される。このため、上記両シリンダ室14,19への供給油圧Pdr,Pdnを適宜制御することにより、ベルト15の滑りを発生することのない適切なプーリ側圧を設定するとともに両プーリ11,16のプーリ幅を変化させることができ、これにより、Vベルト15の巻掛け半径を変化させて変速比を無段階に変化させることができる。遊星歯車式前後進切換機構20はダブルピニオンタイプのプラネタリギヤ列を有し、そのサンギヤ21は入力軸1に結合され、キャリア22は固定プーリ半体12に結合され、リングギヤ23は後進ブレーキ27により固定保持可能である。また、サンギヤ21とリングギヤ23とを連結可能な前進クラッチ25を有し、この前進クラッチ25が係合されると全ギヤ21,22,23が入力軸1と一体に回転し、駆動側プーリ11は入力軸1と同方向前進方向に駆動される。一方、後進ブレーキ27が係合されると、リングギヤ23が固定保持されるため、キャリア22はサンギヤ21とは逆の方向に駆動され、駆動側プーリ11は入力軸1とは逆方向後進方向に駆動される。メインクラッチ5は、カウンター軸2と出力側部材との間の動力伝達を制御するクラッチであり、係合時には両者間での動力伝達が可能となるとともに、係合力を制御することにより入力側と出力側との間のトルクの伝達容量トルク容量も制御できる。このため、メインクラッチ5が係合の時には、金属Vベルト機構10により変速されたエンジン出力がギヤ6a,6b,7a,7bを介してディファレンシャル機構8に伝達され、このディファレンシャル機構8により左右の車輪図示せずに分割されて伝達される。また、メインクラッチ5が解放されたときには、この動力伝達が行えず、変速機は中立状態となる。上記のようなベルト式無段変速機CVT用の制御装置においては、駆動側および従動側シリンダ室14,19の供給油圧Pdr,Pdnを制御して駆動側および従動側プーリの軸推力Qdr,Qdnを制御し、ベルトスリップを発生させることなく必要最小限の軸推力を設定しつつ、適切な変速制御を行わせるようにしている。この制御は、種々の運転条件を検出し、この検出運転条件に基づいて行われる。このため、制御装置50は、図2に示すように、変速機入力トルクエンジンEから入力軸1に入力されるトルクTinを検出する入力トルク検出器31と、ベルト機構10における変速比iを検出する変速比検出器32と、車速Vを検出する車速センサ33と、エンジンスロットル開度thすなわち加速指示情報を検出するスロットル開度センサ34とを備える。なお、入力トルク検出器31は入力トルクを直接検出するものでも良いが、エンジンの吸気負圧と回転数からエンジン出力トルクを算出して変速機入力トルクを求めるものでも良い。また、変速比検出器32は可動プーリ半体の軸方向位置から変速比を直接検出しても良いが、駆動側プーリの回転数と従動側プーリの回転数とを検出して、これら回転数の比から変速比を求めても良い。また、スロットル開度センサ34に代えてアクセル開度を検出するアクセル開度センサを用いてもよい。これらによる検出信号は、制御装置50に入力されて演算処理が行われ、駆動側および従動側シリンダ室14,19に供給する油圧を制御する変速制御バルブの作動制御信号が出力される。この変速制御バルブは、例えば、リニアソレノイドバルブであり、制御装置50からの作動制御信号を受けてその作動が制御され、駆動側および従動側シリンダ室14,19の油圧制御がなされる。この制御装置50における演算処理について以下に説明する。入力トルク検出器31により検出された変速機入力トルクTin信号および変速比検出器32により検出された変速比i信号はプーリ必要軸推力算出部B1に入力される。ここでは、入力トルクTinと変速比iに応じて、ベルトスリップを発生させない範囲での必要最小限の軸推力として、駆動側プーリ必要軸推力Qdrnecと従動側プーリ必要軸推力Qdnnecとを求める。一方、これと並行して、車速センサ33により検出された車速V信号およびエンジンスロットル開度センサ34により検出されたエンジンスロットル開度th信号は、目標変速比算出部B2に入力される。ここでは、車速Vとスロットル開度thとに応じて目標変速比itgtが求められ、さらに、この目標変速比itgtの時間変化量として目標変速比変化速度ditgtが求められる。そして、入力トルク検出器31により検出された変速機入力トルクTin信号および変速比検出器32により検出された変速比i信号と、プーリ必要軸推力算出部B1において求められた駆動側プーリ必要軸推力Qdrnecおよび従動側プーリ必要軸推力Qdnnec信号と、目標変速比算出部B2において求められた目標変速比itgtおよび目標変速比変化速度ditgt信号とが、変速比制御部B3に入力される。変速比制御部B3においては、これら入力信号に基づいて、現在の変速比を目標変速比itgtまで目標変速比変化速度ditgtで変化させるに必要な駆動側および従動側プーリの目標軸推力Qdrcmd,Qdncmdを決定する。このように決定された目標軸推力Qdrcmd,Qdncmd信号は、プーリ供給油圧算出部B4に入力され、ここで、この目標軸推力を得るために必要な駆動側および従動側シリンダ室14,19の目標供給油圧Pdrsup,Pdnsupを求める。具体的には、目標軸推力Qdrcmd,Qdncmdをシリンダ室14,19の受圧面積で割ってシリンダ室に必要な油圧を求め、これを油圧変動要素で補正して目標供給油圧Pdrsup,Pdnsupが求められる。このようにして求められた駆動側および従動側の目標供給油圧Pdrsup,Pdnsup信号は、補正部B5を経由して、電流変換部B6に入力され、ここで、駆動側および従動側シリンダ室14,19に供給する油圧を制御する変速制御バルブの作動制御電流信号が求められる。この変速制御バルブは、例えば、リニアソレノイドバルブであり、電流変換部B6において求められた制御電流により作動が制御され、駆動側および従動側シリンダ室14,19の油圧を目標供給油圧Pdrsup,Pdnsupに従って制御する。なお、制御装置50において、電流変換部B6以外の部分は、車両用電子制御装置が具備するコンピュータによって実装される。目標供給油圧Pdrsup,Pdnsupを算出するための構成は、上記例に限らず、どのような構成を採用してもよい。本発明においては、補正部B5を設け、以下述べるように、余剰圧を油圧脈動を考慮して適切に補正しうるようにしたことを特徴としている。図3は、補正部B5が実行する油圧脈動補正処理の動作概念を説明するタイムチャートである。図3において、PDNCMDは油圧指令値従動側プーリー16の目標供給油圧Pdnsupであり、PDNは油圧センサ35によって検出される従動側プーリー16の油圧検出値実油圧の一例を示す。油圧センサ35は例えば従動側シリンダ室19の油圧を検出するように設けられている。図3では、PDN実油圧が脈動している例を示している。本発明では、油圧センサ35の出力に基づき、脈動を常時監視し、検出した脈動の周期及び振幅を算出する。そして、所定の脈動許容幅を越える振幅の油圧脈動が発生したと判断すると、脈動振幅の最低値が所定の必要最低油圧を確保できるように、油圧指令値目標供給油圧を補正する。すなわち、検出した脈動に応じて油圧補正量を求め、この油圧補正量に応じて油圧指令値目標供給油圧を増加する。図3において太線が脈動補正後のPDN実油圧を示す。増加された油圧指令値目標供給油圧に応じて油圧が増加されるので、PDN実油圧が増加することになる。なお、余剰圧PMADNは、PDN実油圧とPDNCMD油圧指令値との差であり、PMADN=PDN実油圧-PDNCMD油圧指令値の演算により、従動側プーリー16の余剰圧PMADNが常に算出される。図3に示すように、脈動が発生したときに、それに応じて油圧指令値を増加することにより、必要最小限の余剰圧PMADNが確保されるように、適切に制御することが可能となる。補正部B5は、主に脈動検知機能と油圧補正機能の2種類の機能をもっている。補正部B5が持つ脈動検知機能にあっては、複合的な周波数成分を含む油圧脈動を検知しうるように構成されている。本実施例で提案する複合的な周波数成分を含む油圧脈動の脈動検知手法を概略的に説明すると、次の通りである。基本的な脈動検知単位は、油圧脈動に含まれる第1の脈動周期を検出し、該第1の脈動周期に対応する油圧脈動のバイアス成分振れの中心に相当する油圧値を検出し、該バイアス成分の変動から前記第1の脈動周期よりも長い第2の脈動周期の有無を検出する手段からなる。このような脈動検知単位を用いて、油圧脈動に含まれる複数の周波数成分に対応する脈動周期を、より短い周期からより長い周期へと順次階層的に検出することにより、より長い最終の脈動周期を特定する。そして、補正部B5が持つ油圧補正機能にあっては、このようにして特定された脈動周期中の最大振幅に基づいて油圧補正量を求め、該油圧補正量により前記目標供給油圧を増加するよう補正する。図4は、複合的な周波数成分を含む油圧脈動の一例を示している。この図を参照して、本実施例に従う脈動検知手法の概略を説明する。[第1脈動周期の判断]油圧脈動における最も短い周期を第1脈動周期として検出する。実油圧PDNに基づいて算出した余剰圧PMADNの変化から、上向きのピーク正ピーク:これを記号PMAMAX1を用いて表すと、下向きのピーク負ピーク:これを記号PMAMIN1を用いて表すを検出し、両者の平均値中央値をPMAMAX1PMAMIN1/2の演算式で求める。このようにして求めた平均値は、第1脈動周期に対応する油圧脈動のバイアス成分振れの中心に相当する油圧値に相当する。図4では、丸印でマークした点が第1脈動周期のバイアス成分すなわちピーク間平均値PMAAVE1に相当する点である。また、ピーク間の時間差例えば隣接する負ピークPMAMIN1間の時間差を第1脈動周期の周期として検出算出する。次に、以上のようにして第1脈動周期の各周期毎に求めた第1脈動周期に対応する油圧脈動のバイアス成分振れの中心に相当する油圧値:すなわち、丸印でマークしたPMAAVE1の変動の有無を判定し、変動していれば、第1脈動周期よりも長い第2脈動周期が存在すると判定する。[第2脈動周期の判断]第2脈動周期が存在することが検出されたならば、第1脈動周期のバイアス成分PMAAVE1の傾きが負から正に反転するポイントを第2脈動周期の負のピークとして検出し、該検出した第2脈動周期の負のピーク間の時間差を第2脈動周期の周期として検出算出する。そして、この第2脈動周期の1周期中における余剰圧PMADNの正ピークPMAMAX1の最大値を判定し、これを第2脈動周期の最大正ピークPMAMAX2として検出する。また、第2脈動周期の1周期中における余剰圧PMADNの負ピークPMAMIN1の最小値を判定し、これを第2脈動周期の最小負ピークPMAMIN2として検出する。それから、こうして検出した第2脈動周期の1周期中の最大正ピークPMAMAX2と最小負ピークPMAMIN2の平均値中央値をPMAMAX2PMAMIN2/2の演算式で求める。このようにして求めた平均値は、第2脈動周期に対応する油圧脈動のバイアス成分振れの中心に相当する油圧値に相当する。図4では、二重丸印でマークした点が第2脈動周期のバイアス成分すなわちピーク間平均値PMAAVE2に相当する点である。次に、以上のようにして第2脈動周期の各周期毎に求めた第2脈動周期に対応する油圧脈動のバイアス成分振れの中心に相当する油圧値:すなわち、二重丸印でマークしたPMAAVE2の変動の有無を判定し、変動していれば、第2脈動周期よりも長い第3脈動周期が存在すると判定する。[第3脈動周期の判断]第3脈動周期が存在することが検出されたならば、上記第2脈動周期判断の場合と同様の処理を行う。すなわち、第2脈動周期のバイアス成分PMAAVE2の傾きが負から正に反転するポイントを第3脈動周期の負のピークとして検出し、該検出した第3脈動周期の負のピーク間の時間差を第3脈動周期の周期として検出算出する。そして、この第3脈動周期の1周期中における第2脈動周期に係る最大正ピークPMAMAX2の最大値を判定し、これを第3脈動周期の最大正ピークPMAMAX3として検出する。また、第3脈動周期の1周期中における第2脈動周期に係る最小負ピークPMAMIN2の最小値を判定し、これを第3脈動周期の最小負ピークPMAMIN3として検出する。それから、こうして検出した第3脈動周期の1周期中の最大正ピークPMAMAX3と最小負ピークPMAMIN3の平均値中央値をPMAMAX3PMAMIN3/2の演算式で求める。これは、第3脈動周期に対応する油圧脈動のバイアス成分振れの中心に相当する油圧値に相当する。[収束判定]こうして、平均値中央値が収束する変動しなくなるまで、脈動周期を、より短い周期からより長い周期へと順次階層的に検出する。なお、図4の例では、第2脈動周期に対応する油圧脈動のバイアス成分二重丸印でマークしたPMAAVE2が変動無しと判定され、それよりも長い第3脈動周期については考慮しないものとされるので、第3脈動周期について周期検出等の処理は行う必要がない。すなわち、第2脈動周期が最終の最長の脈動周期として特定される。追って詳しく述べるように、補正部B5が持つ油圧補正機能では、このように脈動検知機能によって特定された最終の最長の脈動周期における脈動油圧の最大振幅を考慮して油圧補正を行う。このようにして、油圧脈動のバイアス成分振れの中心に相当する油圧値が安定した周期を見出すことにより、油圧脈動に対して必要最小限の効率的な油圧補正を行うことができるようになる。なお、油圧脈動のバイアス成分振れの中心に相当する油圧値が安定した周期を見出すために、より短い周期からより長い周期へと順次階層的に検出する処理をどれだけ行うかは、設計上任意に決めてよい。例えば、本実施例では、第3脈動周期の検出まで行うものとしている。なお、上述のような脈動検知手法にあっては、順次2倍以上の関係にある周期成分のみが検出可能である。例えば、最も短い周期として検出された第1脈動周期が10Hzの周波数に対応するものであるとすると、第2脈動周期として検出可能な成分は5Hz以下の周波数に対応するものであり、第3脈動周期として検出可能な成分はその半分最大でも2.5Hz以下の周波数に対応するものである。しかし、それでも油圧脈動補正にとっては効果が大であり、極めて実用性に富むものである。また、本実施例に係る検出手法は本格的なフーリエ解析等に比べて、はるかに簡単な処理ステップ数で実現できるので、その意味でも、極めて実用性に富むものである。なお、本実施例によれば、油圧脈動の正規周波数成分に限らず、それらのビート周波数成分に応答する脈動周期検出が可能である。例えば、油圧脈動の正規周波数成分が10Hzと8Hzからなっている場合、第1脈動周期として10Hzに対応する周期を検出し、第2脈動周期としてそのビート周波数2Hzに対応する周期を検出することが可能である。[脈動検知処理]図5は、補正部B5によって実行される脈動検知処理脈動検知機能の概略を示すフロー図である。第1周期判断ルーチンSUB1、第2周期判断ルーチンSUB2、第3周期判断ルーチンSUB3は、前記で概説した第1脈動周期の判断、第2脈動周期の判断、第3脈動周期の判断を具体的に所定周期で例えば10msで繰り返し実行するサブルーチンである。以下、第1周期、第2周期、第3周期とは、前記第1脈動周期、第2脈動周期、第3脈動周期を指す。なお、以下で、今回とは現在の処理サイクルを指し、前回とは前回1サイクル前の処理サイクルを指す。[第1周期判断]図6は、第1周期判断ルーチンSUB1の具体例を示す。まず、PMADN変化状態判断ルーチンS1では、算出された余剰圧PMADN油圧検出値PDNに相当の変化から下向きのピーク負ピークPMAMIN1を検出するための処理を行う。具体的には、前回の余剰圧PMADNと今回の余剰圧PMADNとの差を演算して、今回のPMADN変化値油圧検出値PDNの変化速度に相当を求め、前回のPMADN変化値と今回のPMADN変化値を比較する。PMADN変化値の符号が正であれば、PMADNの傾きが正であり、負であれば、PMADNの傾きが負である。よって、この比較から、PMADN変化値が負又は0から正に変化したとき、PMADNの傾きが負から正に変化した下向きのピーク=負ピークを通過したことが検出できる。これは、第1周期のスタート又はエンドが確定されたことを意味する。このように、第1周期のスタート又はエンドを確定したとき、周期確定フラグをセットする。図7は、1処理サイクル毎の余剰圧PMADNの時間的変化の一例を示している。図中t1及びt2の時点で、PMADN変化値が負又は0から正に変化したことがそれぞれ判定される。従って、このt1とt2の時間差が第1周期の1周期に相当することになる。図6に戻り、ステップS2では、周期確定フラグがセットされているかを調べる。セットされていなければ、ステップS3に進み、PMADNのMAX値バッファ及びMIN値バッファの更新処理と、周期カウントアップ処理を行う。すなわち、MAX値バッファに記憶されている前回までのPMADNの最大値よりも、今回のPMADNが大きい場合は、該MAX値バッファの記憶値を今回のPMADNで更新する。また、MIN値バッファに記憶されている前回までのPMADNの最小値よりも、今回のPMADNが小さい場合は、該MIN値バッファの記憶値を今回のPMADNで更新する。また、所定の周期カウンタのカウント値を1加算する。これらのバッファ及びカウンタは、周期確定フラグがセットされたときにリセットされる。従って、周期確定フラグがセットされる直前にこれらのバッファ及びカウンタに保持している値が、今計算している第1周期の1周期中の余剰圧PMADNの最大値PMAMAX1及び最小値PMAMIN1を示し、かつ、周期値を示すことになる。次のステップS4では周期判定済みフラグF_PMACYC1を0にリセットする。これは、まだ第1周期の周期判定が確定していないことを意味する。PMADN変化状態判断ルーチンS1で周期確定フラグがセットされた場合は、ステップS2のYESからステップS4に進む。ステップS4では、周期カウンタのカウント値が所定値以上であるかどうかを判定し、NOであれば、ステップS3に分岐する。これは、余剰圧PMADNのノイズ的変動によってPMADN変化状態判断ルーチンS1で誤って周期確定フラグが出されたような場合に、周期確定をキャンセルするためである。周期カウンタのカウント値が所定値以上であれば、ステップS5に進み、第1周期の周期判断を確定するために、次に述べるような周期及び振幅等を決定する処理を行う。MAX値バッファの現在の記憶値を、第1周期の正ピーク値PMAMAX1として決定し、記憶する。MIN値バッファの現在の記憶値を、第1周期の負ピーク値PMAMIN1として決定し、記憶する。周期カウンタの現在のカウント値に基づき第1周期の周期PMACYC1を決定し、記憶する。上記決定を行った後、MAX値バッファ及びMIN値バッファに今回のPMADN値をセットし、かつ、周期カウンタを0にクリアする。PMAMAX1PMAMIN1/2の演算式に従い、正負ピーク間の平均値中央値PMAAVE1を算出する。このPMAAVE1は、第1周期に対応する油圧脈動のバイアス成分振れの中心に相当する油圧値に相当する。具体的には、このPMAAVE1をそのままバイアス値として使用することなく、このPMAAVE1をなまらす処理例えばローパスフィルタ処理を行い、その結果を第1周期脈動バイアス値PMABIAS1として記憶する。PMAMAX1-PMAMIN1/2の演算式に従い、脈動振幅PMAAMP1を算出する。これは、第1周期に対応する油圧脈動のバイアス位置振れの中心からのピーク振幅値に相当している。現在確定した第1周期のピーク間平均値PMAAVE1から、前回確定した第1周期のピーク間平均値prePMAAVE1を減算し、相前後する周期間のピーク間平均値つまりバイアス値PMAAVE1の変化量、つまり脈動平均値変化量DPMAAVE1を算出する。その後、ステップS6に進み、第1周期判定済みフラグF_PMACYC1を1にセットする。これにより、第1周期の周期判定が確定したことを示す。また、前記周期確定フラグをリセットする。次にステップS7に行き、第1周期脈動判定ルーチンを実行する。図8は、第1周期脈動判定ルーチンS7の具体例を示す。ステップS8では、前記ステップS5で決定した第1周期の周期PMACYC1が所定の長周期値以上であるかを判定する。これは、決定した第1周期の周期PMACYC1が余り長い場合は、脈動補正を行わないようにするためである。すなわち、周期PMACYC1が所定の長周期値以上である場合は、ステップS9で長周期フラグF_PCYC1OVRを1にセットし、他方、周期PMACYC1が所定の長周期値未満である場合は、ステップS10で長周期フラグF_PCYC1OVRを0にリセットする。その後、第1周期脈動補正判断ルーチンS11及び第1周期複合周期判断ルーチンS12を行う。第1周期脈動補正判断ルーチンS11では、第1周期の脈動の補正を行うかどうかを判断する。第1周期複合周期判断ルーチンS12では、第1周期よりも長い第2周期の脈動成分があるかどうかを判断する。図9は、第1周期脈動補正判断ルーチンS11の具体例を示す。ステップS20では、現在の油圧指令値PDNCMDに応じて脈動判定閾値PMAAMPRIPを選択する。脈動判定閾値は、図3に示した脈動許容幅に相当する閾値である。ステップS21では、第1周期の周期PMACYC1が所定の長周期値以上であるかつまり、長周期フラグF_PCYC1OVRが1かを判定する。NOであれば、ステップS22で、脈動振幅PMAAMP1が上記選択した脈動判定閾値PMAAMPRIPよりも大きいかを判定する。YESであれば、油圧補正を行うべき脈動であると判定されたことになる。この場合、ただちに油圧補正を行うことなく、ステップS23で脈動判定カウントCTPMARIP1を1カウントアップし、ステップS24で脈動解消判定カウントCTNORIP1を0にリセットしてから、ステップS25で脈動判定カウントCTPMARIP1が所定の閾値以上であるかを判定する。YESであれば、ステップS250で脈動油圧補正フラグF_PMARIP1を1にセットする。すなわち、所定時間以上持続して、脈動振幅PMAAMP1が脈動判定閾値PMAAMPRIPよりも大きい場合に、脈動油圧補正フラグF_PMARIP1を1にセットして、油圧補正を行うことを指示する。これは、脈動油圧補正を頻繁にオンオフしないようにし、安定した脈動油圧補正を行うようにするためである。一方、ステップS22がNOであれば、ステップS26に分岐して脈動判定カウントCTPMARIP1を0にリセットし、ステップS27で脈動解消判定カウントCTNORIP1を1カウントアップする。次に、ステップS28で脈動解消判定カウントCTNORIP1が所定の閾値以上であるかを判定する。YESであれば、ステップS31で脈動油圧補正フラグF_PMARIP1を0にリセットする。すなわち、所定時間以上持続して、脈動振幅PMAAMP1が脈動判定閾値PMAAMPRIP未満である場合に、脈動油圧補正フラグF_PMARIP1を0にリセットする。これも、脈動油圧補正を頻繁にオンオフしないようにし、安定した脈動油圧補正を行うようにするためである。前記ステップS21がYESの場合は、ステップS29に分岐して脈動判定カウントCTPMARIP1を0にリセットし、ステップS30で脈動解消判定カウントCTNORIP1を0にリセットする。それから、ステップS31で脈動油圧補正フラグF_PMARIP1を0にリセットする。すなわち、第1周期の周期PMACYC1が所定の長周期値以上である場合は、脈動補正判断をリセットする。図10は、第1周期複合周期判断ルーチンS12の具体例を示す。ステップS32では、前記ステップS21と同様に、第1周期の周期PMACYC1が所定の長周期値以上であるかつまり、長周期フラグF_PCYC1OVRが1かを判定する。NOであれば、ステップS33で、前記脈動平均値変化量DPMAAVE1の絶対値が所定の閾値未満であるかを判定する。例えば、この所定の閾値とは、変化がないとみなせるような小さな値である。YESであれば、ステップS34で安定判断カウントCTPMA1STBLを1カウントアップし、ステップS35に進む。NOであれば、ステップS37で安定判断カウントCTPMA1STBLを0にリセットする。ステップS35は、安定判断カウントCTPMA1STBLが所定の閾値以上であるかを判定する。NOであれば、ステップS39で収束フラグF_DPMA1STBLを0にリセットする。YESであれば、ステップS36で収束フラグF_DPMA1STBLを1にセットする。すなわち、所定時間以上持続して、前記脈動平均値変化量DPMAAVE1の絶対値が所定の閾値未満であった場合、収束フラグF_DPMA1STBLが1にセットされる。収束フラグF_DPMA1STBLのセット値1は、第1周期よりも長い第2周期の脈動成分がないことを示している。一方、収束フラグF_DPMA1STBLのリセット値0は、第1周期よりも長い第2周期の脈動成分があることを示している。なお、ステップS32がYESの場合は、ステップS38に分岐して安定判断カウントCTPMA1STBLを0にリセットし、ステップS39で収束フラグF_DPMA1STBLを0にリセットする。すなわち、第1周期の周期PMACYC1が所定の長周期値以上である場合は、脈動複合周期判断をリセットする。[第2周期判断]図11は、第2周期判断ルーチンSUB2の具体例を示す。この第2周期判断ルーチンSUB2では、前記第1周期判断ルーチンSUB3と同様の処理を、周期判断に関しては第1周期脈動平均値変化量DPMAAVE1の変動を対象にして行い、振幅判断に関しては余剰圧PMADN油圧検出値を対象にして行う。よって、第2周期判断ルーチンSUB2においても第1周期判断ルーチンSUB3と同様のパラメータが取得される。同じ意味を持つパラメータは、同じ記号を付して示すものとし、ただし、サフィックス1に替えて2を用いることにより、それが第2周期に係るものであることを示す。ステップS40では、第1周期判定済みフラグF_PMACYC1が1であるかを調べる。NOであれば、ステップS41にジャンプして第2周期判定済みフラグF_PMACYC2を0にリセットする。YESであれば、ステップS42DPMAAVE1変化状態判断ルーチンに進み、第1周期脈動平均値変化量DPMAAVE1の波動における下向きのピーク負ピークを検出するための処理を行う。具体的には、前回の第1周期脈動平均値変化量DPMAAVE1と今回の第1周期脈動平均値変化量DPMAAVE1との差を演算して、今回の第1周期脈動平均値変化量DPMAAVE1の変化値DPMAAVE1の変化速度に相当を求め、前回の第1周期脈動平均値変化量DPMAAVE1の変化値と今回の第1周期脈動平均値変化量DPMAAVE1の変化値を比較する。DPMAAVE1の変化値の符号が正であれば、DPMAAVE1の傾きが正であり、負であれば、DPMAAVE1の傾きが負である。よって、この比較から、DPMAAVE1の変化値が負又は0から正に変化したとき、DPMAAVE1の傾きが負から正に変化した下向きのピーク=負ピークを通過したことが検出できる。これは、第2周期のスタート又はエンドが確定されたことを意味する。このように、第2周期のスタート又はエンドを確定したとき、第2周期確定フラグをセットする。ステップS43では、第2周期確定フラグがセットされているかを調べる。セットされていなければ、ステップS44に進み、PMADNの第2MAX値バッファ及び第2MIN値バッファの更新処理と、第2周期カウントアップ処理を行う。すなわち、第2MAX値バッファに記憶されている前回までのPMADNの最大値よりも、今回のPMADNが大きい場合は、該第2MAX値バッファの記憶値を今回のPMADNで更新する。また、第2MIN値バッファに記憶されている前回までのPMADNの最小値よりも、今回のPMADNが小さい場合は、該第2MIN値バッファの記憶値を今回のPMADNで更新する。また、所定の第2周期カウンタのカウント値を1加算する。なお、第2MAX値バッファ及び第2MIN値バッファ用の比較対象とするPMADN値は、PMADN波形の全てである必要はなく、第1周期の各周期で検出される最大値PMAMAX1及び最小値PMAMIN1を対象とすればよい。なお、これらのバッファ及びカウンタは、第2周期確定フラグがセットされたときにリセットされる。従って、第2周期確定フラグがセットされる直前にこれらのバッファ及びカウンタに保持している値が、今計算している第2周期の1周期中の余剰圧PMADNの最大値PMAMAX2及び最小値PMAMIN2を示し、かつ、周期値を示すことになる。次のステップS41では第2周期判定済みフラグF_PMACYC1を0にリセットする。これは、まだ第2周期の周期判定が確定していないことを意味する。第2周期確定フラグがセットされた場合は、ステップS43のYESからステップS45に進む。ステップS45では、第2周期カウンタのカウント値が所定値以上であるかどうかを判定し、NOであれば、ステップS44に分岐する。これは、第1周期脈動平均値変化量DPMAAVE1のノイズ的変動によってDPMAAVE1変化状態判断ルーチンS42で誤って周期確定フラグが出されたような場合に、周期確定をキャンセルするためである。第2周期カウンタのカウント値が所定値以上であれば、ステップS46に進み、第2周期の周期判断を確定するために、次に述べるような周期及び振幅等を決定する処理を行う。第2MAX値バッファの現在の記憶値を、第2周期の正ピーク値PMAMAX2第2周期最大振幅値として決定し、記憶する。第2MIN値バッファの現在の記憶値を、第2周期の負ピーク値PMAMIN2第2周期最小振幅値として決定し、記憶する。周期カウンタの現在のカウント値に基づき第2周期の周期PMACYC2を決定し、記憶する。上記決定を行った後、第2MAX値バッファ及び第2MIN値バッファに現在のPMAMAX1値をセットし、かつ、第2周期カウンタを0にクリアする。PMAMAX2PMAMIN2/2の演算式に従い、正負ピーク間の平均値中央値PMAAVE2を算出する。このPMAAVE2は、第2周期に対応する油圧脈動のバイアス成分振れの中心に相当する油圧値に相当する。具体的には、このPMAAVE2をそのままバイアス値として使用することなく、このPMAAVE2をなまらす処理例えばローパスフィルタ処理を行い、その結果を第2周期脈動バイアス値PMABIAS2として記憶する。PMAMAX2-PMAMIN2/2の演算式に従い、第2周期脈動振幅PMAAMP2を算出する。これは、第2周期に対応する油圧脈動のバイアス位置振れの中心からのピーク振幅値に相当している。現在確定した第2周期のピーク間平均値PMAAVE2から、前回確定した第2周期のピーク間平均値prePMAAVE2を減算し、相前後する周期間のピーク間平均値つまりバイアス値PMAAVE2の変化量、つまり脈動平均値変化量DPMAAVE2を算出する。その後、ステップS47に進み、第2周期判定済みフラグF_PMACYC2を1にセットする。これにより、第2周期の周期判定が確定したことを示す。また、前記周期確定フラグをリセットする。次にステップS48に行き、第2周期脈動判定ルーチンを実行する。この第2周期脈動判定ルーチンは、図8~図10に示した第1周期脈動判定ルーチンと同様の処理からなっているので、詳細説明は省略する。最終的に、第2周期脈動油圧補正フラグF_PMARIP2が1にセットされると、第2周期判断ルーチンSUB2で判定された脈動振幅等の各種パラメータに従って、脈動油圧補正を行うべきことを示す。[第3周期判断]第3周期判断ルーチンSUB3は、図11に示した第2周期判断ルーチンSUB2と同様の手順からなるため詳細説明は省略する。すなわち、この第3周期判断ルーチンSUB3では、前記第2周期判断ルーチンSUB2と同様の処理を、周期判断に関しては第2周期脈動平均値変化量DPMAAVE2の変動を対象にして行い、振幅判断に関しては余剰圧PMADN油圧検出値より詳しくは、第2周期最大振幅値PMAMAX2及び第2周期最小振幅値PMAMIN2を対象にして行う。よって、第3周期判断ルーチンSUB3においても第2周期判断ルーチンSUB3と同様のパラメータが取得される。同じ意味を持つパラメータは、同じ記号を付して示すものとし、ただし、サフィックス2に替えて3を用いることにより、それが第3周期に係るものであることを示す。図11のステップS40と同様に、第3周期判断ルーチンSUB3では、まず、第2周期判定済みフラグF_PMACYC2が1であるかをチェックし、これが0であれば、第2周期が判定されていないので、この第3周期判断ルーチンSUB3を続行しない。他方、第2周期が判定されていれば、この第3周期判断ルーチンSUB3を続行し、第2周期脈動平均値変化量DPMAAVE2の波動における下向きのピーク負ピークを検出するための処理を行う。DPMAAVE2の波動における下向きのピーク負ピークが検出されたならば、第3周期確定と判定し、図11のステップS46と同様に、次のようなパラメータを算出する。第3MAX値バッファの現在の記憶値を、第3周期の正ピーク値PMAMAX3第3周期最大振幅値として決定し、記憶する。第3MIN値バッファの現在の記憶値を、第3周期の負ピーク値PMAMIN3第3周期最小振幅値として決定し、記憶する。第3周周期カウンタの現在のカウント値に基づき第3周期の周期PMACYC3を決定し、記憶する。PMAMAX3PMAMIN3/2の演算式に従い、正負ピーク間の平均値中央値PMAAVE3を算出する。このPMAAVE3は、第3周期に対応する油圧脈動のバイアス成分振れの中心に相当する油圧値に相当する。具体的には、このPMAAVE3をそのままバイアス値として使用することなく、このPMAAVE3をなまらす処理例えばローパスフィルタ処理を行い、その結果を第3周期脈動バイアス値PMABIAS3として記憶する。PMAMAX3-PMAMIN3/2の演算式に従い、第3周期脈動振幅PMAAMP3を算出する。これは、第3周期に対応する油圧脈動のバイアス位置振れの中心からのピーク振幅値に相当している。現在確定した第3周期のピーク間平均値PMAAVE3から、前回確定した第3周期のピーク間平均値prePMAAVE3を減算し、相前後する周期間のピーク間平均値つまりバイアス値PMAAVE3の変化量、つまり第3周期脈動平均値変化量DPMAAVE3を算出する。以上のような各パラメータを算出したならば、第3周期判定済みフラグF_PMACYC3を1にセットする。[油圧脈動補正量算出]図12は、補正部B5によって実行される油圧脈動補正処理油圧脈動補正機能のうち、油圧脈動補正量を算出するための処理の概略を示すフロー図である。ステップS50では、脈動状態決定ルーチンを実行する。この脈動状態決定ルーチンでは、図5~図11に示した脈動検知処理の結果を参照して、より長い脈動周期中の最大振幅等の検出パラメータを使用する。具体的には、1にセットされている第1~第3周期判定済みフラグF_MACYC1,F_PMACYC2,F_PMACYC3のうち、最も長い周期を特定する。そして、特定した周期についての脈動振幅PMAAMP1,PMAAMP2,PMAAMP3のいずれかと、脈動バイアス値PMABIAS1,PMABIAS2,PMABIAS3を特定し、以下の処理で使用する脈動振幅PMAAMP及び脈動バイアス値PMABIASとして設定する。ステップS51では、上記設定された脈動振幅PMAAMPをなまらせるための処理例えばローパスフィルタ処理を施して、なまらせた脈動振幅PMAAMPFを取得する。これは、油圧脈動中のノイズ的な振動成分が脈動振幅PMAAMPに含まれていた場合、補正油圧が高圧化しやすいため、脈動振幅PMAAMPをなまらせることによって、そのようなおそれを除去することを目的としている。ステップS52では、脈動補正を行う種々の条件例えば、従動軸推力が所定値以下等が成立しているかを再度判定する。成立していれば、ステップS53に進み、前記なまらせた脈動振幅PMAAMPFと前記設定した脈動バイアス値PMABIASとに基づき、所定のマップを参照して、これらパラメータPMAAMPF、PMABIASの組み合わせに適した脈動補正ベース補正量POILRIPBを取得する。一方、成立していなければ、ステップS54に進み、脈動補正ベース補正量POILRIPBを0にリセットする。ステップS55では、上記取得した脈動補正ベース補正量POILRIPBが所定の上限値を越えている場合、これを該上限値に限定するリミット処理を施し、リミット処理を施した脈動補正ベース補正量POILRIPBLを取得する。ステップS56では、前ステップS55で求めた脈動補正ベース補正量POILRIPBLが、前回の補正量POILRIPと同じか又はそれより大きいかを判断する。YESの場合は、補正量を前回値よりも大きくすることが要求されていることを意味する。そこで、まず、ステップS57で所定のタイマーをセットし、ステップS58で前回の補正量POILRIPに所定増分値DPOILRIPPを加算したものを今回の補正量POILRIPとして算出する。なお、算出された今回の補正量POILRIPが前記ステップS55で求めた脈動補正ベース補正量POILRIPBLよりも大きい場合は、今回の補正量POILRIPをPOILRIPBLに制限するものとする。このようにして、補正量POILRIPを増加させる場合は、1処理サイクル毎に、所定増分値DPOILRIPPだけ、徐々に増加させるようにすることで、急峻な油圧補正量の増加を防ぐようにしている。一方、脈動補正ベース補正量POILRIPBLが、前回の補正量POILRIPよりも小さい場合は、補正量POILRIPを減少させる必要が有り、ステップS56のNOからステップS59に進む。ステップS59では、前記ステップS57でセットしたタイマーがタイムアップしたかを調べる。タイムアップしてなければ、ステップS61に行き、今回の補正量POILRIPとして、前回の補正量POILRIPと同じ値を保持させる。一方、タイムアップしたならば、ステップS60で前回の補正量POILRIPから所定減少値DPOILRIPMを減算したものを今回の補正量POILRIPとして算出する。なお、算出された今回の補正量POILRIPが前記ステップS55で求めた脈動補正ベース補正量POILRIPBLよりも小さい場合は、今回の補正量POILRIPをPOILRIPBLに設定するものとする。なお、ここで使用されるタイマーは、油圧補正量POILRIPを減少させる制御に所定の時間遅れをもたせることにより、油圧減少制御に関して応答遅れを設定し、プーリ軸推力が不足気味にならないようにするためのものである。また、補正量POILRIPを減少させる場合は、1処理サイクル毎に、所定減少値DPOILRIPMだけ、徐々に減少させるようにすることで、急峻な油圧補正量の減少を防ぐようにしている。以上のようにして決定された補正量POILRIPは、図3を参照して説明したように、油圧指令値目標供給油圧を加算的に補正するために使用される。"