(57)【要約】【課題】ＣＰＵはＳＲＡＭ異常が自発的に行う学習又は受動的に行う学習の何れで発生したかを判断し受動的に行う学習で発生した場合に学習結果を表示させる技術を提供する。【解決手段】  電源第１系統より電力を受給し、不揮発性の第１記憶部にデータを書込む装置は、書込要求判定データを発生源に応じ記憶し、揮発性の第２記憶部に書込要求判定データが書込まれている場合に電源第２系統より電力を受給し、書込対象データと書込要因とを記憶する第３記憶部に記憶された書込対象データを第１記憶部に書込み、第３記憶部に記憶された書込要因がユーザ受付の場合に第１記憶部への書込対象データの書込結果を表示し、第３記憶部がデータ異常で初期化された場合に第２記憶部にユーザ受付を示す書込要求判定データが記憶されるときは第１記憶部への書込対象データの書込結果を表示する。従って制御結果を適切に表示できる。【選択図】図１１
2011100511.tif 000002
【特許請求の範囲】
【請求項１】
電源から導かれる第１系統より電力の供給を受け、不揮発性の第１記憶部にデータを書込むデータ書込装置であって、
所定の条件で、前記第１記憶部へのデータの書込要求を発生する第１要求発生手段と、
ユーザから受け付けて、前記書込要求を発生する第２要求発生手段と、
前記書込要求の発生を判定するための書込要求判定データを、発生源に応じて記憶する、揮発性の第２記憶部と、
発生源に応じて記憶された前記書込要求判定データに基づいて前記書込要求が発生した要因を生成する書込要因生成手段と、
前記電源から導かれる第２系統より電力の供給を受け、書込対象データと前記書込要因とを記憶する第３記憶部と、
前記第２記憶部に前記書込要求判定データが書込まれている場合に、前記第３記憶部に記憶された前記書込対象データを、前記第１記憶部に書込む書込手段と、
前記第３記憶部に記憶されているデータの異常が判定されると前記第３記憶部を初期化する初期化手段と、
前記第３記憶部に記憶された前記書込要因が前記ユーザから受け付けたものである場合に、前記第１記憶部への前記書込対象データの書込結果を表示装置へ表示させる第１表示制御手段と、
前記３記憶部が初期化された場合に、前記第２記憶部にユーザが受け付たことを示す書込要求判定データが記憶されているときには、前記第１記憶部への前記書込対象データの書込結果を表示装置へ表示させる第２表示制御手段と、
を備えることを特徴とするデータ書込装置。
【請求項２】
請求項１に記載のデータ書込装置において、
前記表示装置は、前記データ書込装置に対して着脱可能な可搬性装置であることを特徴とするデータ書込装置。
【請求項３】
請求項２に記載のデータ書込装置において、
前記受付手段は、前記可搬性装置を介して前記ユーザから前記書込要求を受け付けることを特徴とするデータ書込装置。
【請求項４】
請求項１に記載のデータ書込装置において、
前記表示装置は、前記車両に固定的に配置された表示灯であることを特徴とするデータ書込装置。
【請求項５】
請求項１ないし４に記載のデータ書込装置において、
前記受付手段は、前記車両に固定的に配置されるユーザ操作手段を介して前記ユーザから前記書込要求を受け付けることを特徴とするデータ書込装置。
【請求項６】
請求項１ないし５のいずれかに記載のデータ書込装置において、
前記車両のエンジンを自動で停止／始動するアイドリングストップ制御を実施する制御手段、
をさらに備え、
前記対象データは、前記アイドリングストップ制御に関する学習データであることを特徴とするデータ書込装置。
【請求項７】
請求項１ないし６に記載のデータ書込装置は、車両に搭載される電子制御装置であることを特徴とするデータ書込装置。
【請求項８】
電源から導かれる第１系統より電力の供給を受け、不揮発性の第１記憶部にデータを書込むデータ書込方法であって、
所定の条件で、前記第１記憶部へのデータの書込要求を発生する第１要求発生工程と、
ユーザから受け付けて、前記書込要求を発生する第２要求発生工程と、
前記書込要求の発生を判定するための書込要求判定データを、発生源に応じて、揮発性の第２記憶部へ書込む工程と、
発生源に応じて記憶された前記書込要求判定データに基づいて前記書込要求が発生した書込要因を生成し、生成した書込要因を、前記電源から導かれる第２系統より電力の供給を受ける第３記憶部へ書込む書込要因生成工程と、
前記第２記憶部に前記書込要求判定データが書込まれている場合に、前記第３記憶部に記憶された前記書込対象データを、前記第１記憶部に書込む工程と、
前記第３記憶部に記憶されているデータの異常が判定されると前記第３記憶部を初期化する初期化工程と、
前記第３記憶部に記憶された前記書込要因が前記ユーザから受け付けたものである場合に、前記第１記憶部へのデータの書込結果を表示装置へ表示させる第１表示制御工程と、
前記３記憶部が初期化された場合に、前記第２記憶部にユーザが受け付たことを示す書込要求判定データが記憶されているときには、前記第１記憶部への前記書込対象データの書込結果を表示装置へ表示させる第２表示制御工程と、
を備えることを特徴とするデータ書込方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを書込制御するデータ書込装置の技術に関する。
【背景技術】
【０００２】
従来より、制御対象を制御する電子制御装置においては、制御対象の経年変化や固体差などの影響を受けずに、最適な制御を実行できるよう、過去の目標制御値と目標制御値に基づいて実際に制御対象が制御された実測値との差分（オフセット）を考慮した制御値（学習値）を予めＥＥＰＲＯＭへ書込んでおくとともに、次の制御の際にはこの学習値に基づいて制御対象を制御する、学習制御、及び、データ書込制御が適用されている。
【０００３】
電子制御装置のＣＰＵがＥＥＰＲＯＭへ学習値を書込む際には、目標制御値と外部センサから入力した実測値との差分に基づく学習値の算出を、ワーキングエリアであるＲＡＭにおいて実行し、算出した学習値をＥＥＰＲＯＭへ書込む。
【０００４】
その学習中に、ユーザによりシステム電源がオフされると、電源から電子制御装置への電力供給が停止されるため、ＲＡＭに書込まれているデータが消去されてしまい、ＥＥＰＲＯＭへ学習値を書込むことができなくなってしまうという不都合が生じる。
【０００５】
そこで、ＲＡＭに替えて、前述した電力供給が停止されても電源からＲＡＭへ常に電力が供給されるＳＲＡＭを用いることによってその不都合を解消している。つまり、学習中にその電力供給が停止されたとしても、ＳＲＡＭに書込まれている値は保持されるため、その電力供給が再開された際は、保持されている値に基づいて学習制御を継続でき、ＥＥＰＲＯＭに学習値が書込まれないという不都合を回避することができる。
【０００６】
例えば、特許文献１に、このような、ＳＲＡＭを用いて学習制御を実行する技術が開示されている。
【０００７】
この学習制御は、電子制御装置が制御対象を自発的に制御する際に行う場合と、ユーザ操作によって外部装置から命令を受けて受動的に行う場合とがある。外部装置から命令を受けた電子制御装置が学習制御を実行する場合は、外部装置の表示部において、学習制御の成功や失敗を表示することができるため、ユーザは操作結果を認識することができる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平１０−２５２５４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかし、電子制御装置のＣＰＵが学習中に、電気的なノイズなどの影響によってＳＲＡＭの値が変化するＳＲＡＭ異常を判定した場合は、ＳＲＡＭを初期化する機能を働かせるため、ＳＲＡＭの全てのデータが消去されてしまい、外部装置の表示部へ操作結果を表示させることができなくなってしまう虞がある。
【００１０】
つまり、電子制御装置のＣＰＵは、自発的に実行する学習制御において、ＳＲＡＭ異常を判定した場合には、ユーザへリアルタイムに学習結果を知らせる必要はないが、外部装置から命令を受けて受動的に実行する学習制御においてＳＲＡＭ異常を判定した場合には、学習結果を外部装置の表示部へ表示させて、すぐにユーザへ知らせる必要があるところ、ＣＰＵが自発的に学習制御を実行しているのか、受動的に学習制御を実行しているのか、を示すデータについてもＳＲＡＭへ記憶させてしまっていることから、そのデータも同時に消去されてしまっているため、ＳＲＡＭ異常を外部装置の表示部へ表示させることができない虞がある。
【００１１】
本発明は、上記課題に鑑みてなされたものであり、電子制御装置のＣＰＵはＳＲＡＭ異常が、自発的に実行する学習制御において発生したのか、外部装置から命令を受けて受動的に実行する学習制御において発生したのかを判断して、ＳＲＡＭ異常が受動的に実行する学習制御において発生した場合に、確実に、学習結果を外部装置の表示部へ表示をさせることができる技術を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するため、請求項1の発明は、電源から導かれる第１系統より電力の供給を受け、不揮発性の第１記憶部にデータを書込むデータ書込装置であって、所定の条件で、前記第１記憶部へのデータの書込要求を発生する第１要求発生手段と、ユーザから受け付けて、前記書込要求を発生する第２要求発生手段と、前記書込要求の発生を判定するための書込要求判定データを、発生源に応じて記憶する、揮発性の第２記憶部と、発生源に応じて記憶された前記書込要求判定データに基づいて前記書込要求が発生した要因を生成する書込要因生成手段と、前記電源から導かれる第２系統より電力の供給を受け、書込対象データと前記書込要因とを記憶する第３記憶部と、前記第２記憶部に前記書込要求判定データが書込まれている場合に、前記第３記憶部に記憶された前記書込対象データを、前記第１記憶部に書込む書込手段と、前記第３記憶部に記憶されているデータの異常が判定されると前記第３記憶部を初期化する初期化手段と、前記第３記憶部に記憶された前記書込要因が前記ユーザから受け付けたものである場合に、前記第１記憶部への前記書込対象データの書込結果を表示装置へ表示させる第１表示制御手段と、前記３記憶部が初期化された場合に、前記第２記憶部にユーザが受け付たことを示す書込要求判定データが記憶されているときには、前記第１記憶部への前記書込対象データの書込結果を表示装置へ表示させる第２表示制御手段と、を備えることを特徴とする。
【００１３】
また、請求項２の発明は、請求項１に記載のデータ書込装置において、前記表示装置は、前記データ書込装置に対して着脱可能な可搬性装置であることを特徴とする。
【００１４】
また、請求項３の発明は、請求項２に記載のデータ書込装置において、前記受付手段は、前記可搬性装置を介して前記ユーザから前記書込要求を受け付けることを特徴とする。
【００１５】
また、請求項４の発明は、請求項１に記載のデータ書込装置において、前記表示装置は、前記車両に固定的に配置された表示灯であることを特徴とする。
【００１６】
また、請求項５の発明は、請求項１ないし４に記載のデータ書込装置において、前記受付手段は、前記車両に固定的に配置されるユーザ操作手段を介して前記ユーザから前記書込要求を受け付けることを特徴とする。
【００１７】
また、請求項６の発明は、請求項１ないし５のいずれかに記載のデータ書込装置において、前記車両のエンジンを自動で停止／始動するアイドリングストップ制御を実施する制御手段、をさらに備え、前記対象データは、前記アイドリングストップ制御に関する学習データであることを特徴とする。
【００１８】
また、請求項７の発明は、請求項１ないし６に記載のデータ書込装置は、車両に搭載される電子制御装置であることを特徴とする。
【００１９】
また、請求項８の発明は、電源から導かれる第１系統より電力の供給を受け、不揮発性の第１記憶部にデータを書込むデータ書込方法であって、所定の条件で、前記第１記憶部へのデータの書込要求を発生する第１要求発生工程と、ユーザから受け付けて、前記書込要求を発生する第２要求発生工程と、前記書込要求の発生を判定するための書込要求判定データを、発生源に応じて、揮発性の第２記憶部へ書込む工程と、発生源に応じて記憶された前記書込要求判定データに基づいて前記書込要求が発生した書込要因を生成し、生成した書込要因を、前記電源から導かれる第２系統より電力の供給を受ける第３記憶部へ書込む書込要因生成工程と、前記第２記憶部に前記書込要求判定データが書込まれている場合に、前記第３記憶部に記憶された前記書込対象データを、前記第１記憶部に書込む工程と、前記第３記憶部に記憶されているデータの異常が判定されると前記第３記憶部を初期化する初期化工程と、前記第３記憶部に記憶された前記書込要因が前記ユーザから受け付けたものである場合に、前記第１記憶部へのデータの書込結果を表示装置へ表示させる第１表示制御工程と、前記３記憶部が初期化された場合に、前記第２記憶部にユーザが受け付たことを示す書込要求判定データが記憶されているときには、前記第１記憶部への前記書込対象データの書込結果を表示装置へ表示させる第２表示制御工程と、を備えることを特徴とする。
【発明の効果】
【００２０】
請求項１ないし８の発明によれば、データ書込装置が、前記第２記憶部の異常が、所定の条件でデータの書込要求が発生したことによって実行する書込制御において発生したのか、ユーザから受け付けて実行する書込制御において発生したのか、を判断して、前記第２記憶部の異常が、ユーザから受け付けて実行する学習制御において発生した場合に、外部装置の表示部へ学習結果を表示をさせることができる。
【００２１】
また、請求項２の発明によれば、学習結果を前記データ書込装置に対して着脱可能な可搬性装置へ表示することができる。
【００２２】
また、請求項３の発明によれば、前記書込要求を可搬性装置を介してユーザから受け付けることができる。
【００２３】
また、請求項４の発明によれば、学習結果を車両に固定的に配置された表示灯へ表示することができる。
【００２４】
また、請求項５の発明によれば、前記書込要求を前記車両に固定的に配置されるユーザ操作手段を介してユーザから受け付けることができる。
【００２５】
また、請求項６の発明によれば、前記対象データを、前記アイドリングストップ制御に関する学習データとすることができる。
【００２６】
また、請求項６の発明によれば、データ書込装置は、車両に搭載される電子制御装置とすることができる。
【図面の簡単な説明】
【００２７】
【図１】図１は、車両の電子制御システムを示す図である。
【図２】図２は、アイドリングストップ電子制御装置のブロック図である。
【図３】図３は、外部装置を示す図である。
【図４】図４は、外部装置における表示部の表示内容を示す図である。
【図５】図５は、制御内容を示すフローチャート図である。
【図６】図６は、制御内容を示すフローチャート図である。
【図７】図７は、制御内容を示すフローチャート図である。
【図８】図８は、制御内容を示すフローチャート図である。
【図９】図９は、制御内容を示すフローチャート図である。
【図１０】図１０は、制御内容を示すフローチャート図である。
【図１１】図１１は、制御内容を示すフローチャート図である。
【図１２】図１２は、制御内容を示すフローチャート図である。
【図１３】図１３は、外部装置を示す図である。
【図１４】図１４は、外部装置における表示部の表示形態を示す図である。
【発明を実施するための形態】
【００２８】
本発明は、データを書込制御する技術に関するものであり、データ書込制御を実行する全ての技術分野に適用されるものであるが、便宜上、車両の電子制御を実施の形態として、添付図面を参照しながら説明を行う。
【００２９】
＜代表の形態＞
（システムブロック図）
図１は第１の実施形態における、車両の電子制御システムを示す。車両の電子制御システムは、例えば、ＣＡＮ（Ｃｏｎｔｒｏｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）と呼ばれる車載ネットワークＬに、複数の電子制御装置が接続されている。複数の電子制御装置は、各電子制御装置が制御する制御対象と接続されている。これら電子制御装置は、例えば、ＥＣＵ（Ｅｌｅｃｔｒｏｎｉｃ  ｃｏｎｔｒｏｌ  Ｕｎｉｔ）と呼ばれる。
【００３０】
複数の電子制御装置のうちゲートウェイ電子制御装置６は、複数の車載ネットワークにおいて伝送されるデータを交通制御する。複数の車載ネットワークには、車両の走行に関連する電子制御装置が接続されたパワー系ネットワークＬ１と、情報提供に関連する電子制御装置が接続された情報系ネットワークＬ２と、電装品に関連する電子制御装置が接続されたボディ系ネットワークＬ３などがある。なお、メータ電子制御装置５は単独でゲートウェイ電子制御装置６に接続される。
【００３１】
パワー系ネットワークＬ１には、アイドリングストップ電子制御装置１、エンジン電子制御装置２、バッテリ電子制御装置３、及び、トランスミッション電子制御装置４などの電子制御装置が接続されている。
【００３２】
アイドリングストップ電子制御装置１は、制御部が主にエンジン回転数センサ１２などからの入力値に基づいて、車両のエンジンをクランキング制御する際にその回転力を補助させるための制御対象であるスタータモータ１１を制御する。エンジン電子制御装置２は、制御部が主にアクセルセンサ１６などからの入力値に基づいて、エンジントルクを制御するための制御対象であるスロットルモータ１３、インジェクタ１４、及び、点火プラグ１５を制御する。バッテリ電子制御装置３は、制御部が主にバッテリの電圧センサ１７などからの入力値に基づいて、電力を蓄放電させるための制御対象であるスイッチ１８を制御する。トランスミッション電子制御装置４は、制御部が主に変速レバーに接続される変速段センサ１９などからの入力値に基づいて、変速段を変速させるための制御対象であるソレノイド２０などを制御する。
【００３３】
情報系ネットワークＬ２には、ナビゲーション電子制御装置７などが接続されている。
【００３４】
ナビゲーション電子制御装置７は、制御部が主にＧＰＳ衛星から受信した位置データと記憶部に記憶されている地図データを制御対象である表示部において表示制御する。
【００３５】
ボディ系ネットワークＬ３には、エアコン電子制御装置８、ライト電子制御装置９、及び、ワイパ電子制御装置１０が接続されている。
【００３６】
エアコン電子制御装置８は、制御部が主に温度センサなどからの入力値に基づいて、車室内の空気を調整するための制御対象であるモータ２１を制御する。ライト電子制御装置９は、制御部が主にユーザ操作によりオンにされた信号に基づいて、制御対象であるヘッドライト２２などを点灯制御する。ワイパ電子制御装置１０は、制御部が主にユーザ操作によりオンにされた信号に基づいて、制御対象であるワイパモータ２３を制御する。
【００３７】
単独でゲートウェイ電子制御装置６に接続されているメータ電子制御装置５は、制御部が主に各電子制御装置からの伝送される入力値や、各センサからの入力値に基づいて、制御対象である車速メータやエンジン回転数メータなどを表示制御する。
【００３８】
また、外部装置Ｘは、例えば、パワー系ネットワークの車載ネットワーク側コネクタ３３へ外部装置Ｘに備わるケーブルのコネクタ３２を接続し、ユーザ操作を受け付けて、車載ネットワークＬ１に接続されている電子制御装置へその操作に応じた制御を実行させる。つまり、外部装置Ｘは車両の電子制御システムへ着脱可能な表示装置と言える。
【００３９】
（電子制御装置）
本実施の形態で説明する技術は、何れの電子制御装置においても適用可能であるが、便宜上、アイドリングストップ電子制御装置１に適用した場合を例とし、添付図面を参照しながら説明を行う。図２にアイドリングストップ電子制御装置１のシステムブロックを示す。
【００４０】
アイドリングストップ電子制御装置１は、アイドリングストップ機能を発揮するための制御プログラムが書込まれている不揮発性記憶部であるＲＯＭ２４、学習制御値や制御履歴データが書込まれ、書込みと消去が可能な不揮発性記憶部であって第１の記憶部であるＥＥＰＲＯＭ２５、制御部が演算する際に一時的に値を書込む揮発性記憶部であって、第２の記憶部であるＮＲＡＭ２６、ＥＥＰＲＯＭ２５などに書込まれるデータをバックアップデータとして書込まれ、電源Ｂから導かれる第２系統Ｂ２より電力の供給を受ける不揮発性記憶部であって第３の記憶部であるＳＲＡＭ（ＳＴＡＮＤＢＹ  ＲＡＭ）２７、及び、ＥＥＰＲＯＭ２５に書込まれている制御プログラムと、センサ１２や車載ネットワークＬなどからの入力信号と、に基づいてスタータモータ１１などを制御するアイドリングストップ機能を発揮する。ＣＰＵ２８を備える。なお、ＣＰＵ２８は、更に、データの書込要求を受け付けて学習制御をする機能、学習結果をＲＯＭ２４やＳＲＡＭ２７へデータを書込む機能、又は、制御プログラムに基づいてデータ書込要求を出力する機能を発揮する。
【００４１】
なお、アイドリングストップ電子制御装置１は、電源Ｂから導かれる第１系統Ｂ１より電力の供給を受けて、アイドリングストップ機能を発揮させる。この第１系統Ｂ１は、ユーザによりイグニッションスイッチ、及び、プッシュスタートスイッチなどのユーザスイッチＳＷが操作されたことによって、車両の制御システムが起動される際に、アイドリングストップ電子制御装置１などの電子制御装置へ電力の供給を行う。他方で、第２系統Ｂ２は、ユーザスイッチＳＷの操作に関係なくＳＲＡＭへ電力の供給を行う。
【００４２】
（アイドリングストップ機能）
アイドリングストップ機能とは、燃費を抑制するエンジン制御であって、ユーザスイッチＳＷの操作によりエンジンを始動させてから、ユーザによるユーザスイッチＳＷの操作によりエンジンを停止させるまでにおいて、車速が０になって車両が停車するなどの条件を満たすとエンジンを停止し、その後にユーザのアクセル操作を検知するなどの条件を満たすとエンジンを始動する機能をいう。この機能は、アイドリングストップ電子制御装置１のＣＰＵ２８が他の電子部品や他の電子制御装置などの制御要素と協働することによって発揮される。
【００４３】
（外部装置）
次に、外部装置Ｘについて説明する。外部装置Ｘは、例えば、図３に示すような、スキャンツールであり、外部装置Ｘは、ユーザからデータ書込要求を受け付ける操作部３０、データ書込要求の書込結果を表示する表示部２９、操作部３０が受け付けた内容を各電子制御装置へ出力するとともに表示部２９へ書込結果などを出力する制御部３９、外部装置Ｘと車両の電子制御システムとを接続する接続ケーブル３１、接続ケーブル３１と車両の電子制御システムの車載ネットワーク側コネクタ３３とを接続するケーブル側コネクタ３２を備える。
【００４４】
外部装置Ｘが備える制御部３９は、ユーザが操作部３０を操作して指定した電子制御装置へ学習制御させて学習値をＥＥＰＲＯＭ２５へ書込ませる、又は、直接データをＥＥＰＲＯＭ２５へ書込ませる。ユーザが外部装置Ｘによりアイドリングストップ電子制御装置１へ学習制御させて学習値をＥＥＰＲＯＭ２５へ書込ませる場合は、ユーザが外部装置Ｘの操作部３０において、アイドリングストップ電子制御装置１を指定するＩＤコードと、学習制御させたい学習・書込制御コードとを入力し、操作部によって受け付けられたこれらコードを、制御部３９が車載ネットワークＬへ出力する。
【００４５】
次にアイドリングストップ電子制御装置１のネットワークドライバが、車載ネットワークＬ１へ流れているＩＤコードデータに基づいてアイドリングストップ電子制御装置１宛であることを認識して、ＩＤコードに紐付いている学習・書込制御コードを取り込む。アイドリングストップ電子制御装置１のＣＰＵ２８は取り込んだ学習・書込制御コードに基づいて学習制御を実行しＥＥＰＲＯＭへ学習値を書込むとともに、この書込みが終了すると書込結果のデータと外部装置Ｘを指定するＩＤコードを車載ネットワークＬ１へ出力する。
【００４６】
逆に、外部装置Ｘが車載ネットワークＬ１へ流れているＩＤコードデータに基づいて外部装置Ｘ宛であることを認識すると、ＩＤコードに紐付いている書込結果データを取り込んで、外部装置Ｘの３９が書込結果を表示部２９へ出力する。
【００４７】
外部装置Ｘの制御部３９が表示部２９へ表示させる内容を図４に基づいて説明する。外部装置Ｘは、自らが機能するための電力を車両の電源から賄うようになっているため、ユーザによるユーザスイッチＳＷの操作により車両の電子制御システムへ電源が投入されている状態で、外部装置Ｘのケーブル側コネクタ３２が車載ネットワーク側コネクタ３３に接続されることによって電力が供給されて機能する。外部装置Ｘへ電力が供給されると、外部装置Ｘの制御部３９は表示部２９へ所定の初期画面を表示させる。つまり、外部装置Ｘに電力が供給された初期の状態では、表示部２９へ図４におけるＩに示す初期画面を表示する。
【００４８】
また、外部装置Ｘがアイドリングストップ電子制御装置１へユーザ操作に基づく書込要求を出力し、アイドリングストップ電子制御装置１が書込みを実行している間は、表示部２９へ図４におけるＩＩに示す書込中を表示する。
【００４９】
また、外部装置Ｘがアイドリングストップ電子制御装置１へユーザ操作に基づく書込要求を出力し、アイドリングストップ電子制御装置１が書込みを正常に終了させた場合に送信されるその旨のデータに基づいて、表示部２９へ図４におけるＩＩＩに示す書込成功を表示する。
【００５０】
また、外部装置Ｘがアイドリングストップ電子制御装置１へユーザ操作に基づく書込要求を出力し、アイドリングストップ電子制御装置１が書込みを正常に終了しなかった場合に送信されるその旨のデータに基づいて、表示部２９へ図４におけるＩＶに示す書込失敗を表示する。従って、アイドリングストップ電子制御装置１のＣＰＵ２８が車載ネットワークＬへ書込結果データを出力する機能を、ＣＰＵ２８が備える表示機能と考えることもできる。
【００５１】
（学習・書込制御）
アイドリングストップ電子制御装置１のＣＰＵ２８が実行する学習・書込制御には、車両制御プログラムによる学習・書込制御と、ユーザ指令による学習・書込制御とがある。以降、これらを区別して説明する。
【００５２】
（車両制御プログラムよる学習・書込制御）
アイドリングストップ電子制御装置１のＣＰＵ２８が実行する、車両制御プログラムによる学習・書込制御とは、例えば、ユーザによるユーザスイッチＳＷの操作によりエンジンを始動させてから、ユーザによるユーザスイッチＳＷの操作によりエンジンを停止させるまでを、１回（１トリップ）とし、このトリップ数が所定回数（例えば、５０回）を超えるなどの所定の条件を満たす毎に、過去の目標制御値と目標制御値に基づいて制御対象が実際に制御された実測値との差分（オフセット）を考慮した制御値（学習値）を予めＥＥＰＲＯＭへ書込んでおく制御を、車両制御の実行とともに行う制御をいう。これにより、経年変化によって目標制御値とは異なった制御結果になるという事態を回避でき、経年変化により制御対象が劣化しても精度の高い制御結果を得ることができる。
【００５３】
この他にも、トリップ数が所定回数（例えば、５０回）を超えるなどの所定の条件を満たす毎に、車両が位置するエリアの勾配を測定するためのセンサ（例えば、Ｇセンサ）の原点を学習してＥＥＰＲＯＭへ書込むプログラムが、ＲＯＭ２４に書込まれており、ＣＰＵ２８がこのプログラムに基づいて実行する制御がある。
【００５４】
なお、このような機能を担う、アイドリングストップ電子制御装置１、車両の電子制御システム、又は、車両を、データ書込装置と考えることもできる。
【００５５】
（ユーザ指令による学習・書込制御）
ユーザ指令による学習・書込制御とは、ユーザが外部装置Ｘを操作して、車載ネットワークＬを介して、アイドリングストップ電子制御装置１へ、ユーザが所望する学習・書込制御を実行させる制御をいう。例えば、アイドリングストップ電子制御装置１が故障したことにより、ディーラや修理工場において、新しいアイドリングストップ電子制御装置１と交換する際に、ユーザが外部装置Ｘにより前述するような操作をして、アイドリングストップ電子制御装置１へ所望する学習・書込み制御を実行させる。
【００５６】
ユーザが所望する学習・書込制御には、前述するような学習・書込制御がある。
【００５７】
（ユーザ指令による書込制御）
ユーザ指令による書込制御とは、ユーザが外部装置Ｘを操作して、車載ネットワークＬを介して、アイドリングストップ電子制御装置１へ、ユーザが所望する書込制御を実行させる制御をいう。例えば、ディーラや修理工場において、アイドリングストップ電子制御装置１が故障したことにより、新しいアイドリングストップ電子制御装置１と交換する場合に、旧アイドリングストップ電子制御装置１のＥＥＰＲＯＭに書込まれている学習値やパラメータを、ユーザが外部装置Ｘによりアイドリングストップ電子制御装置１へ前述するような操作をし、書込ませる制御を実行させる。
【００５８】
ユーザがアイドリングストップ電子制御装置１へ書込ませるデータには、スタータモータ１１の駆動回数などがあり、旧アイドリングストップ電子制御装置１から読み出したスタータモータ１１の駆動回数を、ユーザが外部装置Ｘを前述した操作をして、交換したアイドリングストップ電子制御装置１のＥＥＰＲＯＭ２５へ書込ませる。
【００５９】
なお、このスタータモータ１１の駆動回数は、アイドリングストップ電子制御装置１において、所定回数（例えば、３６万回）以上になった場合に、スタータモータ１１が寿命が尽きたとしてアイドリングストップ機能を無効にする制御に利用する。
【００６０】
なお、前述したとおり、ユーザ指令による学習・書込制御やユーザ指令による書込制御は、ユーザが外部装置Ｘを操作することにより実行されるため、外部装置Ｘによる学習・書込制御、及び、外部装置Ｘによる書込制御と考えることもできる。
【００６１】
（学習・書込制御処理）
以降、前述した、学習・書込制御の詳細な処理内容を、図５、図６、図７、図８、図９、図１０、及び、図１１に基づいて説明する。
【００６２】
なお、アイドリングストップ電子制御装置１のＣＰＵ２８が実行する学習・書込制御処理には、書込要求判定処理、学習・書込処理、ＳＲＡＭ学習処理、ＥＥＰＲＯＭ書込処理、ＳＲＡＭ書込異常判定処理、特定ＳＲＡＭ書込異常判定処理、及び、外部装置応答処理があり、ＣＰＵ２８はマルチタスク機能により、予め各処理に割り当てた時間ごとに、各処理を並列に実行する。もちろん、アイドリングストップ電子制御装置１のＣＰＵ２８は、アイドリングストップ機能などの他の機能を発揮するための処理についても、そのマルチタスク機能により実行している。
【００６３】
（書込要求判定処理）
図５は、アイドリングストップ電子制御装置１のＣＰＵ２８が、車両制御プログラムによる学習・書込制御、又は、外部装置Ｘによる学習・書込制御の何れにより、ＥＥＰＲＯＭ２５へデータを書込む要求が発生したのかを判定する。つまり、図５は、ＣＰＵ２８が、それらのうち何れが発生源であるかを判定するとともに、書込要求が発生したことを判定した場合に、実行する処理を示す図である。なお、図５に示す処理を書込要求判定処理と称し、ＣＰＵ２８はこの書込要求判定処理を所定の周期（例えば、１６ｍｓ）で実行する。
【００６４】
ステップＳ１において、ＣＰＵ２８は、車両制御プログラムによる書込要求があるか否かを判定する。詳述すると、ＣＰＵ２８は、車両制御プログラムによる書込要求を示すパラメータがＮＲＡＭ２６に入力されていないかどうかを判定する。ＣＰＵ２８は車両制御プログラム書込要求を示すパラメータがＮＲＡＭ２６に入力されていると判定すると、ステップＳ２へ移行する（ステップＳ１にてＹＥＳ）。ＣＰＵ２８は車両制御プログラムによる書込要求を示すパラメータがＮＲＡＭ２６に入力されていないと判定すると、ステップＳ４へ移行する（ステップＳ１にてＮＯ）。
【００６５】
ここで、書込要求を示すパラメータは、ＣＰＵ２８が車両制御プログラムによって学習・書込制御を実行する際に出力され発生する。又は、外部装置ＸによってＣＰＵ２８が学習・書込制御を実行する際に出力され発生する。
【００６６】
ステップＳ２において、ＣＰＵ２８は、ステップＳ１において書込要求を示すパラメータが車両制御プログラムを実行することによって発生したものであるため、ＮＲＡＭに設定されている車両制御プログラム用要求受付フラグをオンにする。つまり、ＣＰＵ２８は、後述する処理において、書込要求の発生を判定するための車両制御プログラム用要求受付フラグをオンにする。
【００６７】
ステップＳ３において、ＣＰＵ２８は、ステップ２においてオンにされた車両制御プログラム用書込要求受付フラグを参照して、ＳＡＲＡＭ２７に設定されている書込要因ステータスを、車両制御プログラムであることを示す「１」に書き換える。つまり、ＣＰＵ２８は、車両制御プログラム用書込要求受付フラグに基づいて、書込要因ステータスを生成し、後述する処理において、書込要因ステータスを参照し、書込む要因が何であるかを判定できるようにしている。
【００６８】
ステップＳ４において、ＣＰＵ２８は、外部装置Ｘによる書込要求があるか否かを判定する。詳述すると、ＣＰＵ２８は、外部装置Ｘによる書込要求を示すパラメータがＮＲＡＭ２６に入力されていないかどうかを判定する。ＣＰＵ２８は外部装置Ｘによる書込要求を示すパラメータがＮＲＡＭ２６に入力されていると判定すると、ステップＳ５へ移行する（ステップＳ４にてＹＥＳ）。ＣＰＵ２８は外部装置Ｘによる書込要求を示すパラメータがＮＲＡＭ２６に入力されていないと判定すると、リターンへ移行する（ステップＳ４にてＮＯ）。
【００６９】
ステップＳ５において、ＣＰＵ２８は、ステップＳ４において書込要求を示すパラメータが外部装置Ｘにより発生したものであるため、ＮＲＡＭに設定されている外部装置Ｘ用要求受付フラグをオンにする。つまり、ＣＰＵ２８は、後述する処理において、書込要求の発生を判定するための外部装置Ｘ用要求受付フラグをオンにする。なお、要求受付フラグについて、車両制御プログラム用と外部装置Ｘ用を設けるのは、ＣＰＵ２８が、後述する処理において、書込要求の発生源を特定するためである。
【００７０】
ステップＳ６において、ＣＰＵ２８は、ステップ５においてオンにされた外部装置Ｘ用書込要求受付フラグを参照して、ＳＲＡＭ２７に設定されている書込要因ステータスを、外部装置Ｘであることを示す「２」に書き換える。つまり、ＣＰＵ２８は、外部装置Ｘ用書込要求受付フラグに基づいて、書込要因ステータスを生成し、後述する処理において、書込要因ステータスを参照し、書込む要因が何であるかを判定できるようにしている。
【００７１】
車両制御プログラム用要求受付フラグや外部装置Ｘ用要求受付フラグは、ユーザスイッチＳＷが操作されてシステム電源がオフされた際に、自動的にオフさせたいフラグであるため、ＮＲＡＭ２６に設定している。つまり、それらフラグは、揮発性記憶メモリであるＮＲＡＭ２６に設定されているため、システム電源がオフにされるのと連動して消去されオフになるようにしている。
【００７２】
従って、これらフラグはＳＲＡＭ２７よりもＮＲＡＭ２６に設定するほうが好ましい。
【００７３】
また、書込要因ステータスは、ＣＰＵ２８が、学習・書込制御を実行中にシステム電源がオフされても、次のシステム電源オンの際に、前回トリップで中断したその制御においてどのような要因に基づく要求があったのかをわかるようにし、書込要因に応じた制御を実行できるようにするために、システム電源がオフにされてもデータが消去されずに残されているＳＲＡＭ２７に設定している。
【００７４】
書込要因に応じた制御とは、ＣＰＵ２８が、学習・書込制御実行中にシステム電源がオフになっても、再びシステム電源をオンした際は、ＳＲＡＭ２７に設定され、消去されずに残っている書込要因ステータスを参照し、書込要因ステータスが車両制御プログラムを示す「１」の場合に、同じく消去されずに残っているＳＲＡＭ２７のデータに基づいてその制御を継続し、書込要因ステータスが外部装置Ｘを示す「２」の場合に、その制御を継続せずに外部装置Ｘの表示部２９へ書込みが失敗したことを表示させる制御である。
【００７５】
外部装置Ｘは、前述したように、自らが機能するための電力を車両の電源から賄うようになっており、ユーザによるユーザスイッチＳＷの操作により車両の電子制御システムへ電源が投入されている状態で、外部装置Ｘのケーブル側コネクタ３２が車載ネットワークＬ１の接続コネクタ３３に接続されることによって電力が供給されて機能する。このため、外部装置Ｘにより学習・書込制御を実行中にシステム電源がオフにされ、再びシステム電源がオンにされると、外部装置Ｘは、電力が供給された初期の状態であるため、表示部２９へ初期画面を表示する。その初期画面を見たユーザは、通常、学習・書込制御が失敗したものと理解するが、その制御を継続してしまうと、ユーザの理解とは逆に実際にはその制御は成功することになって、ユーザの理解と制御結果に矛盾が発生してしまう。そこで、ＣＰＵ２８は、書込要因ステータスが外部装置Ｘを示す「２」である場合は、その制御の継続を実行せずに外部装置Ｘの表示部２９へ書込みが失敗したことを表示させて、ユーザの理解と制御結果に矛盾が無いようにしている。
【００７６】
従って、書込要因ステータスはＮＲＡＭ２６よりもＳＲＡＭ２７に設定するほうが好ましい。
【００７７】
なお、後述する他のフラグは、前述するようにシステム電源のオフに伴ってオフにされる、ＣＰＵ２８がエンド処理やイニシャル処理を実行する際にオフにする、又は、ＣＰＵ２８がそのフラグの目的が終了するごとにオフにするなど各機能に適した制御が実行される。更に、書込要因ステータスを含め、後述する全てのステータスは、ＣＰＵ２８が、イニシャル処理を実行する際に０に書き換える、又は、そのステータスの目的が終了するごとに０に書き換えるなど各機能に適した制御が実行される。
【００７８】
（学習・書込処理）
図６は、アイドリングストップ電子制御装置１のＣＰＵ２８が、要求受付フラグがオンされたか否かを判定するとともに、要求受付フラグがオンされたことを判定した場合に、実行する処理を示す図である。なお、図６に示す処理を学習・書込処理と称し、ＣＰＵ２８はこの学習・書込処理を所定の周期（例えば、１６ｍｓ）で実行する。
【００７９】
ステップＳ７において、ＣＰＵ２８は、車両制御プログラム用書込要求受付フラグ、又は、外部装置Ｘ用書込受付フラグの何れかの書込要求受付フラグがオンかどうかを判定する。ＣＰＵ２８は何れかの書込要求受付フラグがオンされていると判定する場合は、ステップＳ８へ移行する（ステップＳ７にてＹＥＳ）。ＣＰＵ２８は書込要求受付フラグがオンされていないと判定する場合は、リターンへ移行する（ステップＳ７にてＮＯ）。
【００８０】
ステップＳ８において、ＣＰＵ２８は、ＳＲＡＭをワーキングエリアとして所定の学習処理を実行する。この学習処理をＳＲＡＭ学習処理と称し、ＣＰＵ２８は、ＳＲＡＭ学習処理の実行を終了するとステップＳ９へ移行する。なお、詳細なＳＲＡＭ学習処理については後述する。
【００８１】
ステップＳ９において、ＣＰＵ２８は、ＳＲＡＭ学習処理においてＳＲＡＭに書込まれた学習値をＥＥＰＲＯＭへ書込む処理を実行する。この書込む処理をＥＥＰＲＯＭ書込処理と称し、ＣＰＵ２８は、ＥＥＰＲＯＭ書込処理の実行を終了するとステップＳ１０へ移行する。なお、詳細なＥＥＰＲＯＭ書込処理については後述する。
【００８２】
ステップＳ１０において、ＣＰＵ２８は、ＥＥＰＲＯＭ書込処理においてＥＥＰＲＯＭに書込まれた学習値に異常がないかどうかを判定する処理を実行する。この異常判定処理をＥＥＰＲＯＭ書込異常判定処理と称し、ＣＰＵ２８は、ＥＥＰＲＯＭ書込異常判定処理の実行を終了するとリターンへ移行する。なお、詳細なＥＥＰＲＯＭ書込異常判定処理については後述する。
【００８３】
（ＳＲＡＭ学習処理）
まず、ＳＲＡＭ学習処理について説明する。従来の学習制御は、電子制御装置のＣＰＵがＥＥＰＲＯＭへ学習値を書込む際は、目標制御値と電子制御装置の外部センサから入力した実測値との差分に基づく学習値の算出を、ワーキングエリアであるＲＡＭにおいて実行し（以降、この処理をＲＡＭ学習処理とする）、算出した学習値をＥＥＰＲＯＭへ書込んでいたが、その際に、ユーザによりシステム電源がオフされたことによって、電源から電子制御装置への電力供給が停止されると、ＲＡＭに書込まれているデータが消去されてしまい、学習値をＥＥＰＲＯＭへ書込むことができなくなってしまうという不都合が生じていた。
【００８４】
そこで、ＲＡＭに替えて、前述した電力供給が停止されても電源からＲＡＭへ常に電力が供給されるＳＲＡＭを用いてＲＡＭ学習処理を実行する（以降、この処理をＳＲＡＭ学習処理とする）ことによってその不具合を解消している。つまり、ＲＡＭ学習処理に代えてＳＲＡＭ学習処理を採用すれば、学習中にその電力供給が停止されたとしても、ＳＲＡＭに書込まれている値は保持されるため、その電力供給が再開された際に、保持されている値に基づいて学習制御を継続でき、ＥＥＰＲＯＭに学習値が書込まれないという不具合を回避することができる。
【００８５】
従って、このような利点を有するＳＲＡＭ学習処理を本実施の形態においても採用している。
【００８６】
ＳＲＡＭ学習処理の詳細な内容を図７を参照しながら説明する。なお、図７は、図６の学習・書込処理におけるステップＳ８のＳＲＡＭ学習処理の詳細な処理を示す図である。
【００８７】
ステップ１１において、アイドリングストップ電子制御装置１のＣＰＵ２８は、アクチュエータが所望する動作量となる目標制御値に基づいて、アクチュエータを制御する。
【００８８】
ステップ１２において、ＣＰＵ２８は、目標制御値により制御したアクチュエータの動作結果、つまり、動作量を検知するセンサから実制御値を検知する。
【００８９】
ステップ１３において、ＣＰＵ２８は、目標制御値と、実制御値との差分（オフセット値）を演算し、この演算したオフセット値をＳＲＡＭに書込む。
【００９０】
ステップ１４において、ＣＰＵ２８は、オフセット値を学習値としてＳＲＡＭ２７へ書込む。
【００９１】
なお、ＣＰＵ２８は、外部装置Ｘによる書込制御を機能させる場合には、ＳＲＡＭ学習処理に代えて、外部装置においてユーザが入力した所望するデータを、ＳＲＡＭへ書込むＳＲＡＭ書込処理を実行する。
【００９２】
（ＥＥＰＲＯＭ書込処理）
ＥＥＰＲＯＭ書込処理の詳細な内容を図８を参照しながら説明する。図８は、図６の学習・書込処理におけるステップＳ９のＥＥＰＲＯＭ書込処理の詳細な処理を示す図である。
【００９３】
ステップＳ１５において、アイドリングストップ電子制御装置１のＣＰＵ２８は、ＳＲＡＭ２７に書込まれている学習値を読み出す。
【００９４】
ステップＳ１６において、ＣＰＵ２８は、ＳＲＡＭ２７から読み出した学習値をＥＥＰＲＯＭ２５へ書込む。
【００９５】
（ＥＥＰＲＯＭ書込異常判定処理）
ＥＥＰＲＯＭ書込異常判定処理の詳細な内容を図９を参照しながら説明する。なお、図９は、図６の学習・書込処理におけるステップＳ１０のＥＥＰＲＯＭ書込異常判定処理の詳細な処理を示す図である。
【００９６】
ステップ１７において、アイドリングストップ電子制御装置１のＣＰＵ２８は、ＥＥＰＲＯＭ２５に書込まれている学習値を読み出す。この読み出した学習値を学習値Ａとする。
【００９７】
ステップ１８において、ＣＰＵ２８は、ＳＲＡＭ２７に書込まれている学習値を読み出す。この読み出した学習値を学習値Ｂとする。
【００９８】
ステップＳ１９において、ＣＰＵ２８は、ＳＲＡＭ２７に設定されている書込要因を読み出し、書込要因が車両制御プログラムによるものであることを示す「１」であるか否かを判定する。書込要因が１であると判定する場合は、ステップＳ２４へ移行する（ステップＳ１９においてＹＥＳ）。書込要因が１であると判定しない場合は、ステップＳ２０へ移行する（ステップＳ１９においてＮＯ）。
【００９９】
ステップＳ２０において、ＣＰＵ２８は、ＳＲＡＭ２７に設定されている書込要因を読み出し、書込要因が外部装置によるものであることを示す「２」であるか否かを判定する。書込要因が２であると判定する場合は、ステップＳ２１へ移行する（ステップＳ２０においてＹＥＳ）。書込要因が２であると判定しない場合は、リターンへ移行する（ステップＳ２０においてＮＯ）。
【０１００】
ステップ２１において、ＣＰＵ２８は、学習値Ａと学習値Ｂが一致するかどうかを判定する。この判定において、学習値Ａと学習値Ｂとが一致する場合にはステップＳ２２へ以降する（ステップＳ２１においてＹＥＳ。それらが一致しない場合にはステップＳ２３へ以降する（ステップＳ２１においてＮＯ）。
【０１０１】
ステップＳ２２において、ＣＰＵ２８は、ＮＲＡＭ２６に設定されている外部装置応答ステータスを成功を示す「２」に書き換える。次に、リターンへ以降する。
【０１０２】
ステップＳ２３において、ＣＰＵ２８は、ＮＲＡＭ２６に設定されている外部装置応答ステータスを失敗を示す「１」に書き換える。次に、リターンへ以降する。
【０１０３】
ステップ２４において、ＣＰＵ２８は、学習値Ａと学習値Ｂが一致するかどうかを判定する。この判定において、学習値Ａと学習値Ｂとが一致する場合にはリターンへ以降する（ステップＳ２４においてＹＥＳ。それらが一致しない場合にはステップＳ２５へ以降する（ステップＳ２４においてＮＯ）。
【０１０４】
ステップＳ２５において、ＣＰＵ２８は、異常を示すダイアグをＥＥＰＲＯＭ２５へ書込む。次に、リターンへ移行する。
【０１０５】
（ＳＲＡＭ書込異常判定処理）
図１０は、アイドリングストップ電子制御装置１のＣＰＵ２８が、ＳＲＡＭ２７に書込まれているデータに異常が発生しているか否かを判定するとともに、異常が発生していることを判定した場合に、実行する処理を示す図である。なお、図１０に示す処理をＳＲＡＭ書込異常判定処理と称し、ＣＰＵ２８はこのＳＲＡＭ書込異常判定処理を所定の周期（例えば、３６ｍｓ）で実行する。
【０１０６】
ステップＳ２６において、ＣＰＵ２８は、ＳＲＡＭ２７に書込まれているデータに異常が発生しているか否かを判定する。その異常判定は、ＣＰＵ２８が、ＳＲＡＭ２７に予め書込まれている異常チェック用キーワード、例えば、５ＡＡ５を読み出して、キーワード５ＡＡ５が変化しているかどうかを判定することにより行われる。ＣＰＵ２８は、ＳＲＡＭ２７から読み出したキーワード５ＡＡ５が変化していると判定する場合は、ＳＲＡＭ２７に電気的なノイズが影響したことによって、ＳＲＡＭ２７に異常が発生したと判定し、ステップＳ２７へ移行する（ステップＳ２６においてＹＥＳ）。ＣＰＵ２８は、ＳＲＡＭ２７から読み出したキーワード５ＡＡ５が変化していないと判定する場合は、ＳＲＡＭ２７にその異常が発生していないと判定し、リターンへ移行する（ステップＳ２６においてＮＯ）。
【０１０７】
ステップＳ２７において、ＣＰＵ２８は、ＳＲＡＭ２７に異常が発生しているため、ＳＲＡＭ初期化処理を実行する。ＳＲＡＭ初期化処理は、ＣＰＵ２８がＳＲＡＭ２７に記憶されているデータを初期の状態に制御する処理であり、例えば、ＣＰＵ２８がＳＲＡＭ２７の記憶領域の全てにデータＦＦＦＦを書込むことにより行われる。次に、ステップＳ２８へ移行する。
【０１０８】
ステップＳ２８において、ＣＰＵ２８は、ＮＲＡＭ２６に設定されている、ＳＲＡＭ２７が初期化されたことを示す、ＳＲＡＭ初期化フラグをオンに書き換える。次に、リターンへ移行する。
【０１０９】
（特定ＳＲＡＭ書込異常判定処理）
ここで、ＳＲＡＭ異常が発生した場合の不具合について説明する。電子制御装置のＣＰＵが、自発的に実行する学習制御において、電気的なノイズなどの影響によってＳＲＡＭの値が変化するＳＲＡＭ異常を判定した場合には、ユーザへリアルタイムに学習結果を知らせる必要はないが、外部装置から命令を受けて受動的に実行する学習制御においては、ＳＲＡＭ異常を判定した際に、学習結果を外部装置の表示部へ表示させて、すぐにユーザへ知らせる必要があるところ、ＣＰＵが自発的に学習制御を実行しているのか、受動的に学習制御を実行しているのか、を示すデータである書込要因ステータスについてもＳＲＡＭへ記憶させてしまっていることから、その際はＳＲＡＭが初期かされそのデータも同時に消去されてしまい、ＳＲＡＭ異常が発生したことを外部装置の表示部へ表示させることができないという不具合が発生する虞がある。そこで、本実施の形態のアイドルストップ機能などを発揮するＣＰＵ２８が後述する処理を実行することにより、その不具合を解消している。
【０１１０】
図１１は、アイドリングストップ電子制御装置１のＣＰＵ２８が、ＳＲＡＭ２７に書込む制御が失敗したかを判定するとともに、外部装置へ応答することを指示するステータスを書換えるべきか否かを判定する処理、つまり、外部装置へ応答すべき異常（特定の異常）かどうかを判定する処理を示す図である。なお、図１１に示す処理を特定ＳＲＡＭ書込異常判定処理と称し、ＣＰＵ２８はこの特定ＳＲＡＭ書込異常判定処理を所定の周期（例えば、３６ｍｓ）で実行する。
【０１１１】
ステップＳ２９において、ＣＰＵ２８は、ＮＲＡＭ２６に設定されているＳＲＡＭ初期化フラグを読み出し、ＳＲＡＭ初期化フラグがオンか否かを判定する。ＣＰＵ２８は、ＳＲＡＭ初期化フラグがオンであると判定する場合には、ステップＳ３０へ移行する（ステップＳ２９においてＹＥＳ）。ＣＰＵ２８は、ＳＲＡＭ初期化フラグがオンでないと判定する場合には、リターンへ移行する（ステップＳ２９においてＮＯ）。
【０１１２】
ステップＳ３０において、ＣＰＵ２８は、ＮＲＡＭ２６に設定している書込失敗フラグをオンにする。次に、ステップＳ３１へ移行する。
【０１１３】
ステップＳ３１において、ＣＰＵ２８は、ＮＲＡＭ２６に設定されれている外部装置Ｘ用書込要求受付フラグを読み出し、外部装置Ｘ用書込要求受付フラグがオンか否かを判定する。ＣＰＵ２８は、外部装置Ｘ用書込要求受付フラグがオンであると判定する場合には、ステップＳ３２へ移行する（ステップＳ３１においてＹＥＳ）。ＣＰＵ２８は、外部装置Ｘ用書込要求受付フラグがオンでないと判定する場合には、リターンへ移行する（ステップＳ３１においてＮＯ）。
【０１１４】
ステップＳ３２において、ＣＰＵ２８は、ＣＰＵ２８は、ＮＲＡＭ２６に設定している外部装置応答ステータスを書込失敗を示す「１」に書き換える。次にリターンへ移行する。
【０１１５】
つまり、ＣＰＵ２８がステップＳ２９において、ＳＲＡＭを初期化したことをＮＲＡＭ２６に設定されているＳＲＡＭ初期化フラグに基づいて判定し、ステップＳ３１において、学習・書込制御が、外部装置から命令を受けて受動的に実行されていることをＮＲＡＭ２６に設定されている外部装置Ｘ用書込要求受付フラグに基づいて判定することによって、ＳＲＡＭ異常の際は、ＳＲＡＭ異常が、自発的に実行する学習制御において発生したのか、外部装置から命令を受けて受動的に実行する学習制御において発生したのかを判断しすることができるとともに、ＳＲＡＭ異常が受動的に実行する学習制御において発生した場合には、確実に、学習結果を外部装置の表示部へ表示をさせることができる。
（外部装置応答処理）
図１２は、アイドリングストップ電子制御装置１のＣＰＵ２８は、ＮＲＡＭ２６設定されている外部装置応答ステータスを参照して、外部装置へ応答すべきか否かを判定する処理を示す図である。なお、図１２に示す処理を外部装置応答処理と称し、ＣＰＵ２８はこの外部装置応答処理を所定の周期（例えば、３６ｍｓ）で実行する。
【０１１６】
ステップＳ３３において、ＣＰＵ２８は、ＮＲＡＭ２６に設定されている外部装置応答ステータスが、応答を返さないことを示す「０」か否かを判定する。外部装置応答ステータスが０であると判定する場合は、リターンへ移行する（ステップＳ３３においてＹＥＳ）。外部装置ステータスが１であると判定しない場合は、ステップＳ３４へ移行する（ステップＳ３３においてＮＯ）。
【０１１７】
ステップＳ３４において、ＣＰＵ２８は、ＮＲＡＭ２６に設定されている外部装置応答ステータスが、書込みが失敗したことを示す「１」であるか否かを判定する。外部装置応答ステータスが１であると判定する場合は、ステップＳ３５へ移行する（ステップＳ３４においてＹＥＳ）。外部装置ステータスが１であると判定しない場合は、ステップＳ３６へ移行する（ステップＳ３４においてＮＯ）。
【０１１８】
ステップＳ３５において、ＣＰＵ２８は、車載ネットワークドライバを制御して、車載ネットワークＬへ、外部装置Ｘが宛先となるＩＤコードと、書込制御が書込み結果データである、失敗した旨のデータとを出力する。次に、リターンへ移行する。
【０１１９】
ステップＳ３６において、ＣＰＵ２８は、ＮＲＡＭ２６に設定されている外部装置応答ステータスが、書込みが成功したことを示す「２」であるか否かを判定する。外部装置応答ステータスが２であると判定する場合は、ステップＳ３７へ移行する（ステップＳ３６においてＹＥＳ）。外部装置応答ステータスが２であると判定しない場合は、リターンへ移行する（ステップＳ３６においてＮＯ）。
【０１２０】
ステップＳ３７において、ＣＰＵ２８は、車載ネットワークドライバを制御して、車載ネットワークＬへ、外部装置Ｘが宛先となるＩＤコードと、書込制御が書込み結果データである、成功した旨のデータとを出力する。次に、リターンへ移行する。
【０１２１】
これにより、ＣＰＵ２８は、外部装置Ｘの表示部２９へ学習・書込結果を表示制御することができる。
【０１２２】
＜その他の実施の形態＞
以上、本発明の実施の形態について説明してきたが、この発明は上記実施の形態に限定されるものではなく様々な変形が可能である。
【０１２３】
＜変形例１＞
上記代表の実施の形態において、電子制御装置はアイドリングストップ電子制御装置１として説明したが、エンジン電子制御装置２、バッテリ電子制御装置３、トランスミッション電子制御装置４、メータ電子制御装置５、ゲートウェイ電子制御装置６、ナビゲーション電子制御装置７、エアコン電子制御装置８、ライト電子制御装置９、ワイパ電子制御装置１０、又は、他の電子制御装置、により実現することも可能である。
【０１２４】
＜変形例２＞
上記代表の実施の形態において、アイドリングストップ電子制御装置１は、図２に示すように、ＣＰＵ２８、ＲＯＭ２４、ＮＲＡＭ２６、及び、ＳＲＡＭ２７が電子基板において実装され、それらがパターンによって電気的に接続されているように解釈できるが、これに限られず、ＣＰＵ２８、ＲＯＭ２４、ＮＲＡＭ２６、及び、ＳＲＡＭ２７がワンパッケージ化されたマイコンとして電子基板に実装されるものであっても良い。この場合、ＥＥＰＲＯＭ２５は、図２と同様に電子基板に実装されるとともにマイコンとパターンにより電気的に接続される。
【０１２５】
＜変形例３＞
上記代表の形態における、ユーザ指令による学習・書込制御は、ユーザがアイドリングストップ電子制御装置１と接続された外部装置Ｘを操作して、ユーザが所望する学習・書込制御を、アイドリングストップ電子制御装置１などの電子制御装置へ実行させると説明したが、ユーザが車両に固定的に備わる操作手段に基づく所定のマニュアル操作を行うことによって、ユーザが所望する学習・書込制御を、アイドリングストップ電子制御装置１などの電子制御装置へ実行させる方法であってもよい。例えば、ユーザがユーザスイッチＳＷを操作して、車両システムを起動させ、かつ、サイドブレーキを引いて停車させた状態において、ブレーキ操作や変速レバー操作などを組み合わせた所定の操作により、所定の電子制御装置へ学習・書込制御を実行させる。
【０１２６】
変形例３の場合における、ユーザへ制御結果を知らせる表示させる方法は、図１３に示すメータパネルＹのランプ３４へ表示する方法である。車両に固定的に配置されたランプ表示は、メータ電子制御装置５が学習・書込制御を実行した電子制御装置から車載ネットワークＬを介して受信した制御結果データを、図１３に示す形態で行う。つまり、ユーザスイッチＳＷが操作され、車両システムに電源が投入された際には、メータ電子制御装置５は、図１３に示すＶの初期状態として所定時間（例えば、５秒）点灯する。
【０１２７】
また、マニュアル操作により電子制御装置へ書込要求を出力し、電子制御装置が書込みを実行している間は、メータ電子制御装置５は、図１３におけるＶＩに示すように、表示ランプ３４を点灯させる。
【０１２８】
また、マニュアル操作により電子制御装置へ書込要求を出力し、電子制御装置が書込みを正常に終了させた場合に送信されるその旨のデータに基づいて、メータ電子制御装置５は、表示ランプ３４を図１４におけるＶＩＩに示すとおり消灯させる。
【０１２９】
また、マニュアル操作により電子制御装置へ書込要求を出力し、電子制御装置が書込みを正常に終了しなかった場合に送信されるその旨のデータに基づいて、メータ電子制御装置５は、ランプ３４を図１４におけるＶＩＩに示すとおり点灯させる。
【０１３０】
変形例３の場合における、学習・書込制御の処理について、特に、代表の形態と相違する点を中心に説明することとする。
【０１３１】
図５に示す書込要求判定処理において、相違する処理を説明する。ステップＳ４において判定がＮＯとなった場合に、書込要因がマニュアル操作によるものか否かを問うステップＸ４を追加し、ステップＸ４において、ＣＰＵ２８が、書込要因がマニュアル操作によるものであると判定する場合は、追加するステップＸ５へ移行する（ステップＸ４においてＹＥＳ）。書込要因がマニュアル操作によるものであると判定しない場合は、リターンへ移行する（ステップＸ４においてＮＯ）。
【０１３２】
また、追加したステップＸ５において、ＮＲＡＭ２６に設定されているマニュアル操作用書込要求受付フラグをオンにして、追加するステップＸ６へ移行する。
また、追加してステップＸ６において、ＣＰＵ２８は、ステップＸ５においてオンにしたマニュアル操作用書込要求受付フラグを参照して、ＳＲＡＭ２７に設定されている書込要因ステータスを書込要因がマニュアル操作であることを示す「３」に書き換える。次に、リターンへ移行する。
【０１３３】
図６に示す学習・書込処理において相違する処理を説明する。ステップＳ７の判定する書込要求受付フラグには、マニュアル操作用の書込要求受付フラグが追加で判定される。つまり、車両制御プログラム用書込要求受付フラグ、外部装置Ｘ用書込受付フラグ、又は、マニュアル操作用の書込要求受付フラグの何れかの書込要求受付フラグがオンかどうかを判定する。
【０１３４】
図９に示すＥＥＰＲＯＭ書込異常判定処理において相違する処理を説明する。ステップＳ２０において、判定がＮＯとなった場合に、書込要因ステータスが３であるか否かを問うステップＸ２０を追加し、ステップＸ２０において、ＣＰＵ２８がＳＲＡＭ２７に設定されている書込要因ステータスを読み出し、書込要因ステータスがマニュアル操作を示す「３」であるか否かを判定する。書込要因ステータスが３であると判定する場合に、追加するステップＸ２１へ移行する（ステップＸ２０においてＹＥＳ）。書込要因ステータスが３であると判定しない場合に、リターンへ移行する（ステップＸ２０においてＮＯ）。
【０１３５】
また、追加したステップＸ２１において、ステップＳ２１と同じ判定をする。ＣＰＵ２８が、学習値Ａと学習値Ｂが一致すると判定する場合に、追加するステップＸ２２へ移行する（ステップＸ２１においてＹＥＳ）。ＣＰＵ２８が、学習値Ａと学習値Ｂが一致すると判定しない場合に、追加するステップＸ２３へ移行する（ステップＸ２１においてＮＯ）。
【０１３６】
また、追加したステップＸ２２において、ランプ用応答ステータスを書込み成功を示す「２」に書き換える。
【０１３７】
また、追加したステップＸ２３において、ランプ用応答ステータスを書込み失敗を示す「１」に書き換える。
図１１に示す特定ＳＲＡＭ書込異常判定処理において相違する処理を説明する。ステップＳ３１の、外部装置Ｘ用書込書込要求受付フラグはマニュアル操作用の書込要求受付フラグとする。
【０１３８】
また、ステップＳ３２の外部装置応答ステータスはランプ応答用ステータスとし、ＮＲＡＭ２６に設定されたランプ用応答ステータスを、書込みが失敗したことを示す「１」に書き換える。
図１２に示す外部装置応答処理において相違する処理を説明する。ステップＳ３３、ステップＳ３４、及び、ステップＳ３６における外部応答ステータスはランプ用応答ステータスとする。
【０１３９】
また、ステップＳ３５において、ＣＰＵ２８は、車載ネットワークドライバを制御して、車載ネットワークＬへ、メータ電子制御装置５が宛先とわかるＩＤコードと、書込制御が書込み結果データである、失敗した旨のデータとを出力する。次に、リターンへ移行する。
【０１４０】
ステップＳ３７において、ＣＰＵ２８は、車載ネットワークドライバを制御して、車載ネットワークＬへ、メータ電子制御装置５が宛先とわかるＩＤコードと、書込制御が書込み結果データである、成功した旨のデータとを出力する。次に、リターンへ移行する。
【０１４１】
また、上記実施の形態では、プログラムに従ったＣＰＵの演算処理によってソフトウェア的に各種の機能が実現されると説明したが、これら機能のうちの一部は電気的なハードウェア回路により実現されても良い。また逆に、ハードウェア回路によって実現されるとした機能のうちの一部は、ソフトウェア的に実現されても良い。
【０１４２】
更に、各実施例の制御を説明するフローチャート図における各処理を、便宜上、一の系列で示しているが、より細分化された処理にして、ＣＰＵ２８がマルチタスク制御機能により、それら処理を並列に実行するものであっても良い。
【符号の説明】
【０１４３】
１    アイドリングストップ電子制御装置
２４  ＲＯＭ
２５  ＥＥＰＲＯＭ
２６  ＮＲＡＭ
２７  ＳＲＡＭ
２８  ＣＰＵ
２９    表示部
３４    ランプ
Ｘ    外部装置
Ｙ    メータパネル
【図１】
2011100511.tif 000003
【図２】
2011100511.tif 000004
【図３】
2011100511.tif 000005
【図４】
2011100511.tif 000006
【図５】
2011100511.tif 000007
【図６】
2011100511.tif 000008
【図７】
2011100511.tif 000009
【図８】
2011100511.tif 000010
【図９】
2011100511.tif 000011
【図１０】
2011100511.tif 000012
【図１１】
2011100511.tif 000013
【図１２】
2011100511.tif 000014
【図１３】
2011100511.tif 000015
【図１４】
2011100511.tif 000016