(57)【要約】【課題】クロック信号の異常を検出するために用いられる信号を送受信するための専用のポートを必要とせず、かつ、簡便な方法で精度よくクロック信号の異常を検出可能な電子制御装置を提供する。【解決手段】制御ユニットＢのマイクロコンピュータ３１が、通信線４ａ、４ｂを介して制御ユニットＡのマイクロコンピュータ２１から所定データを受信した際に、前回以前の２回分の所定データの受信完了時における各々のフリーランタイマ３１ａのカウント値の差である受信完了時間間隔と、制御ユニットＡのマイクロコンピュータ２１から受信した送信完了時間間隔と、を比較し、受信完了時間間隔と送信完了時間間隔との差が所定範囲内にあるか否かを判定する。【選択図】図１
2015161183.tif 000002
【特許請求の範囲】
【請求項１】
複数の制御対象を各々分担して制御すると共に通信線を介して互いに接続された一方のマイクロコンピュータ及び他方のマイクロコンピュータを備え、前記一方のマイクロコンピュータ及び他方のマイクロコンピュータは、各々、クロック信号を供給する発振器と、前記複数の制御対象の制御に必要な所定データを送受信するデータ通信部と、を有する電子制御装置であって、
前記一方のマイクロコンピュータ及び他方のマイクロコンピュータは、各々、前記クロック信号に基づきカウントするフリーランタイマを更に有し、
前記一方のマイクロコンピュータは、前記通信線を介して前記他方のマイクロコンピュータに前記所定データを送信する際に、前回以前の２回分の所定データの送信完了時における各々の前記フリーランタイマのカウント値の差である送信完了時間間隔を前記所定データに付加して前記他方のマイクロコンピュータに送信し、
前記他方のマイクロコンピュータは、前記通信線を介して前記一方のマイクロコンピュータから前記所定データを受信した際に、前回以前の２回分の所定データの受信完了時における各々の前記フリーランタイマのカウント値の差である受信完了時間間隔と、前記一方のマイクロコンピュータから受信した送信完了時間間隔と、を比較し、前記受信完了時間間隔と前記送信完了時間間隔との差が所定範囲内にあるか否かを判定することにより、前記クロック信号の異常を検出することを特徴とする電子制御装置。
【請求項２】
前記一方のマイクロコンピュータ及び他方のマイクロコンピュータの各々の前記データ通信部は、所定周期で前記所定データを送受信することを特徴とする請求項１に記載の電子制御装置。
【請求項３】
前記一方のコンピュータは、前々回の所定データの送信完了時の前記フリーランタイマのカウント値と前回の所定データの送信完了時の前記フリーランタイマのカウント値との差を前記送信完了時間間隔として求め、前記他方のマイクロコンピュータは、前々回の所定データの受信完了時の前記フリーランタイマのカウント値と前回の所定データの受信完了時の前記フリーランタイマのカウント値との差を前記受信完了時間間隔として求めることを特徴とする請求項１又は２に記載の電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子制御装置に関し、特に、複数の制御対象を分担して制御する一方のマイクロコンピュータ及び他方のマイクロコンピュータを備える電子制御装置に関する。
【背景技術】
【０００２】
従来より、車両に搭載されるエンジンや変速機等の制御対象を制御する電子制御装置が知られている。近年、このような電子制御装置として、複数の制御対象の制御を機能的に複数のマイクロコンピュータに分担させ、各マイクロコンピュータに個々の制御対象を対応して制御させるようにした電子制御装置が提案されている。
【０００３】
このような電子制御装置では、複数のマイクロコンピュータは、各々が備える発振器が出力するクロック信号に従って、他のマイクロコンピュータと協働して個々の制御対象を制御する。このため、発振器が出力するクロック信号の発振周波数がマイクロコンピュータ間で異なる場合には、各マイクロコンピュータは他のマイクロコンピュータと協働して個々の制御対象を制御することが困難になる傾向が考えられる。
【０００４】
かかる状況下で、特許文献１は、電子制御装置及びその制御方法に関し、一方のマイクロコンピュータが出力するＷＤＴ（Ｗａｔｃｈ  Ｄｏｇ  Ｔｉｍｅｒ）信号を他のマイクロコンピュータに入力し、他のマイクロコンピュータがこのＷＤＴ信号のパルス幅が所定範囲内にあるか否かを判定することによって、一方のマイクロコンピュータの発振器の異常を検出する構成を開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−１０７５２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、本発明者の検討によれば、特許文献１の構成においては、各々のマイクロコンピュータにＷＤＴ信号を入力するための専用のポートが必要になるため、マイクロコンピュータの個数が増加すると、更にその分、マイクロコンピュータのポート数が増加して、電子制御装置全体の構成が煩雑になってそのコストが増加する傾向が考えられる。
【０００７】
また、かかる構成においては、ＷＤＴ信号のパルス幅が所定範囲内にあるか否かを判定するものであるため、ＷＤＴ信号のパルスの立ち上がりや立ち下がりに遅れがないようにＷＴＤ信号のパルス幅等を厳密に規定して維持する必要があり、電子制御装置全体の構成が煩雑になってそのコストが増加する傾向が考えられる。
【０００８】
また、かかる構成においては、ＷＤＴ信号の送信線や受信線にノイズが重畳した場合には、そのノイズをＷＤＴ信号のパルス幅のエッジと認識してＷＤＴ信号のパルス幅を誤検出する可能性があるため、ＷＤＴ信号のパルス幅を測定するためにＷＤＴ信号のエッジ間隔を精度よく検出できるエッジキャプチャ機能が必要になり、電子制御装置全体の構成が煩雑になってそのコストが増加する傾向が考えられる。
【０００９】
本発明は、以上の検討を経てなされたものであり、クロック信号の異常を検出するために用いられる信号を送受信するための専用のポートを必要とせず、かつ、簡便な方法で精度よく、クロック信号の異常を検出することができる電子制御装置を提供することを目的
とする。
【課題を解決するための手段】
【００１０】
以上の目的を達成するべく、本発明は、複数の制御対象を各々分担して制御すると共に通信線を介して互いに接続された一方のマイクロコンピュータ及び他方のマイクロコンピュータを備え、前記一方のマイクロコンピュータ及び他方のマイクロコンピュータは、各々、クロック信号を供給する発振器と、前記複数の制御対象の制御に必要な所定データを送受信するデータ通信部と、を有する電子制御装置であって、前記一方のマイクロコンピュータ及び他方のマイクロコンピュータは、各々、前記クロック信号に基づきカウントするフリーランタイマを更に有し、前記一方のマイクロコンピュータは、前記通信線を介して前記他方のマイクロコンピュータに前記所定データを送信する際に、前回以前の２回分の所定データの送信完了時における各々の前記フリーランタイマのカウント値の差である送信完了時間間隔を前記所定データに付加して前記他方のマイクロコンピュータに送信し、  前記他方のマイクロコンピュータは、前記通信線を介して前記一方のマイクロコンピュータから前記所定データを受信した際に、前回以前の２回分の所定データの受信完了時における各々の前記フリーランタイマのカウント値の差である受信完了時間間隔と、前記一方のマイクロコンピュータから受信した送信完了時間間隔と、を比較し、前記受信完了時間間隔と前記送信完了時間間隔との差が所定範囲内にあるか否かを判定することにより、前記クロック信号の異常を検出することを第１の局面とする。
【００１１】
また、本発明は、第１の局面に加え、前記一方のマイクロコンピュータ及び他方のマイクロコンピュータの各々の前記データ通信部は、所定周期で前記所定データを送受信することを第２の局面とする。
【００１２】
更に、本発明は、第１又は第２の局面に加え、前記一方のコンピュータは、前々回の所定データの送信完了時の前記フリーランタイマのカウント値と前回の所定データの送信完了時の前記フリーランタイマのカウント値との差を前記送信完了時間間隔として求め、前記他方のマイクロコンピュータは、前々回の所定データの受信完了時の前記フリーランタイマのカウント値と前回の所定データの受信完了時の前記フリーランタイマのカウント値との差を前記受信完了時間間隔として求めることを第３の局面とする。
【発明の効果】
【００１３】
以上の本発明の第１の局面にかかる電子制御装置によれば、一方のマイクロコンピュータが、通信線を介して他方のマイクロコンピュータに所定データを送信する際に、前回以前の２回分の所定データの送信完了時における各々のフリーランタイマのカウント値の差である送信完了時間間隔を所定データに付加して他方のマイクロコンピュータに送信すると共に、他方のマイクロコンピュータが、通信線を介して一方のマイクロコンピュータから所定データを受信した際に、前回以前の２回分の所定データの受信完了時における各々のフリーランタイマのカウント値の差である受信完了時間間隔と、一方のマイクロコンピュータから受信した送信完了時間間隔と、を比較し、受信完了時間間隔と送信完了時間間隔との差が所定範囲内にあるか否かを判定することにより、クロック信号の異常を検出するものであるため、クロック信号の異常を検出するために用いられる２つのパルスを有する信号を送受信するための専用のポートを増設する必要性を排し、かつ、簡便な方法で精度よくクロック信号の異常を検出することができる。特に、２つのパルスを有する信号は、ＣＡＮ通信ポートを用いて送受信することができるため、制御対象の個数等が増加してマイクロコンピュータの個数が増加しても、クロック信号の異常を検出するために用いられる２つのパルスを有する信号を送受信するための専用のポートを増設する必要性がない。また、受信完了時間間隔と送信完了時間間隔との差であるデータ値でクロック信号の異常を検出するものであるため、ノイズの影響を確実に低減することができる。更に、このように送信完了時間間隔と受信完了時間間隔との比較に基づく判定を行うものであるため
、ＣＡＮ通信等に見られるデータ通信のタイミングの遅れの影響を確実に低減することができる。
【００１４】
また、本発明の第２の局面にかかる電子制御装置によれば、一方のマイクロコンピュータ及び他方のマイクロコンピュータの各々のデータ通信部が、所定周期で所定データを送受信するものであるため、クロック信号の異常を定期的に判定することができる。
【００１５】
また、本発明の第３の局面にかかる電子制御装置によれば、一方のコンピュータが、前々回の所定データの送信完了時のフリーランタイマのカウント値と前回の所定データの送信完了時のフリーランタイマのカウント値との差を送信完了時間間隔として求めると共に、他方のマイクロコンピュータが、前々回の所定データの受信完了時のフリーランタイマのカウント値と前回の所定データの受信完了時のフリーランタイマのカウント値との差を受信完了時間間隔として求めるものであるため、直近の前回以前の２回分の所定データの送受信完了時における各々のフリーランタイマのカウント値の差である送信完了時間間隔及び受信完了時間間隔を用いることができ、メモリの容量を低減することができると共に演算処理負担を軽減した態様で、クロック信号の異常を検出するために用いられる２つのパルスを有する信号を送受信するための専用のポートを増設する必要性を排し、かつ、簡便な方法で精度よくクロック信号の異常を検出することができる。
【図面の簡単な説明】
【００１６】
【図１】図１は、本発明の実施形態における電子制御装置の構成を示すブロック図である。
【図２】図２は、本実施形態における電子制御装置の起動時におけるクロック異常判定処理の流れを示すフローチャートである。
【図３】図３は、本実施形態における電子制御装置の定常時におけるクロック異常判定処理の流れを示すフローチャートである。
【図４】図４は、本実施形態におけるクロック異常判定処理の一例を示すタイミングチャートである。
【発明を実施するための形態】
【００１７】
以下、図面を適宜参照して、本発明の実施形態における電子制御装置につき、詳細に説明する。
【００１８】
〔電子制御装置の構成〕
まず、図１を参照して、本実施形態における電子制御装置の構成につき、詳細に説明する。
【００１９】
図１は、本実施形態における電子制御装置の構成を示すブロック図である。
【００２０】
図１に示すように、本実施形態における電子制御装置１は、自動二輪車等の車両に搭載され、例えば車両の燃料噴射システムや点火システム等の制御対象を制御する制御ユニットＡと、例えば車両の電子制御スロットル等の制御対象を制御する制御ユニットＢと、を備えている。つまり、電子制御装置１は、制御ユニットＡと制御ユニットＢとが複数の制御対象を分担して制御するように構成されている。
【００２１】
制御ユニットＡは、マイクロコンピュータ２１、発振器２２、及びＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ドライバ（ＣＡＮトランシーバ）２３を備えている。
【００２２】
マイクロコンピュータ２１は、図示を省略するメモリから必要な制御プログラム及び制
御データを読み出して、制御ユニットＡ全体の動作を制御する制御プログラムを実行する。かかるマイクロコンピュータ２１は、ＣＡＮドライバ２３を介して制御ユニットＢとの間で制御対象の制御に必要なデータを所定周期毎に送受信する機能を有している。
【００２３】
マイクロコンピュータ２１は、フリーランタイマ２１ａを備えている。フリーランタイマ２１ａは、マイクロコンピュータ２１の端子の機能がポート入出力機能からＣＡＮ通信機能に切り替えられた時に自動的に選択されるマイクロコンピュータ２１の計時機能であり、発振器２２が出力するクロック信号に基づき計時する。
【００２４】
発振器２２は、マイクロコンピュータ２１に外付けされた水晶発振器等によって構成され、マイクロコンピュータ２１を動作させるためのクロック信号をマイクロコンピュータ２１に出力する。
【００２５】
ＣＡＮドライバ２３は、マイクロコンピュータ２１に接続されたＩＣ回路によって構成され、電気信号の電圧の調整等を行って２線式の通信バス（通信線）４ａ、４ｂを介して制御ユニットＢ側のＣＡＮドライバ３３との間で電気信号のＣＡＮ通信を行う。
【００２６】
制御ユニットＢは、マイクロコンピュータ３１、発振器３２、及びＣＡＮドライバ（ＣＡＮトランシーバ）３３を備えている。
【００２７】
マイクロコンピュータ３１は、図示を省略するメモリから必要な制御プログラム及び制御データを読み出して、制御ユニットＢ全体の動作を制御する制御プログラムを実行する。かかるマイクロコンピュータ３１は、ＣＡＮドライバ３３を介して制御ユニットＡとの間で制御対象の制御に必要なデータを所定周期毎に送受信する機能を有している。
【００２８】
マイクロコンピュータ３１は、フリーランタイマ３１ａを備えている。フリーランタイマ３１ａは、マイクロコンピュータ３１の端子の機能がポート入出力機能からＣＡＮ通信機能に切り替えられた時に自動的に選択されるマイクロコンピュータ３１の計時機能であり、発振器３２が出力するクロック信号に基づき計時する。
【００２９】
発振器３２は、マイクロコンピュータ３１に外付けされた水晶発振器等によって構成され、マイクロコンピュータ３１を動作させるためのクロック信号をマイクロコンピュータ３１に出力する。
【００３０】
ＣＡＮドライバ３３は、マイクロコンピュータ３１に接続されたＩＣ回路によって構成され、電気信号の電圧の調整等を行って２線式の通信バス４ａ、４ｂを介して制御ユニットＡ側のＣＡＮドライバ２３との間で電気信号のＣＡＮ通信を行う。
【００３１】
なお、本実施形態では、制御ユニットＡ及び制御ユニットＢは通信バス４ａ、４ｂを介してＣＡＮ通信で接続されることとしたが、制御ユニットＡと制御ユニットＢとをＬＩＮ（Ｌｏｃａｌ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｎｅｔｗｏｒｋ）通信、ＳＰＩ（Ｓｅｒｉａｌ  Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ）通信、ＦｌｅｘＲａｙ通信等のＣＡＮ通信以外の通信方式で接続してもよい。
【００３２】
また、本実施形態では、電子制御装置１は、制御ユニットＡと制御ユニットＢとの２つの制御ユニットを備えることとしたが、制御ユニットの数は２つに限定されることはなく、３つ以上であってもよい。
【００３３】
更に、本実施形態では、制御ユニットＡ及び制御ユニットＢはマイクロコンピュータを１つ備える構成であるとしたが、マイクロコンピュータを２つ以上備えていてもよい。
【００３４】
このような構成を有する電子制御装置１は、起動時及び定常時に以下に示すクロック異常判定処理を実行することにより、専用のポートを必要とせず、且つ、簡便な方法で精度よく発振器２２、３２が出力するクロック信号の異常を検出する。以下、図２及び図３を参照して、本実施形態における電子制御装置１が実行する起動時及び定常時のクロック異常判定処理の流れについて説明する。かかる起動時及び定常時のクロック異常判定処理においては、マイクロコンピュータ２１のフリーランタイマ２１ａ及びマイクロコンピュータ３１のフリーランタイマ３１ａが、各々対応してマイクロコンピュータ２１及びマイクロコンピュータ３１の動作に関する計時を行うことになる。
【００３５】
〔起動時のクロック異常判定処理〕
図２は、本実施形態における電子制御装置１の起動時におけるクロック異常判定処理の流れを示すフローチャートである。
【００３６】
図２のフローチャートに示すように、本実施形態の起動時におけるクロック異常判定処理は、車両に搭載された図示を省略するバッテリ等の電源から電子制御装置１に対して電力が供給されたタイミングで開始となり、クロック異常判定処理はステップＳ１ａ及びステップＳ１ｂの処理に進む。
【００３７】
ステップＳ１ａ及びステップＳ１ｂの処理では、制御ユニットＡのマイクロコンピュータ２１及び制御ユニットＢのマイクロコンピュータ３１が、各々の端子の機能をポート入出力機能からＣＡＮ通信機能に切り替える。これにより、ステップＳ１ａ及びステップＳ１ｂの処理は完了し、クロック異常判定処理はステップＳ２の処理に進む。
【００３８】
ステップＳ２の処理では、制御ユニットＡのマイクロコンピュータ２１が、ＣＡＮドライバ２３を介して制御対象を制御するために必要なデータを制御ユニットＢに送信する。この送信は、制御ユニットＡ側の発振器２２のクロック信号の診断用の起動時の１回目の送信である。これにより、ステップＳ２の処理は完了し、クロック異常判定処理はステップＳ３ａからステップＳ３ｄの処理に進む。
【００３９】
ステップＳ３ａからステップＳ３ｄの処理では、制御ユニットＢのマイクロコンピュータ３１が、ステップＳ２の処理でＣＡＮドライバ３３を介して制御ユニットＡから送信されたデータを受信し（ステップＳ３ａ）、フリーランタイマ３１ａのカウント値に基づいてこのデータの受信が完了した時間をメモリに記憶する（ステップＳ３ｂ）。一方で、制御ユニットＡのマイクロコンピュータ２１は、フリーランタイマ２１ａのカウント値に基づいてステップＳ２の処理での制御ユニットＢへのデータ送信が完了した時間をメモリに記憶し（ステップＳ３ｃ）、予め設定された時間だけ待機する（ステップＳ３ｄ）。これにより、ステップＳ３ａからステップＳ３ｄの処理は完了し、クロック異常判定処理はステップＳ４の処理に進む。
【００４０】
ステップＳ４の処理では、制御ユニットＡのマイクロコンピュータ２１が、ＣＡＮドライバ２３を介して制御対象を制御するために必要なデータを制御ユニットＢに送信する。この送信は、制御ユニットＡ側の発振器２２のクロック信号の診断用の起動時の２回目の送信である。これにより、ステップＳ４の処理は完了し、クロック異常判定処理はステップＳ５ａからステップＳ５ｅの処理に進む。
【００４１】
ステップＳ５ａからステップＳ５ｅの処理では、制御ユニットＢのマイクロコンピュータ３１が、ステップＳ４の処理でＣＡＮドライバ３３を介して制御ユニットＡから送信されたデータを受信し（ステップＳ５ａ）、フリーランタイマ３１ａのカウント値に基づいてこのデータの受信が完了した時間をメモリに記憶する（ステップＳ５ｂ）。そして、マ
イクロコンピュータ３１は、ステップＳ３ｂの処理においてメモリに記憶した時間とステップＳ５ｂの処理においてメモリに記憶した時間との差分を受信間時間として算出する（ステップＳ５ｃ）。一方で、制御ユニットＡのマイクロコンピュータ２１は、フリーランタイマ２１ａのカウント値に基づいてステップＳ４の処理での制御ユニットＢへのデータ送信が完了した時間をメモリ記憶し（ステップＳ５ｄ）、ステップＳ３ｄの処理においてメモリに記憶した時間とステップＳ５ｄの処理においてメモリに記憶した時間との差分を送信間時間として算出する（ステップＳ５ｅ）。これにより、ステップＳ５ａからステップＳ５ｅの処理は完了し、クロック異常判定処理はステップＳ６の処理に進む。
【００４２】
ステップＳ６の処理では、制御ユニットＡのマイクロコンピュータ２１が、ＣＡＮドライバ２３を介して制御対象を制御するために必要なデータと共にステップＳ５ｅの処理において算出された送信間時間を制御ユニットＢに送信する。この送信は、制御ユニットＡ側の発振器２２のクロック信号の診断用の起動時の３回目の送信である。これにより、ステップＳ６の処理は完了し、クロック異常判定処理はステップＳ７の処理に進む。
【００４３】
ステップＳ７の処理では、制御ユニットＢのマイクロコンピュータ３１が、ステップＳ６の処理でＣＡＮドライバ３３を介して制御ユニットＡから送信されたデータと送信間時間とを受信する。これにより、ステップＳ７の処理は完了し、クロック異常判定処理はステップＳ８の処理に進む。
【００４４】
ステップＳ８の処理では、制御ユニットＢのマイクロコンピュータ３１が、ステップＳ５ｃの処理において算出された受信間時間とステップＳ７の処理において受信された送信間時間との差が所定範囲内にあるか否かを判別することによって、発振器２２が出力するクロック信号又は発振器３２が出力するクロック信号に異常があるか否かを判定する。具体的には、受信間時間と送信間時間との差が所定範囲内にある場合には、マイクロコンピュータ３１はクロック信号に異常はないと判定する。一方で、受信間時間と送信間時間との差が所定範囲内にない場合には、マイクロコンピュータ３１は発振器２２が出力するクロック信号又は発振器３２が出力するクロック信号に異常があると判定する。これにより、ステップＳ８の処理は完了し、クロック異常判定処理はステップＳ９ａ及びステップＳ９ｂの処理に進む。
【００４５】
ステップＳ９ａ及びステップＳ９ｂの処理では、制御ユニットＢのマイクロコンピュータ３１が、ＣＡＮドライバ３３を介してステップＳ８の判定結果をクロック信号の診断結果として制御ユニットＡに送信する（ステップＳ９ａ）。そして、マイクロコンピュータ３１は、クロック信号に異常がないと判定された場合には、制御対象を通常通り起動し、又は、クロック信号に異常があると判定された場合には、制御対象の動作を停止させる等のフェイルセーフアクションを実行する。これにより、ステップＳ９ａ及びステップＳ９ｂの処理は完了し、クロック異常判定処理はステップＳ１０ａ及びステップＳ１０ｂの処理に進む。
【００４６】
ステップＳ１０ａ及びステップＳ１０ｂの処理では、制御ユニットＡのマイクロコンピュータ２１が、ステップＳ９ａの処理でＣＡＮドライバ２３を介して制御ユニットＢから送信されたクロック信号の診断結果を受信する（ステップＳ１０ａ）。そして、マイクロコンピュータ２１は、この診断結果からクロック信号に異常がないと判定された場合には、制御対象を通常通り起動し、又は、クロック信号に異常があると判定された場合には、制御対象の動作を停止させる等のフェイルセーフアクションを実行する。これにより、ステップＳ１０ａ及びステップＳ１０ｂの処理は完了し、一連のクロック異常判定処理は終了する。
【００４７】
〔定常時のクロック異常判定処理〕
図３は、本実施形態における電子制御装置１の定常時におけるクロック異常判定処理の流れを示すフローチャートである。
【００４８】
図３のフローチャートに示すように、本実施形態の定常時におけるクロック異常判定処理は、起動時におけるクロック異常判定処理が終了したタイミングで開始となり、クロック異常判定処理はステップＳ２１の処理に進む。定常時のクロック異常判定処理は、電子制御装置１に対して電力が供給されている間、所定周期毎に繰り返し実行される。
【００４９】
ステップＳ２１の処理では、制御ユニットＡのマイクロコンピュータ２１が、前回の定常時のクロック異常判定処理における前回値としての制御ユニットＢに制御対象を制御するために必要なデータを送信した時のデータ送信完了時間であってメモリに記憶されているデータ送信完了時間を、前々回に制御ユニットＢに制御対象を制御するために必要なデータを送信した時のデータ送信完了時間としてメモリに別途記憶する。これにより、ステップＳ２１の処理は完了し、クロック異常判定処理はステップＳ２２の処理に進む。
【００５０】
ステップＳ２２の処理では、制御ユニットＡのマイクロコンピュータ２１が、前回の定常時のクロック異常判定処理における現在値としての制御ユニットＢに制御対象を制御するために必要なデータを送信した時のデータ送信完了時間であってメモリに記憶されているデータ送信完了時間を、前回に制御ユニットＢに制御対象を制御するために必要なデータを送信した時のデータ送信完了時間としてメモリに別途記憶する。これにより、ステップＳ２２の処理は完了し、クロック異常判定処理はステップＳ２３の処理に進む。
【００５１】
ステップＳ２３の処理では、制御ユニットＡのマイクロコンピュータ２１が、ステップＳ２１の処理においてメモリに記憶したデータ送信完了時間とステップＳ２２の処理においてメモリに記憶したデータ送信完了時間との差分を送信間時間として算出する。これにより、ステップＳ２３の処理は完了し、クロック異常判定処理はステップＳ２４の処理に進む。
【００５２】
ステップＳ２４の処理では、制御ユニットＡのマイクロコンピュータ２１が、ＣＡＮドライバ２３を介して制御対象を制御するために必要なデータと共にステップＳ２３の処理において算出された送信間時間を制御ユニットＢに送信する。この送信は、制御ユニットＡ側の発振器２２のクロック信号の診断用の定常時の１回目の送信である。これにより、ステップＳ２４の処理は完了し、クロック異常判定処理はステップＳ２５の処理に進む。
【００５３】
ステップＳ２５の処理では、制御ユニットＢのマイクロコンピュータ３１が、ステップＳ２４の処理でＣＡＮドライバ３３を介して制御ユニットＡから送信されたデータと送信間時間とを受信する。これにより、ステップＳ２５の処理は完了し、クロック異常判定処理はステップＳ２６の処理に進む。
【００５４】
ステップＳ２６の処理では、制御ユニットＢのマイクロコンピュータ３１が、前回の定常時のクロック異常判定処理における前回値としての制御ユニットＡから制御対象を制御するために必要なデータを受信した時のデータ受信完了時間であってメモリに記憶されているデータ受信完了時間を、前々回の制御ユニットＡから制御対象を制御するために必要なデータを受信した時のデータ受信完了時間としてメモリに別途記憶する。これにより、ステップＳ２６の処理は完了し、クロック異常判定処理はステップＳ２７の処理に進む。
【００５５】
ステップＳ２７の処理では、制御ユニットＢのマイクロコンピュータ３１が、前回の定常時のクロック異常判定処理における今回値として制御ユニットＡから制御対象を制御するために必要なデータを受信した時のデータ受信完了時間であってメモリに記憶されているデータ受信完了時間を、前回の制御ユニットＡから制御対象を制御するために必要なデ
ータを受信した時のデータ受信完了時間として別途記憶する。これにより、ステップＳ２７の処理は完了し、クロック異常判定処理はステップＳ２８の処理に進む。
【００５６】
ステップＳ２８の処理では、制御ユニットＢのマイクロコンピュータ３１が、現在のフリーランタイマ３１ａのカウント値に基づいてステップＳ２５の処理での今回制御ユニットＡから制御対象を制御するために必要なデータの受信が完了した時のデータ受信完了時間を記憶する。これにより、ステップＳ２８の処理は完了し、クロック異常判定処理はステップＳ２９の処理に進む。
【００５７】
ステップＳ２９の処理では、制御ユニットＢのマイクロコンピュータ３１が、ステップＳ２６の処理において記憶したデータ受信完了時間とステップＳ２７の処理において記憶したデータ受信完了時間との差分を受信間時間として算出する。これにより、ステップＳ２９の処理は完了し、クロック異常判定処理はステップＳ３０の処理に進む。
【００５８】
ステップＳ３０の処理では、制御ユニットＢのマイクロコンピュータ３１が、ステップＳ２３の処理において算出された送信間時間とステップＳ２９の処理において算出された受信間時間との差が所定範囲内にあるか否かを判別することによって、発振器２２が出力するクロック信号又は発振器３２が出力するクロック信号に異常があるか否かを判定する。具体的には、受信間時間と送信間時間との差が所定範囲内にある場合には、マイクロコンピュータ３１はクロック信号に異常はないと判定する。一方で、受信間時間と送信間時間との差が所定範囲内にない場合には、マイクロコンピュータ３１は発振器２２が出力するクロック信号又は発振器３２が出力するクロック信号に異常があると判定する。これにより、ステップＳ３０の処理は完了し、クロック異常判定処理はステップＳ３１ａからステップＳ３１ｂの処理に進む。
【００５９】
ステップＳ３１ａからステップＳ３１ｂの処理では、制御ユニットＢのマイクロコンピュータ３１が、ＣＡＮドライバ３３を介してステップＳ３０の判定結果をクロック信号の診断結果として制御ユニットＡに送信する（ステップＳ３１ａ）。そして、マイクロコンピュータ３１は、クロック信号に異常がないと判定された場合には、制御対象を通常通り起動し、又は、クロック信号に異常があると判定された場合には、制御対象の動作を停止させる等のフェイルセーフアクションを実行する。これにより、ステップＳ３１ａからステップＳ３１ｂの処理は完了し、クロック異常判定処理はステップＳ３２ａからステップＳ３２ｂの処理に進む。
【００６０】
ステップＳ３２ａからステップＳ３２ｂの処理では、制御ユニットＡのマイクロコンピュータ２１が、ＣＡＮドライバ２３を介して制御ユニットＢから送信されたクロック信号の診断結果を受信する（ステップＳ３２ａ）。そして、マイクロコンピュータ２１は、クロック信号に異常がないと判定された場合には、制御対象を通常通り起動し、又は、クロック信号に異常があると判定された場合には、制御対象の動作を停止させる等のフェイルセーフアクションを実行する。これにより、ステップＳ３２ａからステップＳ３２ｂの処理は完了し、一連のクロック異常判定処理は終了する。
【００６１】
〔具体例〕
次に、図４を参照して、上記クロック異常判定処理の具体例について説明する。
【００６２】
図４は、本実施形態におけるクロック異常判定処理の一例を示すタイミングチャートである。
【００６３】
図４に示すように、本実施形態におけるクロック異常判定処理では、制御ユニットＡのマイクロコンピュータ２１が、ＣＡＮドライバ２３を介して制御ユニットＢに制御対象を
制御するために必要なデータを送信する際に、データと共にフリーランタイマ２１ａのカウント値に基づいて各々得られた前々回の処理においてデータの送信が完了した時間と前回の処理においてデータの送信が完了した時間との差分（時間間隔Ｂ−Ａ）を送信間時間として制御ユニットＢに送信する。
【００６４】
一方で、制御ユニットＢのマイクロコンピュータ３１は、制御ユニットＡから制御データ及び送信間時間を受信すると、フリーランタイマ３１ａのカウント値に基づいて各々得られた前々回の処理においてデータの受信が完了した時間と前回の処理においてデータの受信が完了した時間との差分（時間間隔Ｂ’−Ａ’）を受信間時間として算出する。そして、マイクロコンピュータ３１は、受信間時間（時間間隔Ｂ’−Ａ’）と送信間時間（時間間隔Ｂ−Ａ）との差が所定範囲内にあるか否かを判別することによってクロック信号に異常があるか否かを判定することになる。
【００６５】
このような処理によれば、制御対象を制御するために必要なデータを送信する制御ユニットＡの定周期処理が上位処理によって待たされたり、データのＣＡＮ通信が優先順位上位の通信よって待たされたりした場合であっても、通信間時間を比較することによってクロック信号に異常があるか否かを判定するので、待ち時間や通信自体の所要時間に影響されることなくクロック信号の異常を精度よく判定することができる。
【００６６】
以上の説明から明らかなように、本発明の実施形態における電子制御装置１では、制御ユニットＡの一方のマイクロコンピュータ２１が、通信線４ａ、４ｂを介して制御ユニットＢの他方のマイクロコンピュータ３１に所定データを送信する際に、前回以前の２回分の所定データの送信完了時における各々のフリーランタイマ２１ａのカウント値の差である送信完了時間間隔を所定データに付加して制御ユニットＢの他方のマイクロコンピュータ３１に送信すると共に、制御ユニットＢの他方のマイクロコンピュータ３１が、通信線４ａ、４ｂを介して制御ユニットＡの一方のマイクロコンピュータ２１から所定データを受信した際に、前回以前の２回分の所定データの受信完了時における各々のフリーランタイマ３１ａのカウント値の差である受信完了時間間隔と、制御ユニットＡの一方のマイクロコンピュータ２１から受信した送信完了時間間隔と、を比較し、受信完了時間間隔と送信完了時間間隔との差が所定範囲内にあるか否かを判定することにより、クロック信号の異常を検出するものであるため、クロック信号の異常を検出するために用いられる２つのパルスを有する信号を送受信するための専用のポートを増設する必要性を排し、かつ、簡便な方法で精度よくクロック信号の異常を検出することができる。特に、２つのパルスを有する信号は、ＣＡＮ通信ポートを用いて送受信することができるため、制御対象の個数等が増加してマイクロコンピュータの個数が増加しても、クロック信号の異常を検出するために用いられる２つのパルスを有する信号を送受信するための専用のポートを増設する必要性がない。また、受信完了時間間隔と送信完了時間間隔との差であるデータ値でクロック信号の異常を検出するものであるため、ノイズの影響を確実に低減することができる。更に、このように送信完了時間間隔と受信完了時間間隔との比較に基づく判定を行うものであるため、ＣＡＮ通信等に見られるデータ通信のタイミングの遅れの影響を確実に低減することができる。
【００６７】
また、本発明の実施形態における電子制御装置１では、制御ユニットＡの一方のマイクロコンピュータ２１及び制御ユニットＢの他方のマイクロコンピュータ３１の各々のデータ通信部２２、３２が、所定周期で所定データを送受信するものであるため、クロック信号の異常を定期的に判定することができる。
【００６８】
また、本発明の実施形態における電子制御装置１では、制御ユニットＡの一方のコンピュータ２１が、前々回の所定データの送信完了時のフリーランタイマ２１ａのカウント値と前回の所定データの送信完了時のフリーランタイマ２１ａのカウント値との差を送信完
了時間間隔として求めると共に、制御ユニットＢの他方のマイクロコンピュータ３１が、前々回の所定データの受信完了時のフリーランタイマ３１ａのカウント値と前回の所定データの受信完了時のフリーランタイマ３１ａのカウント値との差を受信完了時間間隔として求めるものであるため、直近の前回以前の２回分の所定データの送受信完了時における各々のフリーランタイマのカウント値の差である送信完了時間間隔及び受信完了時間間隔を用いることができ、メモリの容量を低減することができると共に演算処理負担を軽減した態様で、クロック信号の異常を検出するために用いられる２つのパルスを有する信号を送受信するための専用のポートを増設する必要性を排し、かつ、簡便な方法で精度よくクロック信号の異常を検出することができる。
【００６９】
なお、本発明は、部材の種類、形状、配置、個数等は前述の実施形態に限定されるものではなく、その構成要素を同等の作用効果を奏するものに適宜置換する等、発明の要旨を逸脱しない範囲で適宜変更可能であることはもちろんである。
【産業上の利用可能性】
【００７０】
以上のように、本発明は、クロック信号の異常を検出するために用いられる信号を送受信するための専用のポートを必要とせず、かつ、簡便な方法で精度よくクロック信号の異常を検出することができる電子制御装置を提供することができるものであり、その汎用普遍的な性格から自動二輪車等の車両用の電子制御装置に広く適用され得るものと期待される。
【符号の説明】
【００７１】
１…電子制御装置
Ａ、Ｂ…制御ユニット
４ａ、４ｂ…通信バス（通信線）
２１、３１…マイクロコンピュータ
２１ａ、３１ａ…フリーランタイマ
２２、３２…発振器
２３、３３…ＣＡＮドライバ
【図１】
2015161183.tif 000003
【図２】
2015161183.tif 000004
【図３】
2015161183.tif 000005
【図４】
2015161183.tif 000006