(57)【要約】【課題】車両に搭載され、自身よりも起動タイミングが遅い他の車両用制御装置からデータを受信するようになっている車両用制御装置が、自身が起動して当該他の車両用制御装置が未起動である期間に、当該他の車両用制御装置からデータを受けないことに起因して、不適切な動作をしてしまう可能性を低減する。【解決手段】車両用制御装置は、車両用制御装置が起動して他の車両用制御装置が未起動の期間において、（ステップ２０５、２１０、２２５）、当該他の車両用制御装置からのデータを格納するための領域の値を用いた制御処理や故障診断処理を禁止する（ステップ２１５、２２０）。【選択図】 図３
2006290152.tif 000002
【特許請求の範囲】
【請求項１】
起動タイミングが遅れる他の車両用制御装置（２）と通信を行うための通信回路（１１）と、
前記通信回路が前記他の車両用制御装置から受信したデータを記憶するための記憶媒体（１１ａ）と、
起動後かつ前記他の車両用制御装置が起動する前の期間において、前記記憶媒体が記憶するデータを用いた処理を禁止する制御回路（１３）と、を備えた車両用制御装置。
【請求項２】
前記制御回路は、起動後かつ車両の主電源がオンとなる前の期間において、前記記憶媒体が記憶するデータを用いた処理を禁止することを特徴とする請求項１に記載の車両用制御装置。
【請求項３】
前記制御回路は、車両の主電源がオンとなってから基準時間内の期間において、前記記憶媒体が記憶するデータを用いた処理を禁止することを特徴とする請求項２に記載の車両用制御装置。
【請求項４】
前記制御回路は、起動後かつ前記通信回路が前記他の車両用制御装置からデータを受信するまでの期間において、前記記憶媒体が記憶するデータを用いた処理を禁止することを特徴とする請求項１ないし３のいずれか１つに記載の車両用制御装置。
【請求項５】
前記制御回路は、起動後かつ前記他の車両用制御装置が起動する前の期間において、前記記憶媒体が記憶するデータを用いた異常検出処理を禁止することを特徴とする請求項１ないし４のいずれか１つに記載の車両用制御装置。
【請求項６】
前記他の車両用制御装置は、データ送信要求を受信することに基づき、そのデータ送信要求元にデータを送信し、
前記制御回路は、起動後かつ前記他の車両用制御装置が起動する前の期間において、前記通信回路が前記他の車両用制御装置にデータ送信要求を送信することを禁止することを特徴とする請求項１ないし５のいずれか１つに記載の車両制御装置。
【請求項７】
起動タイミングが遅れる他の車両用制御装置（２）と通信を行うための通信回路（１１）と、前記通信回路が前記他の車両用制御装置から受信したデータを記憶するための記憶媒体（１１ａ）と、制御回路（１３）と、を備えた車両制御装置（１）の前記制御回路を、
前記車両制御装置の起動後かつ前記他の車両用制御装置が起動する前の期間であることを判定する期間判定手段、および、
前記期間判定手段の判定に基づいて、前記記憶媒体が記憶するデータを用いた処理を禁止する禁止手段として、機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両用制御装置および車両用制御装置に用いるプログラムに関するものであり、ＷａｋｅＵｐシステムのような通信開始時期の異なる複数の通信機器を有するネットワークの通信機器として用いて好適である。
【背景技術】
【０００２】
現在の車両には、エンジンコントロールモジュール（以下、ＥＣＭという）、燃料ポンプ、オルタネータ、トランスミッションＥＣＵ等、車両の各部を制御するための車両用制御装置が複数取り付けられている。そして、それらの車両用制御装置間では、車両制御のためのデータ通信が行われるようになっている。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、これら複数の車両用制御装置間の起動タイミングは、必ずしも一致していない。例えば、車両が車両用制御装置Ａ、および車両用制御装置Ａにデータを送信する車両用制御装置Ｂを搭載しており、車両用制御装置Ａが車両用制御装置Ｂよりも早く起動するようになっているという構成がありうる。このような構成においては、車両用制御装置Ａが起動しており、かつ車両用制御装置Ｂが未起動であるような時間帯があるので、以下のような問題が発生する可能性がある。
【０００４】
すなわち、上記のような時間帯において、車両用制御装置Ａが、車両用制御装置Ｂからデータを受信しているものとして、車両用制御装置Ｂから受信するデータを格納するためのバッファの値を、車両制御用のデータとして用いてしまい、その結果不適切な制御を行ってしまう可能性がある。また、上記のような時間帯において、車両用制御装置Ａが、車両用制御装置Ｂから受信するデータを格納するためのバッファの値を、異常検出のための判定材料としてしまい、その結果、異常ではなく単に車両用制御装置Ｂの起動が遅いだけであるにも関わらず、車両用制御装置Ｂ（または車両用制御装置Ｂとの通信）に異常が発生したと判定してしまう可能性がある。
【０００５】
このような問題は、ＷａｋｅＵｐシステムのように、車両内に、車両の主電源がオンとなる前に起動する車両用制御装置と、主電源オン後に起動する車両用制御装置とがある場合に顕著になる。
【０００６】
本発明は上記問題点に鑑み、車両に搭載され、自身よりも起動タイミングが遅い他の車両用制御装置からデータを受信するようになっている車両用制御装置が、自身が起動して当該他の車両用制御装置が未起動である期間に、当該他の車両用制御装置からデータを受けないことに起因して不適切な動作をしてしまう可能性を低減することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するための本発明の特徴は、起動タイミングが遅れる他の車両用制御装置（２）（以下、第２車両用制御装置と記す）と通信を行うための通信回路（１１）と、その通信回路が第２車両用制御装置から受信したデータを記憶するための記憶媒体（１１ａ）とを備えた車両用制御装置（１）が、自身の起動後かつその第２車両用制御装置が起動する前の期間において、当該記憶媒体が記憶するデータを用いた処理を禁止する制御回路（１３）を備えることである。
【０００８】
このようになっていることで、車両用制御装置は、自身が起動して第２車両用制御装置が未起動である期間に、その第２車両用制御装置からのデータを記憶するための記憶媒体に記録されている、実際の受信データではないデータを用いた処理を禁止される。したがって、このとき、第２車両用制御装置からデータを受けないことに起因して、不適切な動作をしてしまう可能性が低減する。
【０００９】
ここで、車両用制御装置の起動後であり、第２車両用制御装置が起動する前の期間としては、当該車両用制御装置の起動後かつ車両の主電源がオンとなる前の期間であるとしてもよい。このようにすることで、ＷａｋｅＵｐシステムのような、車両の主電源のオンの前に起動する車両用制御装置と、主電源のオン時に起動する車両用制御装置を有するシステムに、本発明を適用することができる。
【００１０】
またこの場合、主電源のオン時よりも起動が遅れる車両用制御装置があることを考慮し、制御回路が、車両の主電源がオンとなってから基準時間内の期間において、記憶媒体が記憶するデータを用いた処理を禁止するようになっていてもよい。
【００１１】
また、制御回路が、車両用制御装置の起動後に通信回路が第２車両用制御装置からデータを受信するまでの期間において、記憶媒体が記憶するデータを用いた処理を禁止するようになっていてもよい。
【００１２】
また、制御回路が禁止する、記憶媒体に記憶されたデータを用いた処理としては、異常検出処理であってもよい。このようになっていることで、車両用制御装置は、自身が起動して第２車両用制御装置が未起動である期間に、第２車両用制御装置からデータを受けないことに起因して、異常であるという検出をしてしまう可能性が低減する。
【００１３】
また、第２車両用制御装置が、データ送信要求を受信することに基づき、そのデータ送信要求元にデータを送信するようになっている場合は、車両用制御装置は、起動後であり、かつ他の車両用制御装置が起動する前の期間において、通信回路が第２車両用制御装置にデータ送信要求を送信することを禁止するようになっていてもよい。このようにすることで、無駄なデータ送信要求の送信を減らすことができる。
【００１４】
また、本発明の特徴は、起動タイミングが遅れる他の車両用制御装置（２）と通信を行うための通信回路（１１）と、当該通信回路が当該他の車両用制御装置から受信したデータを記憶するための記憶媒体（１１ａ）と、制御回路（１３）と、を備えた車両制御装置（１）の当該制御回路を、当該車両制御装置の起動後かつ当該他の車両用制御装置が起動する前の期間であることを判定する期間判定手段、および、当該期間判定手段の判定に基づいて、当該記憶媒体が記憶するデータを用いた処理を禁止する禁止手段として、機能させるプログラムとして、捉えることもできる。
【００１５】
なお、上記特許請求の範囲における括弧内の符号は、後述する実施形態に記載の具体的構成要素等との対応関係を示すものである。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の一実施形態について説明する。図１に、本実施形態に係る車両用制御システムの一部を示す。この車両用制御システムにおいては、エンジンの制御を行うための電子制御装置であるエンジンコントロールモジュール（以下、ＥＣＭという）１が、オルタネータ２およびメータ３と、ＬＩＮ（Local Interconnect Network）によって接続されている。ＬＩＮに接続する電子機器は、マスタまたはスレーブとして機能し、スレーブは、マスタからデータ送信要求を受信することで、要求されたデータをその送信元のマスタに送信するようになっている。本実施形態においては、ＥＣＭ１がマスタで、オルタネータ２、メータ３がスレーブとなっている。そして、オルタネータ２は、ＥＣＭ１からデータ送信要求を受けたことに基づいて、現在の供給電圧値および供給電流値等のデータを、ＥＣＭ１に送信する。また、メータ３は、ＥＣＭ１からデータ送信要求を受けたことに基づいて、車速および走行距離等のデータを、ＥＣＭ１に送信する。
【００１７】
また、ＥＣＭ１は、ドアの開閉の検出を行うドアユニット４およびイグニッションキースイッチ５と接続されている。ドアユニット４は、ドアが開いたことを検出してから一定期間持続的にオンとなり、その後持続的にオフとなる信号（以下、Ｗａｋｅ信号という）を、ＥＣＭ１に出力するようになっている。
【００１８】
また、ＥＣＭ１は、クランク角センサ、冷却水温センサ等のセンサ６からの検出信号を受け、またインジェクタ、フューエルポンプ、イグナイタ等のアクチュエータ７に制御信号を出力するようになっている。また、ＥＣＭ１は、ＣＡＮ（Controller Area Network）ネットワークを介して、ブレーキＥＣＵ、トランスミッションＥＣＵ等の電子制御装置と、車両制御のためのデータ交換を行っている。
【００１９】
このようなＥＣＭ１は、シリアルコミュニケーションインターフェース（以下、ＳＣＩという）１１、ＣＡＮドライバ１２、および制御回路１３を有している。ＳＣＩ１１は、制御回路１３から受けたデータを、ＬＩＮの通信プロトコルに適合するように加工し、この加工したデータを適切なタイミングでオルタネータ２またはメータ３に出力する。また、ＳＣＩ１１は、バッファ１１ａおよび受信フラグ１１ｂというデータ記憶媒体を有する。そしてＳＣＩ１１は、オルタネータ２、メータ３が送信したデータを、ＬＩＮを介して受信すると、この受信したデータをバッファ１１ａに記録し、受信フラグ１１ｂをオンにする。またＳＣＩ１１は、１１ａ中のデータを制御回路１３が読み出すことに基づいて、当該受信フラグ１１ｂをオフにする。なお、バッファ１１ａおよび受信フラグ１１ｂは、受信するデータの種類毎に１組あってもよいし、オルタネータ２用に１組、メータ３用に１組あってもよい。
【００２０】
ＣＡＮドライバ１２は、は、制御回路１３から受けたデータを、ＣＡＮの通信プロトコルに適合するように加工し、この加工したデータをＣＡＮに出力する。また、ＣＡＮドライバ１２は、他の装置からＣＡＮに出力されたデータを受信し、それを制御回路１３が認識できる形式に変換して制御回路１３に出力する。
【００２１】
制御回路１３は、ＣＰＵ１３ａ、ＲＡＭ１３ｂ、ＲＯＭ１３ｃ、ＥＥＰＲＯＭ１３ｄ、および図示しないＩ／Ｏ等を有し、ＣＰＵ１３ａにＲＯＭ１３ｃ中に記憶されたプログラムを実行させることで、ドアユニット４、イグニッションキースイッチ５、センサ６、ＳＣＩ１１、ＣＡＮドライバ１２からの信号やデータに基づく作動を行い、その作動において、オルタネータ２、メータ３、ＣＡＮドライバ１２、アクチュエータ７にデータや制御信号を出力する。
【００２２】
なお、ＥＣＭ１は、制御回路１３に入力されるドアユニット４からのＷａｋｅ信号が、オフからオンになった時点で、起動するようになっている。
【００２３】
また、オルタネータ２はイグニッションキースイッチ５がオンになったときに起動するようになっており、メータ３はＥＣＭ１と同様ドアユニット４のＷａｋｅ信号がオフからオンになった時点で起動するようになっている。なお、以下ではイグニッションキースイッチ５がオンであることをＩＧオンであると記し、イグニッションキースイッチ５がオフであることをＩＧオフであると記す。
【００２４】
ここで、図２に、Ｗａｋｅ信号の変化２１、イグニッションキースイッチ５から送信される、ＩＧオン、ＩＧオフを示すＩＧ信号の変化２２、およびＥＣＭ１の作動、非作動の変化２３の、それぞれのタイミングを示す。この図に示す通り、Ｗａｋｅ信号２１は、車両のドアが開いたときにオンとなり、それと同時にＥＣＭ１が起動する。また、Ｗａｋｅ信号２１は、一定期間経過後にオフとなる。この一定期間は、ドアが開いてドライバーが車内に乗り込んでから、ＩＧオンとなるまでの平均的な期間よりも長い期間、例えば５分程度である。したがって、通常は、Ｗａｋｅ信号２１がオンとなっているうちに、ＩＧオンのタイミングが訪れ、そのタイミングにおいてＩＧ信号２２がオンとなる。
【００２５】
このように、車両用制御システムは、ＩＧオンの前のドアオープン時に起動する車両用制御装置（具体的にはＥＣＭ１、メータ３）と、ＩＧオン時に起動する車両用制御装置（具体的にはオルタネータ２）を有することになる。このようなシステムを、ＷａｋｅＵｐシステムという。このように、ＷａｋｅＵｐシステムで、車両用制御装置の起動タイミングをずらすのは、ＩＧオン前に起動していた方が都合の良い車両用制御装置があるからである。例えば、ＥＣＭ１を早めに起動することでフューエルポンプの燃圧を出来るだけ上げておき、ＩＧオン時の始動性や燃料エミッションを良好にすることができる。
【００２６】
ここで、ドアオープン時からＩＧオンになる時までの期間（以下、非通信期間という）においては、ＥＣＭ１が起動しているにもかかわらず、オルタネータ２は未起動である。したがって、この期間に、ＥＣＭ１からオルタネータ２にデータ送信要求を送信しても、オルタネータ２はデータを送信することはない。したがって、この非通信期間においては、バッファ１１ａのオルタネータ２からのデータを格納する部分には、受信データとは異なる値が格納されていることになる。この値は、場合によっては受信データとしては全く不適切な値となる可能性がある。
【００２７】
本実施形態のＣＰＵ１３ａは、このような非通信期間において、バッファ１１ａの不適切な値を用いた処理を行うことを禁止するため、起動直後から繰り返し（例えば０．１秒周期で）、図３および図４にそれぞれフローチャートとして示す、プログラム２００およびプログラム３００を実行するようになっている。なおＣＰＵ１３ａは、ＥＣＭ１の起動時には、プログラム２００およびプログラム３００の実行に先立ち、初期化処理を行い、この初期化処理において、ＣＰＵ１３ａは、ＲＡＭ１３ｂ中の各種変数を、初期値にセットする。
【００２８】
そしてＣＰＵ１３ａは、プログラム２００の実行において、まずステップ２０５で、現在ドアユニット４からのＷａｋｅ信号２１がオンであるか否かを判定する。なお、以下では、Ｗａｋｅ信号２１がオンであることを、ＷａｋｅＵｐ制御中であるという。ＷａｋｅＵｐ制御中である場合、続いてステップ２１０を実行し、ＷａｋｅＵｐ制御中でない場合、続いてステップ２４０を実行する。
【００２９】
ステップ２１０では、イグニッションキースイッチ５からのＩＧ信号に基づいて、現在ＩＧオンであるか否かを判定する。ＩＧオンであれば続いてステップ２２５を実行し、ＩＧオンでなければ続いてステップ２１５を実行する。
【００３０】
ステップ２１５では、受信信号割り込み禁止処理を実行する。具体的には、ＲＡＭ１３ｂ中に割り当てた受信信号割り込み禁止フラグをオンにする。続いてステップ２２０では、ダイアグ検出禁止処理を実行する、具体的には、ＲＡＭ１３ｂ中に割り当てたダイアグ検出禁止フラグをオンにする。ステップ２２０の後、プログラム２００の１回分の実行が終了する。
【００３１】
ステップ２２５では、スレーブ、すなわちオルタネータ２が起動しているか否かを判定する。オルタネータ２は、ＩＧオンによって電力供給が開始するようにはなっているが、実質的な起動タイミング、すなわち通信可能となるタイミングは、ＩＧオンよりも若干（例えば３秒）遅れることになる。オルタネータ２が起動しているか否かの判定は、具体的には、ＩＧオンとなってから基準時間が経過しているか否かで判定してもよいし、ＳＣＩ１１がオルタネータ２からデータを受信したか否かで判定してもよい。
【００３２】
ＩＧオンとなってから基準時間が経過しているか否かでオルタネータ２の起動を判定する場合、この基準時間は、あらかじめＲＯＭ１３ｃに記憶された一定値（例えば５秒）であってもよいし、各種条件に基づいて変動する値であってもよいし、一定の範囲内でランダムに決まる値であってもよい。ただし、この基準時間は、オルタネータ２の起動タイミングがＩＧオンから通常遅れる時間よりも長くすることが望ましい。
【００３３】
ＳＣＩ１１がオルタネータ２からデータを受信したか否かでオルタネータ２の起動を判定する場合は、受信フラグ１１ｂの値を用いる。すなわち、ステップ２２５を実行する度に、ＳＣＩ１１を用いてオルタネータ２にデータ送信要求を送信し、さらに、ステップ２２５を実行する度に、オルタネータ２に対応する受信フラグ１１ｂがオンとなったか否かを判定する。オルタネータ２が起動してデータ送信要求に応じることができるようになれば、ＳＣＩ１１がデータを受信して対応する受信フラグ１１ｂがオンとなる。なお、対応する受信フラグ１１ｂが一度オンとなって以降は、再度ＩＧオフになるまでは、その受信フラグ１１ｂが変化するとしないとに関わらず、常にスレーブが起動していると判定する。
【００３４】
ステップ２２５でスレーブが起動していると判定した場合、続いてステップ２３０を実行し、スレーブが起動していないと判定した場合、続いてステップ２１５を実行する。
【００３５】
ステップ２３０では、受信信号割り込み許可処理を実行する。具体的には、上述の受信信号割り込み禁止フラグをオフにする。続いてステップ２３５では、ダイアグ検出許可処理を実行する、具体的には、上述のダイアグ検出禁止フラグをオフにする。ステップ２３５の後、プログラム２００の１回分の実行が終了する。
【００３６】
ステップ２４０では、イグニッションキースイッチ５からのＩＧ信号に基づいて、現在ＩＧオンであるか否かを判定する。ＩＧオンであれば続いてステップ２３０を実行し、ＩＧオンでなければ続いてステップ２４５を実行する。
【００３７】
ステップ２４５では、ステップ２１５と同等の処理で、受信信号割り込み禁止処理を実行する。続いてステップ２５０では、ステップ２２０と同等の処理で、ダイアグ検出禁止処理を実行する。ステップ２５０の後、プログラム２００の１回分の実行が終了する。
【００３８】
このような処理をＣＰＵ１３ａに実現させるためのプログラム２００の他に、ＣＰＵ１３ａはオルタネータ２から受信したデータやセンサ６からの検出データに基づいて、エンジン点火時期、燃料噴射時期、フューエルポンプ制御内容等の演算を行い、その演算結果に基づいてアクチュエータ７を制御するための複数の制御用プログラムを、それぞれ繰り返し実行するようになっている。
【００３９】
そして、この制御用プログラムの実行においては、上述の受信信号割り込み禁止フラグがオフかオンかで、バッファ１１ａ中のオルタネータ２からのデータ格納用の領域（以下、オルタネータ用領域という）に記録されたデータの不使用、使用を切り替える。
【００４０】
オルタネータ用領域のデータを使用する場合は、具体的には、制御用プログラムの実行において、ＳＣＩ１１を用いてオルタネータ２にデータ送信要求を送信し、その後、バッファ１１ａのオルタネータ２用領域のデータを、ＲＡＭ１３ｂに設けたオルタネータ２のデータ用の変数に上書きし、その上書きされた変数を、制御内容の演算に用いる。
【００４１】
オルタネータ用領域のデータの不使用の具体的方法としては、（１）オルタネータ用領域のデータに代わる代替値を用いて制御処理を実行する方法、および、（２）制御処理自体を実行しない方法がある。
【００４２】
（１）の方法においては、代替値としては、例えば、起動時に初期化されたＲＡＭ１３ｂの変数値を用いる。この初期値は、現実のオルタネータ２の送信データではないものの、オルタネータ２の正常時の送信データと同じような値としてあらかじめ設定しておけば、演算結果が非常に不適切なものとなる可能性が低くなる。また、代替値を、他のセンサ６やＣＡＮから受信した値から推測した、オルタネータ２の電圧、電流値等としてもよい。
【００４３】
また、（２）の方法においては、オルタネータ用領域の値をＲＡＭ１３ｂに上書きしてもしなくてもよい。また、制御処理自体を実行しない方法としても、演算もアクチュエータ７の制御を実行しない方法であってもよいし、演算は行うがアクチュエータの制御も実行しない方法であってもよい。すなわち、制御に係る何らかの処理を行わないことで、最終的にアクチュエータ７がオルタネータ用領域の値に基づいて作動しないようになれば足りる。
【００４４】
また、ＣＰＵ１３ａは、オルタネータ２やオルタネータ２との通信に故障があるか否かを判断し、その判断結果をＥＥＰＲＯＭ１３ｄ、または、ＣＡＮを介して通信する診断用コンピュータに出力するためのダイアグノースプログラムを、繰り返し実行するようになっている。
【００４５】
そして、このダイアグノースプログラムの実行においては、上述のダイアグ検出禁止フラグがオフかオンかで、バッファ１１ａ中オルタネータ用領域に記録されたデータの故障検出への不使用、使用を切り替える。
【００４６】
オルタネータ用領域のデータを故障検出に使用する場合は、具体的には、ダイアグノースプログラムの実行において、ＳＣＩ１１を用いてオルタネータ２にデータ送信要求を送信し、その後、バッファ１１ａのオルタネータ用領域のデータを、ＲＡＭ１３ｂに設けたオルタネータ２のデータ用の変数に上書きし、その上書きされた変数を用いて、各種故障の有無を判定する。
【００４７】
オルタネータ用領域のデータの不使用の具体的方法としては、故障であるか否かの判定を行わない方法であってもよいし、バッファ１１ａのオルタネータ用領域のデータに代えてＲＡＭ１３ｂの初期値を用いて故障の有無の判定を行う方法でもよいし、バッファ１１ａのオルタネータ用領域のデータを用いて故障の有無の判定を行うが、その判定結果を出力しない方法でもよい。すなわち、故障診断に係る何らかの処理を行わないことで、最終的に、オルタネータ用領域の値に基づいた故障の判断結果が出力されないようになっていれば足りる。
【００４８】
このようなプログラム２００等をＣＰＵ１３ａが実行することで、ＥＣＭ１は、
（１）ＷａｋｅＵｐ制御中においては（ステップ２０５参照）、
（１−１）ＩＧオフであれば（ステップ２１０参照）バッファ１１ａ中のオルタネータ２からのデータのための領域の値を用いた処理（具体的にはエンジン制御処理、異常診断処理）を禁止し（ステップ２１５、２２０参照）、
（１−２）ＩＧオンであっても（ステップ２１０参照）、スレーブ起動前であれば（ステップ２２５参照）、バッファ１１ａ中のオルタネータ２からのデータのための領域の値を用いた処理を禁止し（ステップ２１５、２２０参照）、
（１−３）ＩＧオンであり（ステップ２１０参照）、かつスレーブ起動後である場合は（ステップ２２５参照）、バッファ１１ａ中のオルタネータ２からのデータのための領域の値を用いた処理の禁止を解除する（ステップ２３０、２３５参照）。
【００４９】
このようになっているので、ＥＣＭ１は、自身が起動してオルタネータ２が未起動である期間（場合（１−１）の期間に相当する）には、オルタネータ２からのデータを記憶するための記憶媒体に記録されている、実際の受信データではないデータを用いた処理を禁止される。したがって、このとき、オルタネータ２からデータを受けないことに起因して、受信データでないデータに基づくエンジン制御を行ってしまったり、オルタネータ２またはオルタネータ２との通信が故障していると判定してしまったりする可能性が低減する。
【００５０】
また、ＥＣＭ１は、ＩＧオンとなって以後も、オルタネータ２が起動するまでの期間（場合（１−２）の期間に相当する）は、オルタネータ２からのデータを記憶するための記憶媒体に記録されている、実際の受信データではないデータを用いた処理を禁止する。このようになっているので、オルタネータ２がＩＧオンから遅れて起動する場合でも、その遅れの期間に、受信データでないデータに基づく不適切な処理をしてしまう可能性が低減する。
【００５１】
また、ＥＣＭ１は、（２）ＷａｋｅＵｐ制御後においては（ステップ２０５参照）、
（２−１）ＩＧオン中であれば（ステップ２４０参照）、すなわち通常の走行時等においては、バッファ１１ａ中のオルタネータ２からのデータのための領域の値を用いた処理の禁止を解除し（ステップ２３０、２３５参照）、
（２−２）ＩＧオフ後であれば（ステップ２４０参照）、すなわちＥＣＭ１が依然起動中でオルタネータ２が作動停止している期間には、バッファ１１ａ中のオルタネータ２からのデータのための領域の値を用いた処理（具体的にはエンジン制御処理、異常診断処理）を禁止する（ステップ２４５、２５０参照）。
【００５２】
またＣＰＵ１３ａは、図４に示すプログラム３００の実行において、まずステップ３０５で、プログラム２００のステップ２０５と同等の処理で、現在ＷａｋｅＵｐ制御中であるか否かを判定し、ＷａｋｅＵｐ制御中である場合、続いてステップ３１０を実行し、ＷａｋｅＵｐ制御中でない場合、続いてステップ３４０を実行する。
【００５３】
ステップ３１０では、現在ＩＧオンであるか否かを判定し、ＩＧオンであれば続いてステップ３２５を実行し、ＩＧオンでなければ続いてステップ３２０を実行する。
【００５４】
ステップ３２０では、送信禁止処理を実行する。具体的には、ＲＡＭ１３ｂ中に割り当てた送信禁止フラグをオンにする。ステップ３２０の後、プログラム３００の１回分の実行が終了する。
【００５５】
ステップ３２５では、ステップ２２５と同等の処理で、スレーブが起動しているか否かを判定し、スレーブが起動していると判定した場合、続いてステップ３３０を実行し、スレーブが起動していないと判定した場合、続いてステップ３２０を実行する。
【００５６】
ステップ３３０では、送信許可処理を実行する。具体的には、上述の送信禁止フラグをオフにする。ステップ３３５の後、プログラム３００の１回分の実行が終了する。
【００５７】
ステップ３４０では、現在ＩＧオンであるか否かを判定し、ＩＧオンであれば続いてステップ３３０を実行し、ＩＧオンでなければ続いてステップ３５０を実行する。
【００５８】
ステップ３５０では、ステップ３２０と同等の処理で、送信禁止処理を実行する。ステップ３５０の後、プログラム３００の１回分の実行が終了する。
【００５９】
また、ＣＰＵ１３ａは、上述の複数の制御用プログラムおよびダイアグノースプログラムの実行において、ＳＣＩ１１を用いてオルタネータ２にデータ送信要求を送信するか否かを、送信禁止フラグがオフかオンかによって切り替える。このようになっていることで、送信禁止フラグがオンの場合、ＥＣＭ１からオルタネータ２にデータ送信要求が送信されなくなる。
【００６０】
このようなプログラム３００をＣＰＵ１３ａが実行することで、ＥＣＭ１は、
（３）ＷａｋｅＵｐ制御中においては（ステップ３０５参照）、
（３−１）ＩＧオフであれば（ステップ３１０参照）、オルタネータ２へのデータ送信要求の送信を禁止し（ステップ３２０参照）、
（３−２）ＩＧオンであっても（ステップ３１０参照）、スレーブ起動前であれば（ステップ３２５参照）、オルタネータ２へのデータ送信要求の送信を禁止し（ステップ３２０参照）、
（３−３）ＩＧオンであり（ステップ３１０参照）、かつスレーブ起動後である場合は（ステップ３２５参照）、オルタネータ２へのデータ送信要求の送信の禁止を解除する（ステップ３３０参照）。
【００６１】
このようになっているので、ＥＣＭ１は、自身が起動してオルタネータ２が未起動である期間（場合（３−１）の期間に相当する）には、オルタネータ２へのデータ送信要求の送信を禁止される。このようにすることで、相手に受信されることのない無駄なデータ送信要求を送信することがなくなる。
【００６２】
また、ＥＣＭ１は、ＩＧオンとなって以後も、オルタネータ２が起動するまでの期間（場合（３−２）の期間に相当する）は、オルタネータ２へのデータ送信要求の送信を禁止される。このようにすることで、オルタネータ２がＩＧオンから遅れて起動する場合でも、相手に受信されることのない無駄なデータ送信要求を送信することがなくなる。
【００６３】
また、ＥＣＭ１は、（４）ＷａｋｅＵｐ制御後においては（ステップ３０５参照）、
（４−１）ＩＧオン中であれば（ステップ３４０参照）、すなわち通常の走行時等においては、オルタネータ２へのデータ送信要求の送信の禁止を解除し（ステップ３３０参照）、
（４−２）ＩＧオフ後であれば（ステップ３４０参照）、すなわちＥＣＭ１が依然起動中でオルタネータ２が作動停止している期間には、オルタネータ２へのデータ送信要求の送信を禁止する（ステップ３５０参照）。
【００６４】
なお、上記の実施形態において、ＥＣＭ１が車両用制御装置に相当し、オルタネータ２が他の車両用制御装置に相当し、ＳＣＩ１１のバッファ１１ａ以外の部分が通信回路に相当し、バッファ１１ａが記憶媒体に相当する。また、ＣＰＵ１３ａが、プログラム２００のステップ２０５、２１０、２２５を実行することで、期間判定手段として機能し、ステップ２１５、２２０、２３０、２３５を実行することで、禁止手段として機能する。また、ＣＰＵ１３ａが、プログラム３００のステップ３０５、３１０、３２５を実行することで、期間判定手段として機能し、ステップ３２０、３３０を実行することで、禁止手段として機能する。
【００６５】
（他の実施形態）
以上、本発明の実施形態について説明したが、本発明は、上記実施形態のみに限定されるものではなく、本発明の各発明特定事項の機能を実現し得る種々の形態を包含するものである。
【００６６】
例えば、車両用制御装置の例として、上記実施形態ではＥＣＭ１を用いてるが、車両用制御装置は、エンジンを制御するものに限らない。
【００６７】
また、ＥＣＭ１とオルタネータ２、すなわち、起動時間の異なる２つの制御装置は、ＬＩＮによって接続されている必要はなく、ＣＡＮ等、他のいかなる通信回線によって接続されていても構わない。
【００６８】
また、本発明を適用する対象としては、ＷａｋｅＵｐシステムに限らず、通信する２つの車両用制御装置間の起動タイミングが異なるようなシステムであれば足りる。
【００６９】
また、上記実施形態においては、ＥＣＭ１は、自身の起動後オルタネータ２が起動するまでの期間において、バッファ１１ａのオルタネータ用領域のデータを故障診断に使用することを禁止しているが、故障診断のみならず、データに異常があったときに安全な代替値を用いて制御を行わせるフェールセーフ処理において、バッファ１１ａのオルタネータ用領域のデータの異常の有無を検出することを禁止するようになっていてもよい。すなわち、ＥＣＭ１は、自身の起動後オルタネータ２が起動するまでの期間において、オルタネータ用領域のデータの異常の有無の検出を禁止するようになっていれば足りる。
【００７０】
また、ＥＣＭ１は、自身の起動後オルタネータ２が起動するまでの期間において、必ずしもオルタネータ用領域のデータを用いるすべての処理を禁止する必要はない。例えば、オルタネータ２からデータを受けていないときに、オルタネータ用領域のデータを用いることが、ＥＣＭ１の正常な作動に対して致命的になるような処理においてのみ、オルタネータ用領域のデータを用いることを禁止するようになっていてもよい。
【００７１】
また、プログラム２００のステップ２２５およびプログラム３００のステップ３２５の処理においては、オルタネータ２が起動しているか否かの判定は、具体的には、ＩＧオンとなってから基準時間が経過するタイミング、および、または、ＳＣＩ１１がオルタネータ２からデータを受信するタイミングのうち、早い方のタイミングが訪れるまでは、オルタネータ２が起動していないと判定し、そのタイミングが訪れて以降は、オルタネータ２が起動していると判定するようになっていてもよい。
【００７２】
また、Ｗａｋｅ信号２１がオンか否かだけで、ＥＣＭ１の起動後オルタネータ２が起動する前の期間であるか否かを判定するようになっていてもよい。また、オルタネータ２に対応する受信フラグ１１ｂが最初にオンになったか否かのみで、ＥＣＭ１の起動後オルタネータ２が起動する前の期間であるか否かを判定するようになっていてもよい。また、ＩＧオンになったか否かのみで、ＥＣＭ１の起動後オルタネータ２が起動する前の期間であるか否かを判定してもよい。
【００７３】
また、ＥＣＭ１は、ＥＣＭ１の起動後オルタネータ２が起動する前の期間の全期間に渡って、オルタネータ用領域のデータを用いる処理を禁止する必要はなく、その一部の期間においてのみ、オルタネータ用領域のデータを用いる処理を禁止するようになっていてもよい。
【００７４】
また、上記の実施形態においては、車両の主電源オンとして、ＩＧオンが例示されているが、車両の主電源オンとしては、ＡＣＣオンであってもよい。
【図面の簡単な説明】
【００７５】
【図１】本発明の実施形態に係るＥＣＭ１、オルタネータ２等のハードウェア図である。
【図２】ドアユニット信号２１、ＩＧ信号２２およびＥＣＭ電源２３のタイミング図である。
【図３】ＣＰＵ１３ａが実行するプログラム２００のフローチャートである。
【図４】ＣＰＵ１３ａが実行するプログラム３００のフローチャートである。
【符号の説明】
【００７６】
１…エンジンコントロールモジュール、２…オルタネータ、３…メータ、
４…ドアユニット、５…イグニッションキースイッチ、６…センサ、
７…アクチュエータ、１１…シリアルコミュニケーションインターフェース、
１１ａ…バッファ、１１ｂ…受信フラグ、１２…ＣＡＮドライバ、１３…制御回路、
１３ａ…ＣＰＵ、１３ｂ…ＲＡＭ、１３ｃ…ＲＯＭ、１３ｄ…ＥＥＰＲＯＭ、
２１…Ｗａｋｅ信号、２２…ＩＧ信号、２３…ＥＣＭ作動、
２００、３００…プログラム。
【図１】
2006290152.tif 000003
【図２】
2006290152.tif 000004
【図３】
2006290152.tif 000005
【図４】
2006290152.tif 000006