以下、本発明の実施の形態を図面に基づいて説明する。本実施形態では、自動車に搭載された自動変速機(制御対象装置)を制御する自動変速機制御装置に本発明を適用した場合について説明する。
−自動変速機制御装置の概略構成−
図1は、後述する第1参考例及び第2参考例に係る自動変速機制御装置(車載電子制御装置)1の概略構成を示すブロック図である。この自動変速機制御装置1は、ECU(Electronic Control Unit)により構成され、自動変速機に備えられた図示しない油圧制御装置を制御する(油圧経路の切り換えや油圧の調整を行う)ことにより、変速機構部に備えられている各種クラッチ及びブレーキの係合・離脱状態を切り換えて適宜の変速段を成立させるようになっている。また、この自動変速機制御装置1は、自動変速機のその他の制御(例えば公知のロックアップクラッチ制御、ニュートラル制御、ガレージシフト制御など)も実行するようになっている。
この自動変速機制御装置1は、CPU(Central Processing Unit)2及びEEPROM(Electrically Erasable Programmable Read Only Memory:不揮発性メモリ)8を備えている。
上記CPU2は、後述する変速機制御プログラムを実行することによって自動変速機の変速動作等を司るものであり、その内部には、データ記憶領域としてROM(Read Only Memory)領域3及びRAM(Random Access Memory)領域4が備えられている。
上記CPU2のROM領域3には、自動変速機の変速動作を実行するための変速機制御プログラムであるECT(Electronic Controlled Transmission)アプリケーション5を含む自動変速機の各種制御動作を実行するための制御プログラムが記憶されている。これら変速機制御プログラムの実行により自動変速機の変速制御(変速段の切り換え制御)及びその他の自動変速機制御(ロックアップクラッチ制御、ニュートラル制御、ガレージシフト制御など)を実行するようになっている。
上記RAM領域4は、上述した各種制御に関連する制御データを記憶するものであり、その内部には、通常記憶領域としてのNRAM(Normal Random Access Memory)領域6、及び、学習値記憶領域としてのSRAM(Static Random Access Memory)領域7が備えられている。
NRAM領域6には、上記変速機制御プログラムで使用される制御データのうち、イグニッションOFF後(エンジンの停止後)に消去されるデータ(消去を許容するデータ)が記憶される。
一方、SRAM領域7には、上記変速機制御プログラムで使用される制御データのうち、イグニッションOFF後(エンジンの停止後)にも保持されるデータ(油圧学習値データに代表される制御学習値等の保持が必要なデータ)が記憶される。
−SRAM領域7の構成−
以下、このSRAM領域7の構成について詳述する。図2は、このSRAM領域7の内部構成を示す図である。この図2に示すように、SRAM領域7には、制御用SRAM(第1揮発性メモリ)9、格納用SRAM(第2揮発性メモリ)10、非格納用SRAM11、制御学習値以外のデータを記憶する他制御用SRAM12が設けられている。
上記制御用SRAM9は、自動変速機の制御学習値のうち、自動変速機制御(以下、ECT制御と呼ぶ場合もある)に関するデータであって、上記EEPROM8に格納する必要のあるデータを記憶するものである。具体的に、本参考例では、自動変速機の変速動作が完了する度に、その変速動作やその他の制御動作に伴って取得された制御データ(制御学習値等)が制御用SRAM9に記憶されるようになっている。
格納用SRAM10は、上記制御用SRAM9からコピーされたデータを一時的に記憶するものであり、上記EEPROM8に格納するためのデータを記憶する。具体的に、本参考例では、自動変速機の変速動作の完了と同時にEEPROM8へのデータ格納要求が発生し、それに伴って制御用SRAM9から格納用SRAM10へデータがコピーされるようになっている。この場合にコピーされるデータの詳細については後述する。
非格納用SRAM11は、自動変速機の制御学習値のうち、ECT制御に関するデータであって、上記EEPROM8に格納する必要のないデータを記憶する。例えば、ダイアグ情報などの一時的に発生する情報を記憶する。
他制御用SRAM12は、自動変速機の制御学習値のうち、ECT制御以外の制御に関するデータを記憶する。例えば、各種制御に使用されるカウンタのカウント値などの情報を記憶する。
本参考例の特徴の一つとして、上記制御用SRAM9の内部には分割された複数の記憶領域が設けられている。図3は、この制御用SRAM9の内部に設けられた各種制御に対応する制御データの記憶領域を示している。
この図3に示すように、制御用SRAM9の内部は、例えば8個の記憶領域に分割されている。具体的に、第1の記憶領域はニュートラル制御に関する学習値の記憶領域91、第2の記憶領域はガレージシフト制御に関する学習値の記憶領域92、第3の記憶領域はロックアップ制御に関する学習値の記憶領域93、第4の記憶領域は駆動時アップシフト制御に関する学習値の記憶領域94である。また、第5の記憶領域は被駆動時アップシフト制御に関する学習値の記憶領域95、第6の記憶領域は駆動時ダウンシフト制御に関する学習値の記憶領域96、第7の記憶領域は被駆動時ダウンシフト制御に関する学習値の記憶領域97、第8の記憶領域はコーストダウン制御に関する学習値の記憶領域98である。
そして、これら各記憶領域91〜98には、それぞれ更新履歴の有無の情報を記憶するための更新履歴記憶部91a〜98aが設けられている。例えば、自動変速機の変速動作が行われた場合に、その変速動作が駆動時アップシフトであった場合には、その駆動時アップシフトにより取得された制御学習値が記憶領域94に記憶されると共に、この記憶領域94の更新履歴記憶部94aに更新履歴が付与される。つまり、記憶領域94に記憶されている制御学習値が更新されていることの情報が記憶される。また、自動車の停車時にニュートラル制御が行われた場合には、そのニュートラル制御により取得された制御学習値が記憶領域91に記憶されると共に、この記憶領域91の更新履歴記憶部91aに更新履歴情報が付与される。つまり、記憶領域91に記憶されている制御学習値が更新されていることの情報が記憶される。また、この更新履歴記憶部91a〜98aに付与された更新履歴は、EEPROM8へのデータ格納要求が発生したことに伴って制御用SRAM9から格納用SRAM10へのデータコピーが実行された際に消去されることになる。つまり、この更新履歴記憶部91a〜98aに付与された更新履歴は、制御用SRAM9から格納用SRAM10へのデータコピーが実行されるまでの間、継続的に保持される。
上記EEPROM8は、バッテリクリア時であってもデータの継続記憶が可能な不揮発性メモリであり、上記制御用SRAM9から格納用SRAM10にコピーされたデータのみを、この格納用SRAM10から受けて格納するものである。このEEPROM8に格納された各種制御データは、その後のCPU2における自動変速機制御動作に利用されることになる。
−制御学習値記憶動作−
次に、具体的な制御学習値の記憶動作、つまり、制御用SRAM9から格納用SRAM10への制御学習値のコピー動作、及び、格納用SRAM10からEEPROM8への制御学習値の格納動作についての複数の参考例を説明する。
(第1参考例)
図4は、第1参考例における制御学習値記憶動作の処理手順を示すフローチャート図である。このフローチャートに示される処理は、エンジンの始動後、上記自動変速機制御装置1により自動変速機の制御動作(変速制御やニュートラル制御など)が行われる度に繰り返し実行される。
先ず、ステップST1において、自動変速機の制御動作(変速制御やニュートラル制御など)が行われると、その制御動作に伴って制御学習値が取得される。制御学習値の取得動作については公知であるためここでの説明は省略する。
ステップST2では、上記取得された制御学習値によって、上記制御用SRAM9における対応する記憶領域91(92〜98)の制御学習値が上書きにより書き換えられる(更新される)。また、この制御学習値の更新に伴い、それに対応する更新履歴記憶部91a(92a〜98a)に更新履歴が付与される。例えば、自動変速機の制御が駆動時アップシフトであった場合には、その駆動時アップシフトに伴って取得された制御学習値(駆動時アップシフトを実行する際の油圧補正量やクラッチ係合タイミングの補正量など)が記憶領域94に記憶されると共に、この記憶領域94の更新履歴記憶部94aに更新履歴(制御学習値が更新された旨の情報)が付与される。また、自動変速機の制御がニュートラル制御であった場合には、そのニュートラル制御に伴って取得された制御学習値が記憶領域91に記憶されると共に、この記憶領域91の更新履歴記憶部91aに更新履歴が付与されることになる。
その後、ステップST3に移り、EEPROM8へのデータ書き込み条件が成立したか否かを判定する。本参考例では、「自動変速機の変速動作完了」をデータ書き込み条件としている。このため、自動変速機の変速動作が行われない場合や自動変速機の変速動作途中であって未だ変速動作が完了していない場合にはステップST3でNO判定され、自動変速機の変速動作が行われてその変速動作が完了するのを待つ。一方、自動変速機の変速動作が行われ、その変速動作が完了するとステップST3でYES判定されてステップST4に移る。
ステップST4〜ステップST10では、上記制御用SRAM9から格納用SRAM10への制御学習値のコピーが行われる。具体的には、先ず、ステップST4において、更新履歴情報を確認する更新履歴記憶部91a〜98aを特定するための変数であるnを「1」に設定する。そして、ステップST5において第n番目(第1番目)の記憶領域(ニュートラル制御学習値の記憶領域)91の更新履歴記憶部91aに対し、更新履歴情報の確認を行う。つまり、ニュートラル制御学習値が更新されたことの履歴の存在の有無を確認する。
そして、ステップST6で更新履歴が有るか否かを判定し、更新履歴が有る場合にはステップST7に移って、第n番目(第1番目)の記憶領域(ニュートラル制御学習値の記憶領域)91の制御学習値を、制御用SRAM9から格納用SRAM10へコピーする。その後、この第n番目(第1番目)の記憶領域91の更新履歴記憶部91aにおける更新履歴を消去し(ステップST8)、その後、ステップST9に移る。この際、制御用SRAM9にあっては、第n番目(第1番目)の記憶領域(ニュートラル制御学習値の記憶領域)91の制御学習値はそのまま保持される。
一方、上記ステップST6で更新履歴が無く(ニュートラル制御学習値は更新されておらず)、NO判定された場合には、上述した格納用SRAM10へのコピー(ステップST7の動作)及び更新履歴の消去(ステップST8の動作)を行うことなくステップST9に移る。
ステップST9では、全ての更新履歴情報の確認が完了したか否かを判定する。つまり、上記制御用SRAM9に設けられている8個の更新履歴情報の全てに対して確認が完了したか否かを判定する。今、上記変数nが「1」であって、1つの更新履歴情報(第1番目の記憶領域91の更新履歴記憶部91aに付与されている更新履歴情報)しか確認されていないため、ステップST9ではNO判定され、ステップST10に移る。このステップST10では、変数nに「1」を加算し、その後、ステップST5に戻る。これにより、ステップST5では第n番目(第2番目)の記憶領域(ガレージシフト制御学習値の記憶領域)92の更新履歴記憶部92aに対し、更新履歴情報の確認を行う。つまり、ガレージシフト制御学習値が更新されたことの履歴の存在の有無を確認する。
そして、ステップST6で更新履歴が有るか否かを判定し、更新履歴がある場合にはステップST7に移って、第n番目(第2番目)の記憶領域(ガレージシフト制御学習値の記憶領域)92の制御学習値を、制御用SRAM9から格納用SRAM10へコピーする。その後、この第n番目(第2番目)の記憶領域92の更新履歴記憶部92aにおける更新履歴を消去し、その後、ステップST9に移る。
一方、上記ステップST6で更新履歴が無く(ガレージシフト制御学習値は更新されておらず)、NO判定された場合には、上述した格納用SRAM10へのコピー(ステップST7の動作)及び更新履歴の消去(ステップST8の動作)を行うことなくステップST9に移る。このステップST9では、再び全ての更新履歴情報の確認が完了したか否かを判定する。
このような動作が、上記変数nが「8」となって全ての更新履歴情報の確認が完了するまで(ステップST9でYES判定されるまで)繰り返して実行される。
このような動作が繰り返されることにより、各記憶領域91〜98の制御学習値を確認することなく、それに付随する更新履歴記憶部91a〜98aの更新履歴情報のみの確認により、制御学習値が格納用SRAM10にコピーされている。つまり、この格納用SRAM10にコピーされている制御学習値としては、更新履歴のあったもの、即ち、ステップST6でYES判定されたことで格納用SRAM10へコピーされたもののみとなっている。言い換えると、格納用SRAM10へコピーされた制御学習値のデータは、前回のEEPROM8へのデータ格納動作の後に更新された制御学習値のみである。
ステップST9でYES判定されると、ステップST11に移り、上記格納用SRAM10にコピーされている制御学習値のデータを、この格納用SRAM10からEEPROM8に格納する。
以上のようにして制御学習値記憶動作が完了する。
このように本参考例にあっては、制御用SRAM9における各更新履歴記憶部91a〜98aの更新履歴情報を確認し、更新履歴が存在する場合にのみ、対応する記憶領域91〜98の制御学習値を、制御用SRAM9から格納用SRAM10へコピーし、且つ格納用SRAM10からEEPROM8へ格納するようにしている。このため、前回の制御データの値と今回の制御データの値とを全てのデータに亘って比較し、制御データが異なっているものを制御用SRAMから格納用SRAMへコピーするといった従来技術のものに比べて、制御用SRAM9から格納用SRAM10へコピーすべき制御学習値の判断処理の負荷(CPU2に掛かる負担)が大幅に軽減されることになり、CPU2による自動変速機の通常制御動作が圧迫されてしまうことを回避できる。
(第2参考例)
次に、第2参考例について説明する。本参考例は、制御用SRAM9から格納用SRAM10へコピーすべき制御学習値の判断処理の手順が上述した第1参考例のものと異なっている。その他の構成及び処理手順は第1参考例のものと同様であるため、ここでは第1参考例との相違点についてのみ説明する。
図5は、本参考例における制御学習値記憶動作の処理手順を示すフローチャート図である。本参考例においても、このフローチャートに示される処理は、エンジンの始動後、上記自動変速機制御装置1により自動変速機の制御動作(変速制御やニュートラル制御など)が行われる度に繰り返し実行される。尚、このフローチャートでは、上記第1参考例において図4で示したフローチャートにおける各ステップと同一の動作については同ステップ番号を付している。
先ず、ステップST1において、自動変速機の制御動作が行われると、その制御動作に伴って制御学習値が取得される。
その後、ステップST20において、上記ステップST1で行われた自動変速機の制御動作の種類を推定して、更新された制御学習値が記憶される記憶領域(制御用SRAM9上における制御学習値の記憶領域)を推定する。具体的には、自動変速機の制御に使用される各種制御パラメータから自動変速機の制御動作の種類を推定し、それに基づいて上記制御用SRAM9に設けられた各記憶領域91〜98のうち何れの記憶領域に該当する制御学習値が上記ステップST1で取得されたのかを推定する。または、上記自動変速機制御装置1から発信される制御信号(例えばアップシフト指令信号等)に基づいて制御動作の種類を求めることも可能である。この場合、その更新された制御学習値に対応する記憶領域91(92〜98)の更新履歴記憶部91a(92a〜98a)への更新履歴の付与は行わず、ステップST3に移る。
ステップST3では、EEPROM8へのデータ書き込み条件が成立したか否かを判定する。本参考例でも、「自動変速機の変速動作完了」をデータ書き込み条件としている。このため、自動変速機の変速動作が行われ、その変速動作が完了するとステップST3でYES判定されてステップST21に移る。このステップST21では、上記更新された制御学習値(上記推定された記憶領域に記憶されている制御学習値)を、制御用SRAM9から格納用SRAM10へコピーする。この場合、上述した如く、この更新された制御学習値に対応する更新履歴記憶部91a(92a〜98a)への更新履歴は付与されていないため、更新履歴の消去動作も行われないことになる。
その後、ステップST4〜ステップST11の動作が上記第1参考例の場合と同様にして実行される。つまり、全ての更新履歴情報を順に確認していき、更新履歴が有るものに対してのみ制御用SRAM9から格納用SRAM10への制御学習値のコピーを行い、このコピーされた制御学習値を格納用SRAM10からEEPROM8へ格納する。
一方、自動変速機の変速動作が行われない場合や自動変速機の変速動作途中であって未だ変速動作が完了していない場合、つまりEEPROM8へのデータ書き込み条件が成立していない場合には、ステップST3でNO判定され、ステップST22に移る。また、現在、EEPROM8へのデータ格納動作が実行中(EEPROM8のビジー状態)である場合にも上記データ書き込み条件が成立していないと判断されてステップST22に移る。
ステップST22では、上記推定された記憶領域の更新履歴記憶部91a(92a〜98a)に更新履歴が付与される。例えば、推定された制御動作の種類が駆動時アップシフトであった場合には、その駆動時アップシフトに伴って取得された制御学習値が記憶領域94に記憶されると共に、この記憶領域94の更新履歴記憶部94aに更新履歴(制御学習値が更新された旨の情報)が付与される。また、推定された制御動作の種類がニュートラル制御であった場合には、そのニュートラル制御に伴って取得された制御学習値が記憶領域91に記憶されると共に、この記憶領域91の更新履歴記憶部91aに更新履歴が付与されることになる。この場合、次回のEEPROM8へのデータ格納要求が発生するまで、これら制御学習値(更新された制御学習値)及び付与された更新履歴は制御用SRAM9に保存されることになる。つまり、次回のEEPROM8へのデータ格納要求が発生した場合には、その際に取得された制御学習値(ステップST20において推定された記憶領域の制御学習値であって更新履歴記憶部91a(92a〜98a)に更新履歴が付与されていない制御学習値)はステップST21において制御用SRAM9から格納用SRAM10へのコピーされる。これに対し、過去のルーチンで格納用SRAM10へコピーされなかった制御学習値(ステップST22で記憶された制御学習値)は今回のルーチンにおけるステップST4〜ステップST10の動作によって制御用SRAM9から格納用SRAM10へのコピーされることになる。これにより、過去に更新されていた制御学習値及び今回更新された制御学習値が共に格納用SRAM10へのコピーされ、これら制御学習値はステップST11において格納用SRAM10からEEPROM8に格納される。以上のようにして制御学習値記憶動作が完了する。
本参考例においても、上述した第1参考例の場合と同様に、制御用SRAM9から格納用SRAM10へコピーすべき制御学習値の判断処理の負荷(CPU2に掛かる負担)が大幅に軽減されることになり、CPU2による自動変速機の通常制御動作が圧迫されてしまうことを回避できる。
(実施形態)
次に、本発明の実施形態について説明する。本実施形態は、制御用SRAM9から格納用SRAM10へのデータコピーのタイミングを改良したものである。
図6は、本実施形態に係る自動変速機制御装置(車載電子制御装置)1の概略構成を示すブロック図である。この図6では、上述した参考例において図1で示した自動変速機制御装置1と同一の構成部材については同一の符号を付している。
この図6に示すように、本実施形態に係る自動変速機制御装置1のRAM領域4には学習値カウンタ15が備えられている。この学習値カウンタ15は、自動変速機の制御動作(変速制御やニュートラル制御など)が行われ、その制御動作に伴って制御学習値が取得された場合に、その取得された制御学習値の個数をカウントしていくものである。例えば、駆動時アップシフトを実行する際に、油圧補正量の学習値が取得された場合には学習値カウンタ15のカウント値が「1」となり、その後、クラッチ係合タイミングの補正量の学習値が取得された場合には学習値カウンタ15のカウント値が「2」となるといったように、学習値が取得される度に、この学習値カウンタ15のカウント値はインクリメントされていく。また、学習値カウンタ15のカウント値は、複数の制御動作(駆動時アップシフト制御やニュートラル制御など)においてそれぞれ取得された制御学習値の総数としてカウントされる。例えば、上述した如く駆動時アップシフトの実行によって2つの学習値が取得された後に(カウント値が「2」となった後に)、このカウント値のクリア動作(このカウント値のクリア動作については後述する)が行われることなしに他の制御動作(例えばニュートラル制御)によって制御学習値が取得された場合には、カウント値が更にインクリメントされていく(カウント値が「3」となる)ことになる。
上記学習値カウンタ15のカウント値は、制御用SRAM9(図2参照)から格納用SRAM10へのデータのコピーが完了した時点でリセットされるようになっている。尚、この学習値カウンタ15は、上記他制御用SRAM12に内蔵されていてもよい。その他の構成は上述した各参考例のものと同一である。
本実施形態における制御学習値記憶動作の処理手順は、上述した第2参考例における処理手順に対し、制御用SRAM9から格納用SRAM10へのデータコピーの機会を追加したものである。このため、以下では第2参考例との相違点について主に説明する。
図7及び図8は、本実施形態における制御学習値記憶動作の処理手順を示すフローチャート図である。このフローチャートに示される処理は、エンジンの始動後、上記自動変速機制御装置1により自動変速機の制御動作(変速制御やニュートラル制御など)が行われる毎に、または、数msec毎に実行される。尚、このフローチャートでは、上記第1参考例において図4で示したフローチャート及び上記第2参考例において図5で示したフローチャートにおける各ステップと同一の動作については同ステップ番号を付している。
先ず、上記ステップST1において、自動変速機の制御動作が行われると、その制御動作に伴って制御学習値が取得される。この制御学習値の取得に伴い、学習値カウンタ15のカウント値はインクリメントされる。
その後、ステップST20において、上記ステップST1で行われた自動変速機の制御動作の種類を推定して、更新された制御学習値が記憶される記憶領域(制御用SRAM9上における制御学習値の記憶領域)を推定する。具体的には、自動変速機の制御に使用される各種制御パラメータから自動変速機の制御動作の種類を推定し、それに基づいて上記制御用SRAM9に設けられた各記憶領域91〜98(図3参照)のうち何れの記憶領域に該当する制御学習値が上記ステップST1で取得されたのかを推定する。または、上記自動変速機制御装置1から発信される制御信号(例えばアップシフト指令信号等)に基づいて制御動作の種類を求めることも可能である。この場合、その更新された制御学習値に対応する記憶領域91(92〜98)の更新履歴記憶部91a(92a〜98a)への更新履歴の付与は行わず、ステップST3に移る。
ステップST3では、EEPROM8へのデータ書き込み条件が成立したか否かを判定する。本実施形態でも、「自動変速機の変速動作完了」をデータ書き込み条件としている。このため、自動変速機の変速動作が行われ、その変速動作が完了するとステップST3でYES判定されてステップST21に移る。このステップST21では、上記更新された制御学習値(上記推定された記憶領域に記憶されている制御学習値)を、制御用SRAM9から格納用SRAM10へコピーする。この場合、上述した如く、この更新された制御学習値に対応する更新履歴記憶部91a(92a〜98a)への更新履歴は付与されていないため、更新履歴の消去動作も行われないことになる。
その後、ステップST4〜ステップST11の動作が上記第1参考例及び上記第2参考例の場合と同様にして実行される。つまり、全ての更新履歴情報を順に確認していき、更新履歴が有るものに対してのみ制御用SRAM9から格納用SRAM10への制御学習値のコピーを行い、このコピーされた制御学習値を格納用SRAM10からEEPROM8へ格納する。
一方、自動変速機の変速動作が行われない場合や自動変速機の変速動作途中であって未だ変速動作が完了していない場合、つまりEEPROM8へのデータ書き込み条件が成立していない場合には、ステップST3でNO判定され、ステップST22に移る。また、現在、EEPROM8へのデータ格納動作が実行中(EEPROM8のビジー状態)である場合にも上記データ書き込み条件が成立していないと判断されてステップST22に移る。
ステップST22では、上記推定された記憶領域の更新履歴記憶部91a(92a〜98a)に更新履歴が付与される。例えば、推定された制御動作の種類が駆動時アップシフトであった場合には、その駆動時アップシフトに伴って取得された制御学習値が記憶領域94に記憶されると共に、この記憶領域94の更新履歴記憶部94aに更新履歴(制御学習値が更新された旨の情報)が付与される。また、推定された制御動作の種類がニュートラル制御であった場合には、そのニュートラル制御に伴って取得された制御学習値が記憶領域91に記憶されると共に、この記憶領域91の更新履歴記憶部91aに更新履歴が付与されることになる。
このようにして制御学習値が記憶されると共に更新履歴が付与された後、ステップST30(図8)に移り、制御用SRAMの記憶領域に2個以上の更新履歴が存在しているか否かを判定する。具体的には、上記学習値カウンタ15のカウント値をモニタし、このカウント値が「2」以上となっているか否かを判定する。
この学習値カウンタ15のカウント値が「1」であって、ステップST30でNO判定された場合には、制御用SRAM9に記憶されているデータ(制御学習値)は少なく、上記EEPROM8へのデータ書き込み条件が成立した後に制御用SRAM9から格納用SRAM10へのデータコピーを行ってもCPU2に掛かる負荷は比較的小さいと判断して、制御用SRAM9から格納用SRAM10へのデータコピーを保留し(データコピーを実行せず)、本動作を一旦終了する。
一方、学習値カウンタ15のカウント値が「2」以上であって、ステップST30でYES判定された場合には、ステップST31に移り、現在の自動変速機の作動状態は、格納用SRAM10へのコピー許可動作領域であるか(データコピー許可条件が成立しているか)否かを判定する。このコピー許可動作領域は、例えば自動変速機が変速動作を行っていない期間であり、変速マップを参照することで判断可能である。以下、具体的に説明する。
図9は自動変速機の変速制御に用いる変速マップを示している。この変速マップは、車速V及びアクセル開度θTHをパラメータとし、それら車速V及びアクセル開度θTHに応じて、適正な変速段を求めるための複数の領域が設定されたマップであって、上記ROM領域3に記憶されている。この変速マップの各領域は複数の変速線(変速段の切り換えライン)によって区画されている。尚、図9に示す変速マップにおいて、シフトアップ線(シフトアップを実行するための変速線)を実線で示し、シフトダウン線(シフトダウンを実行するための変速線)を破線で示している。また、シフトアップ及びシフトダウンの各切り換え方向を図中に数字と矢印とを用いて示している。
自動変速機の変速動作は、この変速マップに従って行われる。つまり、車速V及びアクセル開度θTHの変化がシフトアップ変速線をシフトアップ側に跨ぐ変化となった場合には自動変速機はシフトアップ変速を行う一方、車速V及びアクセル開度θTHの変化がシフトダウン変速線をシフトダウン側に跨ぐ変化となった場合には自動変速機はシフトダウン変速を行うことになる。このため、車速V及びアクセル開度θTHの変化がシフトアップ変速線やシフトダウン変速線を跨ぐ変化とはなっておらず、自動変速機の変速動作が行われていない期間が、上記格納用SRAM10へのコピー許可動作領域として設定されている。
自動変速機の変速動作が行われており(車速V及びアクセル開度θTHの変化がシフトアップ変速線またはシフトダウン変速線を跨ぐ変化となっており)、現在の自動変速機の作動状態が、格納用SRAM10へのコピー許可動作領域ではない場合には、ステップST31でNO判定され、本動作を一旦終了する。つまり、自動変速機は変速動作を行っており、CPU2に掛かっている負荷が比較的大きいと判断して、制御用SRAM9から格納用SRAM10へのデータコピーを保留する(データコピーを実行しない)。
一方、自動変速機の変速動作が行われておらず(車速V及びアクセル開度θTHの変化がシフトアップ変速線やシフトダウン変速線を跨ぐ変化となっておらず)、現在の自動変速機の作動状態が、格納用SRAM10へのコピー許可動作領域である場合には、ステップST31でYES判定され、ステップST4’に移る。このステップST4’以降の動作であるステップST4’〜ステップST10’の動作は、上記各参考例におけるステップST4〜ステップST10の動作と同様に行われる。つまり、全ての更新履歴情報を順に確認していき、更新履歴が有るものに対してのみ制御用SRAM9から格納用SRAM10への制御学習値のコピーを行うことになる。そして、全ての更新履歴情報の確認が完了すると(ステップST9’でYES判定されると)ステップST32に移り、上記学習値カウンタ15のカウント値をクリアする。
このように、本実施形態における制御用SRAM9から格納用SRAM10への制御学習値のコピーを行うタイミングとしては、EEPROM8へのデータ書き込み条件が成立した場合(ステップST3でYES判定された場合)ばかりでなく、このEEPROM8へのデータ書き込み条件が成立していなくても、制御用SRAMの記憶領域に2個以上の更新履歴が存在しており(具体的には、学習値カウンタ15のカウント値が「2」以上であり)且つ自動変速機の作動状態が格納用SRAM10へのコピー許可動作領域である場合(ステップST30及びステップST31において共にYES判定された場合)にも制御用SRAM9から格納用SRAM10への制御学習値のコピーが行われるようになっている(ステップST7’)。
そして、上記ステップST32で上記学習値カウンタ15のカウント値をクリアした後、上記格納用SRAM10にコピーされている制御学習値のデータをEEPROM8に格納することなく、制御学習値記憶動作を完了する。
本実施形態においても、上述した各参考例の場合と同様に、制御用SRAM9から格納用SRAM10へコピーすべき制御学習値の判断処理の負荷(CPU2に掛かる負担)が大幅に軽減されることになり、CPU2による自動変速機の通常制御動作が圧迫されてしまうことを回避できる。
また、本実施形態にあっては、EEPROM8へのデータ書き込み条件が成立していなくても、制御用SRAMの記憶領域に2個以上の更新履歴が存在しており且つ自動変速機の作動状態が格納用SRAM10へのコピー許可動作領域である場合に、制御用SRAM9から格納用SRAM10への制御学習値のコピーが行われるようになっている。このため、EEPROM8へのデータ書き込み条件が成立しない状態が継続されたとしても、制御用SRAM9に多量のデータ(格納用SRAM10へコピーされていないデータ)が溜まってしまうといった状況を回避することができる。その結果、制御用SRAM9から格納用SRAM10への制御学習値のコピーを行う際の処理負荷を大幅に軽減することができ、CPU2に掛かる処理負荷の軽減を図ることができる。
尚、本実施形態のように、EEPROM8へのデータ書き込み条件が成立していなくても、自動変速機の作動状態が格納用SRAM10へのコピー許可動作領域である場合に制御用SRAM9から格納用SRAM10への制御学習値のコピーを行うといった動作は、上記第1参考例に対しても適用が可能である。
(コピー許可動作領域の変形例)
上記実施形態におけるコピー許可動作領域は、自動変速機が変速動作を行っていない期間として設定されていた。本発明はこれに限らず、以下に述べる状態をコピー許可動作領域として設定してもよい。
(1)最高変速段時
例えば上記自動変速機が第1速段から第6速段まで変速可能な6速自動変速機であった場合に、現在の変速段が第6速段、つまり最高変速段(変速比の最も小さい変速段)である場合をコピー許可動作領域として設定する。
これは、車両の加速時(所謂キックダウンによる急加速を含まない加速時)に、自動変速機が最高変速段までシフトアップされた状況では、その後の変速動作(シフトダウン動作)はしばらくの間は行われないと推測でき、CPU2に掛かる負荷が比較的小さい状態が継続される可能性が高いと判断できる。このため、最高変速段時をコピー許可動作領域として設定し、制御用SRAM9から格納用SRAM10へのデータコピーを許容するものである。
(2)選択変速段と実変速段とが一致した時
例えば手動変速機能付きの自動変速機(所謂シーケンシャルモード付き自動変速機)において、運転者が手動により選択した変速段と自動変速機の実際の変速段とが一致した時点をコピー許可動作領域として設定する。
これは、自動変速機の実際の変速段が、運転者が手動により選択した変速段と一致した時点では、その後、変速動作(例えばシフトダウン動作)はしばらくの間は行われないと推測でき、CPU2に掛かる負荷が比較的小さい状態が継続される可能性が高いと判断できる。このため、選択変速段と実変速段とが一致した時をコピー許可動作領域として設定し、制御用SRAM9から格納用SRAM10へのデータコピーを許容するものである。
(3)コースト走行のシフトアップ時
例えば運転者によるアクセルペダルの踏み込みが解除(アクセルオフ)されて車両がコースト走行状態となり、それに伴って自動変速機がシフトアップした時点をコピー許可動作領域として設定する。
これは、コースト走行状態においてシフトアップした時点では、その後、変速動作はしばらくの間は行われないと推測でき、CPU2に掛かる負荷が比較的小さい状態が継続される可能性が高いと判断できる。このため、コースト走行のシフトアップ時をコピー許可動作領域として設定し、制御用SRAM9から格納用SRAM10へのデータコピーを許容するものである。
(制御用SRAM9の変形例)
次に、制御用SRAM9の変形例について説明する。本変形例は上記制御用SRAM9の内部に設けられた制御データ記憶領域の変形例である。
具体的には、上記制御用SRAM9の記憶領域として、上記駆動時アップシフト制御学習値の記憶領域94及び上記被駆動時アップシフト制御学習値の記憶領域95の内部に各変速種類毎の記憶領域を設け、それぞれに対して更新履歴記憶部を備えさせるようにしたものである。
図10は、駆動時アップシフト制御学習値の記憶領域94を示す図であって、自動変速機が6速変速である場合を示している。つまり、1st→2nd(1速段から2速段へのアップシフト)、2nd→3rd(2速段から3速段へのアップシフト)、3rd→4th(3速段から4速段へのアップシフト)、4th→5th(4速段から5速段へのアップシフト)、5th→6th(5速段から6速段へのアップシフト)それぞれの制御学習値記憶領域94a〜94eに対して更新履歴記憶部94f〜94jを備えさせた構成となっている。また、上記被駆動時アップシフト制御学習値の記憶領域95も同様の構成となっている。このような構成の記憶領域94a〜94eを備えた制御用SRAM9は上述した参考例及び実施形態の何れにも適用可能である。
このように各変速種類毎に記憶領域94a〜94e及び更新履歴記憶部94f〜94jを備えさせた場合、上述した第1参考例において図4で示したフローチャートや、第2参考例において図5で示したフローチャートや実施形態において図7及び図8で示したフローチャートにおける1回のルーチン(特に、ステップST4〜ステップST10の動作)に要する時間の短縮化を図ることができ、制御学習値の取得動作からEEPROM8へのデータ格納動作までに要する時間の短縮化を図ることが可能になる。
尚、上記駆動時ダウンシフト制御学習値の記憶領域96及び上記被駆動時ダウンシフト制御学習値の記憶領域97に対しても同様に、各変速種類毎の記憶領域を設け、それぞれに対して更新履歴記憶部を備えさせるようにしてもよい。
−他の実施形態−
上記実施形態では、上記制御用SRAM9の内部を8個の記憶領域91〜98に分割したものとしていた。この分割数はこれに限定されるものではなく、任意に設定可能である。