(57)【特許請求の範囲】
【請求項１】
第１のマイクロコンピュータと、前記第１のマイクロコンピュータとの間で信号の送受信が自在な第２のマイクロコンピュータと、を備える車両用電子制御装置であって、
前記第１のマイクロコンピュータ及び前記第２のマイクロコンピュータのうち、一方のマイクロコンピュータが他方のマイクロコンピュータにハイレベル及びローレベルの電圧を呈する電圧信号を出力し、前記他方のマイクロコンピュータが前記電圧信号の前記電圧が前記ハイレベルにあるハイ時間を検出すると共に検出した前記ハイ時間に応じた演算を実行し、前記演算の結果を前記一方のマイクロコンピュータに出力し、前記一方のマイクロコンピュータが前記演算の結果が適正であるか否か判断することを特徴とする車両用電子制御装置。
【請求項２】
前記電圧信号が、ＰＷＭ信号であることを特徴とする請求項１に記載の車両用電子制御装置。
【請求項３】
前記他方のマイクロコンピュータは、前記一方のマイクロコンピュータから入力された前記ＰＷＭ信号のハイ時間及び周期の少なくとも１つに基づいて前記少なくとも１つのハイ時間及び周期が適正なものであるか否か判断することを特徴とする請求項２に記載の車両用電子制御装置。
【請求項４】
前記他方のマイクロコンピュータが前記演算の結果を前記一方のマイクロコンピュータにＰＷＭ信号として出力し、前記一方のマイクロコンピュータは前記ＰＷＭ信号のハイ時間及び周期の少なくとも１つに基づいて前記演算の結果が適正であるか否か判断することを特徴とする請求項１から３のいずれかに記載の車両用電子制御装置。
【請求項５】
前記他方のマイクロコンピュータは、前記演算の結果を前記一方のマイクロコンピュータに更にシリアル通信を介して出力することを特徴とする請求項１又は２に記載の車両用電子制御装置。
【請求項６】
前記他方のマイクロコンピュータが、前記一方のマイクロコンピュータから入力された前記電圧信号のハイ時間及び周期の少なくとも１つに基づいて前記少なくとも１つのハイ
時間及び周期が適正なものであるか否か判断し、前記一方のマイクロコンピュータによる前記演算の結果が適正であるか否かの判断の結果及び前記他方のマイクロコンピュータによる前記少なくとも１つのハイ時間及び周期が適正なものであるか否かの判断の結果の一方が否定的である場合は、前記車両用電子制御装置の制御対象の動作を禁止することを特徴とする請求項１から５のいずれかに記載の車両用電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両用電子制御装置に関し、特に、マイクロコンピュータについて診断を行う車両用電子制御装置に関する。
【背景技術】
【０００２】
近年、車両用の電子制御装置（ＥＣＵ：Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）においては、車両における電子制御の高度化とも相まって、電子制御装置が備えるマイクロコンピュータ（以降、適宜マイコンという）の重要性が、より高まってきている。
【０００３】
例えば、車両用の電子制御装置では、マイコン内で目標指令値を求めて、この目標指令値に基づいて、エンジン等に関する種々のデバイスを駆動しているため、かかるデバイスの動作を保証すべく、マイコンの動作を監視することが提案されるようになってきている。
【０００４】
特許文献１においては、監視回路２から宿題信号２０をマイコン１へ送信し、マイコン１では宿題信号２０の内容に応じた自己機能チェック演算を行い、その演算結果を解答信号１０として監視回路２へ返信する。そして、監視回路２では、マイコン１から送信のあった解答信号１０の内容と正答とを比較することでマイコンが正常に動作しているか否かの監視をする。ここで、宿題信号２０及び解答信号１０の送受信はシリアル通信で行われている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−２５９１３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、本発明者の検討によれば、監視回路が有するサブマイクロコンピュータ（以降、適宜サブマイコンという）は、メインマイクロコンピュータ（以降、適宜メインマイコンという）の動作の監視のみに使用されるというものではなく、メインマイコンが種々のデバイスの制御に必要なデータについての複雑な演算処理を実行する際には、メインマイコンの演算処理を支援するものでもある。
【０００７】
このため、特許文献１の構成の如く、宿題信号２０及び解答信号１０の送信をシリアル通信により行ったのでは、複雑な演算処理に関係するメインマイコンとサブマイコンとのデータ通信が優先され、メインマイコンの動作を監視するためのデータ通信が後回しにされて、メインマイコンの診断を迅速に行い得ない傾向も考えられる。
【０００８】
本発明は、以上のような検討を経てなされたもので、マイクロコンピュータを迅速かつ確実に診断できる車両用電子制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
以上の目的を達成すべく、本発明は、第１のマイクロコンピュータと、前記第１のマイクロコンピュータとの間で信号の送受信が自在な第２のマイクロコンピュータと、を備える車両用電子制御装置であって、前記第１のマイクロコンピュータ及び前記第２のマイクロコンピュータのうち、一方のマイクロコンピュータが他方のマイクロコンピュータにハイレベル及びローレベルの電圧を呈する電圧信号を出力し、前記他方のマイクロコンピュータが前記電圧信号の前記電圧が前記ハイレベルにあるハイ時間を検出すると共に検出した前記ハイ時間に応じた演算を実行し、前記演算の結果を前記一方のマイクロコンピュータに出力し、前記一方のマイクロコンピュータが前記演算の結果が適正であるか否か判断することを第１の特徴とする。
【００１０】
また本発明は、かかる第１の特徴に加えて、前記電圧信号が、ＰＷＭ信号であることを第２の特徴とする。
【００１１】
また本発明は、かかる第２の特徴に加えて、前記他方のマイクロコンピュータは、前記一方のマイクロコンピュータから入力された前記ＰＷＭ信号のハイ時間及び周期の少なくとも１つに基づいて前記少なくとも１つのハイ時間及び周期が適正なものであるか否か判断することを第３の特徴と
する。
【００１２】
また本発明は、かかる第１から第３のいずれかの特徴に加えて、前記他方のマイクロコンピュータが前記演算の結果を前記一方のマイクロコンピュータにＰＷＭ信号として出力し、前記一方のマイクロコンピュータは前記ＰＷＭ信号のハイ時間及び周期の少なくとも１つに基づいて前記演算の結果が適正であるか否か判断することを第４の特徴とする。
【００１３】
また本発明は、かかる第１又は第２の特徴に加えて、前記他方のマイクロコンピュータは、前記演算の結果を前記一方のマイクロコンピュータに更にシリアル通信を介して出力することを第５の特徴とする。
【００１４】
また本発明は、かかる第１から第５のいずれかの特徴に加えて、前記他方のマイクロコンピュータが、前記一方のマイクロコンピュータから入力された前記電圧信号のハイ時間及び周期の少なくとも１つに基づいて前記少なくとも１つのハイ時間及び周期が適正なものであるか否か判断し、前記一方のマイクロコンピュータによる前記演算の結果が適正であるか否かの判断の結果及び前記他方のマイクロコンピュータによる前記少なくとも１つのハイ時間及び周期が適正なものであるか否かの判断の結果の一方が否定的である場合は、前記車両用電子制御装置の制御対象の動作を禁止することを第６の特徴とする。
【発明の効果】
【００１５】
以上の本発明に係る車両用電子制御装置によれば、シリアル通信ではなくＰＷＭ信号を主として利用しマイクロコンピュータの診断が行われるので、マイクロコンピュータを迅速かつ確実に診断することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態における車両用電子制御装置の構成を示すブロック図である。
【図２】本実施形態における車両用電子制御装置のメインマイコンとサブマイコンとの間で行われる相互監視処理の動作シーケンスを示すシーケンスチャートである。
【図３】本実施形態における車両用電子制御装置のサブマイコンがメインマイコンの動作を監視して診断する際の処理の流れを示すフローチャートである。
【図４】図３に示す処理に対応したタイミングチャートである。
【図５】本実施形態における車両用電子制御装置のサブマイコンがメインマイコンの動作を監視して診断する際の処理に伴って、メインマイコンが実行する処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、図面を適宜参照して、本発明の実施形態における車両用電子制御装置につき、詳細に説明する。
【００１８】
図１は、本実施形態における車両用電子制御装置の構成を示すブロック図である。
【００１９】
図１に示すように、本実施形態における車両用の電子制御装置（ＥＣＵ：Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）１は、電子スロットルモータＭの動作を制御するための装置であり、メインマイコン２、サブマイコン３、ＡＮＤ回路（アンド回路）４、リレー駆動回路５、リレー６、モータ駆動回路７及び監視回路８を備え、イグニッションスイッチＳＷを介して、バッテリ９から動作に必要な電力が供給される。なお、電子制御装置１の制御対象は、もちろん電子スロットルモータＭに限定されるものではなく、車両内で動作自在な他の負荷をも含むものである。
【００２０】
メインマイコン２は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２ａを含むマイクロコンピュータである。ここで、ＣＰＵ２ａは、メインマイコン２の図示を省略するメモリ内に記憶されている制御プログラムに従って動作することにより、電子制御装置１全体の動作を制御自在であると共に、サブマイコン３の動作を診断自在である。
【００２１】
サブマイコン３は、ＣＰＵ３ａを含むマイクロコンピュータである。ＣＰＵ３ａは、サブマイコン３の図示を省略するメモリ内に記憶されている制御プログラムに従って動作することにより、メインマイコン２からの制御信号に従ってメインマイコン２の処理を支援自在であると共に、メインマイコン２の動作を診断自在である。
【００２２】
ＡＮＤ回路４の２つの入力端子は、各々メインマイコン２及びサブマイコン３の出力に接続されると共に、その出力端子はリレー駆動回路５に接続されている。ＡＮＤ回路４は、メインマイコン２から出力されるリレー駆動制御信号とサブマイコン３から出力されるリレー駆動制御信号との双方がハイレベルである場合には、ハイレベルのリレー駆動信号をリレー駆動回路５に出力する。一方で、メインマイコン２から出力されるリレー駆動制御信号とサブマイコン３から出力されるリレー駆動制御信号との少なくとも一方がローレベルである場合には、ＡＮＤ回路４は、ローレベルのリレー駆動信号をリレー駆動回路５に出力する。
【００２３】
リレー駆動回路５は、ＡＮＤ回路４から出力されるリレー駆動信号のレベルがローレベルからハイレベルに切り替わった場合には、リレー６をオフ状態からオン状態に切り替えることにより、バッテリ９の電力をモータ駆動回路７に供給する。一方で、ＡＮＤ回路４から出力されるリレー駆動信号のレベルがハイレベルからローレベルに切り替わった場合には、リレー駆動回路５は、リレー６をオン状態からオフ状態に切り替えることにより、モータ駆動回路７への電力供給を停止する。
【００２４】
モータ駆動回路７は、リレー６がオン状態であるときに、メインマイコン２からの制御信号に従って、バッテリ９の電力を利用して電子スロットルモータＭの駆動を制御する。
【００２５】
監視回路８は、メインマイコン２の動作に関連して出力されるパルス信号ＷＤＴを利用してメインマイコン２が動作しているか否かを監視しながら計時動作を行い、そのパルス信号ＷＤＴが停止又は遅延が生じた場合に、メインマイコン２とサブマイコン３へリセット信号を送出することで、両マイコンのリセットを行う。
【００２６】
次に、以上の構成の車両用の電子制御装置１における監視処理につき、更に図２から図６をも参照して、詳細に説明する。かかる電子制御装置１における監視処理は、メインマイコン２におけるＣＰＵ２ａとサブマイコン３におけるＣＰＵ３ａが、協働して実行する相互監視処理である。以下、サブマイコン３がメインマイコン２を監視して診断し、これに伴ってメインマイコン２が自己診断をすると共にサブマイコンをも診断する場合を例に挙げ、かかる処理につき説明を進めることにする。
【００２７】
ここで、本実施形態においては、相互監視処理に用いられる電圧信号として、ＰＷＭ（Ｐｕｌｓｅ  Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｉｏｎ）信号を代表的に適用して説明する。かかるＰＷＭ信号は、ローレベルの電圧と、ローレベルの電圧から所定のオン時間になるように切り替えられるハイレベルの電圧と、を有するものであり、ハイレベルの電圧が維持される所定のハイ時間はＰＷＭ信号の出力幅に相当し、ハイレベルの電圧が出現する周期はＰＷＭ信号の出力周期に相当する。もちろん、かかる電圧信号としては、一般的なハイレベルの電圧及びローレベルの電圧を有する電圧信号が適用可能である。かかる一般的な電圧信号の場合には、ハイレベルの電圧が維持される所定のハイ時間が、電圧信号の出力幅であって、ハイレベルの電圧が出現する周期が、電圧信号の出力周期である。
【００２８】
最初に、メインマイコン２とサブマイコン３との間の相互監視処理の全体的な流れについて、図２を参照して説明する。
【００２９】
図２は、本実施形態における車両用電子制御装置のメインマイコンとサブマイコンとの間で行われる相互監視処理の動作シーケンスを示すシーケンスチャートである。
【００３０】
図２に示すように、まず、サブマイコン３は、メインマイコン２に対しての自己診断の命令を示すＰＷＭ信号を、自己診断命令信号としてメインマイコン２に出力する（自己診断命令出力処理）。
【００３１】
ついで、メインマイコン２は、サブマイコン３から入力されたＰＷＭ信号の出力幅及び出力周期が適正なものであるか否かの診断を行い、かかるＰＷＭ信号の出力幅及び出力周期が適正でないと判断した場合には、サブマイコン３が異常であると判断（診断）する（自己診断命令適正判断処理）。このように、サブマイコン３が異常であると判断された場合には、ＡＮＤ回路４への信号をローレベルに切換えることで、リレー６をオフする。一方で、メインマイコン２が、サブマイコン３から入力されたＰＷＭ信号の出力幅及び出力周期が適正であると判断した場合には、かかるＰＷＭ信号がサブマイコン３からの自己診断命令として適正に利用自在であり、メインマイコン２は、そのＰＷＭ信号の出力幅に対応する自己診断を行う（自己診断処理）。
【００３２】
そして、メインマイコン２は、その自己診断処理による自己診断結果に基づき、自己診断結果を示すＰＷＭ信号を、自己診断結果信号としてサブマイコン３へ出力する（自己診断結果出力処理）。
【００３３】
ついで、サブマイコン３は、メインマイコン２から出力されるＰＷＭ信号の監視を行い、入力されたＰＷＭ信号が示すメインマイコン２の自己診断結果が適正なものであるか否かの診断を行う（適正診断処理）。そして、サブマイコン３は、メインマイコン２における自己診断結果が適正であるか否かについての良否結果を、適正診断結果信号としてメインマイコン２に出力し（適正診断結果出力処理）、一連の相互監視が行われる。そして以降は、かかる一連の相互監視処理が、所定の周期で繰り返して行われることになる。なお、サブマイコン３が、メインマイコン２における自己診断結果を適正でないと判断した場合には、メインマイコン２が異常であると判断して、ＡＮＤ回路４への信号をローレベルに切換えることで、リレー６をオフする。
【００３４】
なお、以上の相互監視処理において、メインマイコン２における自己診断処理は、１種類の自己診断処理に限定はされず、複数種類の自己診断処理を実行してもよい。かかる場合には、サブマイコン３は、複数種類の自己診断命令を順次命令してもよいし、またランダムに命令してもよい。また、かかる複数種類の自己診断命令としては、サブマイコン３が、複数種類の自己診断命令に各々対応して出力幅が異なるようなＰＷＭ信号を予め設定しておいてもよい。また、かかる場合、メインマイコン２は、複数種類の自己診断命令に各々対応する自己診断結果をサブマイコン３へ出力自在である。
【００３５】
また、以上の相互監視処理において、メインマイコン２は、サブマイコン３から入力された自己診断命令信号としてのＰＷＭ信号の出力幅及び出力周期の少なくとも１つについて適正なものであるか否かの判断を行ってもよい。また、メインマイコン２は、サブマイコン３から入力された自己診断命令信号としてのＰＷＭ信号の出力幅及び出力周期の少なくとも１つに対応する自己診断を行ってもよい。また、サブマイコン３は、メインマイコン２から入力された自己診断結果信号としてのＰＷＭ信号の出力幅及び出力周期の少なくとも１つについて適正なものであるか否かの判断を行ってもよい。
【００３６】
また、以上の相互監視処理において、メインマイコン２やサブマイコン３の処理能力等に余裕がある場合には、メインマイコン２の処理とサブマイコン３の処理とを入れ替えて、メインマイコン２が、サブマイコン３に対する自己診断命令出力処理、適正診断処理及び適正診断結果出力処理を実行し、サブマイコン３が、自己診断命令適正判断処理、自己診断処理及び自己診断結果出力処理を実行することもできる。
【００３７】
次に、以上の図２示すメインマイコン２とサブマイコン３との間の相互監視処理におけるより詳細な処理につき、１種類の自己診断処理を採用し、１パルスのＰＷＭ信号の出力幅や出力周期を適宜利用した場合を例にして詳述する。
【００３８】
まず、サブマイコン３がメインマイコン２を監視して診断する場合における処理について、更に図３及び図４をも参照して説明する。
【００３９】
図３は、本実施形態における車両用電子制御装置のサブマイコンがメインマイコンの動作を監視して診断する際の処理の流れを示すフローチャートであり、図４は、図３に示す処理に対応したタイミングチャートである。
【００４０】
図３に示すように、イグニッションスイッチＳＷがオフ状態からオン状態に切り替えられること等に対応して、サブマイコン３がメインマイコン２を監視して診断する処理が開始すると、ステップＳ１で、サブマイコン３のＣＰＵ３ａが、メインマイコン２のＣＰＵ２ａに自己診断命令信号であるＰＷＭ信号を出力する。ここで、図４（ａ）に示すように、時刻Ｔ０で、かかる自己診断命令信号がローレベルからハイレベルに切り替えられてハイ時間の長さを示す出力幅である所定のパルス幅を有したＰＷＭ信号として出力されている。そして、ＣＰＵ３ａは、処理を次のステップＳ２に進める。
【００４１】
ステップＳ２では、サブマイコン３のＣＰＵ３ａが、メインマイコン２が自己診断命令信号の出力幅に基づき演算して得た自己診断結果を示す自己診断結果信号であるＰＷＭ信号がメインマイコン２から入力されてきたか否かを判断する。ここで、かかるＰＷＭ信号は、図４（ｄ）に示す時刻Ｔ１で出力され、それが入力されてきたか否かの判断工程は、図４（ｃ）に示す時刻Ｔ２から始まる。そして、かかるＰＷＭ信号の出力自体がなされていないと判断した場合には、ＣＰＵ３ａは、処理をステップＳ３に進める。一方で、かかるＰＷＭ信号が出力されたと判断した場合には、ＣＰＵ３ａは、処理をステップＳ５に進める。なお、図４（ｃ）において、ステップＳ３以降の各工程及びステップＳ５以降の各工程も、ステップＳ２の判断工程に連続して行われるものである。
【００４２】
ＰＷＭ信号の出力自体がなされていないと判断された場合におけるステップＳ３の処理では、サブマイコン３のＣＰＵ３ａが、メインマイコン２に自己診断命令信号を出力してから所定時間（例えば、図４に示す時刻Ｔ２の時点）が経過したか否かを判断する。判断の結果、かかる所定時間が経過していない場合には、ＣＰＵ３ａは、処理をステップＳ２に戻す。一方で、判断の結果、かかる所定時間が経過した場合には、ＣＰＵ３ａは、処理を次のステップＳ４に進める。
【００４３】
ステップＳ４では、サブマイコン３のＣＰＵ３ａが、メインマイコン２とサブマイコン３とを繋ぐ配線が断線している等の事象が発生していると判断して、ローレベルの制御信号をＡＮＤ回路４に出力すると共に、ＡＮＤ回路４は、対応してローレベルのリレー駆動制御信号をリレー駆動回路５に出力する。そして、ローレベルのリレー駆動制御信号が入力されたリレー駆動回路５は、リレー６をオフ状態に切り替えることにより、バッテリ９からモータ駆動回路７への電力の供給が停止され、電子スロットルモータＭの駆動が禁止される。これにより、ステップＳ４の処理は完了し、今回の一連の処理は終了する。
【００４４】
自己診断結果信号であるＰＷＭ信号の出力自体はなされていると判断された場合におけるステップＳ５では、サブマイコン３のＣＰＵ３ａが、メインマイコン２から出力された自己診断結果信号の出力幅および出力周期が予め設定されている出力幅および出力周期と一致しているか否かを判断する。具体的には、サブマイコン３が、メインマイコン２に出力した自己診断命令信号の出力幅をメモリ内に記憶しており、ＣＰＵ３ａは、かかる自己診断命令信号の出力幅に基づいて、メインマイコン２から出力されてくるべき自己診断結果信号の出力幅および出力周期を演算して求める。そして、ＣＰＵ３ａは、メインマイコン２が自己診断の結果が適正であったとして出力してきた自己診断結果信号の出力幅及び出力周期が、メインマイコン２から本来出力されてくるべきものとされる自己診断結果信号の出力幅および出力周期に実際に一致しているか否かを判断し、これによりメインマイコン２から出力された自己診断結果が適正であるか否か判断する。判断の結果、メインマイコン２から出力された自己診断結果が適正でない場合には、ＣＰＵ３ａは、処理をステップＳ８に進める。一方で、メインマイコン２から出力された自己診断結果が適正である場合には、ＣＰＵ３ａは、処理をステップＳ６に進める。
【００４５】
メインマイコン２から出力された自己診断結果が適正であると判断された場合におけるステップＳ６では、サブマイコン３のＣＰＵ３ａが、メインマイコン２に不具合が発生していないと肯定的な判断をして、不具合が発生していない旨を示す適正診断結果信号をメインマイコン２に出力すると共に、次回の処理においてメインマイコン２に自己診断命令信号として出力すべきＰＭＷ信号を準備する。ここで、ＣＰＵ３ａは、図４（ｂ）に示すように、時刻Ｔ３で、適正診断結果信号をローレベルからハイレベルに切り替えている。そして、ＣＰＵ３ａは、処理を最初のステップＳ１へ戻して、図４（ａ）に示すように、ＣＰＵ３ａは、時刻Ｔ４で、自己診断命令信号をローレベルからハイレベルに切り替えて所定の幅のＰＷＭ信号として出力すると共に、メインマイコン２の自己診断結果信号であるＰＷＭ信号が、図４（ｄ）に示す時刻Ｔ５で出力されたか否か、更には所定時間（例えば、図４に示す時刻Ｔ６の時点）内にＣＰＵ３ａに入力されたか否かを、図４（ｃ）で示す時刻Ｔ６から始まる判断工程で判断していくことになる。
【００４６】
メインマイコン２から出力された自己診断結果が適正でないと判断された場合におけるステップＳ８の処理では、サブマイコン３のＣＰＵ３ａが、今回の処理ではメインマイコン２に不具合が発生していると否定的な判断をし、ステップＳ８の処理を実行した回数、つまりメインマイコン２に不具合が発生していると判断した回数を計数するプログラムカウンタＮの値を１つ増数する。これにより、ステップＳ８の処理は完了し、ＣＰＵ３ａは、処理を次のステップＳ９に進める。
【００４７】
ステップＳ９の処理では、サブマイコン３のＣＰＵ３ａが、プログラムカウンタＮの値が所定値Ｎ０以上であるか否かを判断することにより、メインマイコン２に不具合が発生していると判断した回数Ｎが所定値Ｎ０以上であるか否かを判断する。判断の結果、メインマイコン２に不具合が発生していると判断された回数Ｎが所定値Ｎ０未満である場合には、ＣＰＵ３ａが、処理をステップＳ１０に進める。一方、メインマイコン２に不具合が発生していると判断された回数Ｎが所定値Ｎ０以上である場合には、ＣＰＵ３ａが、処理をステップＳ１２に進める。
【００４８】
回数Ｎが所定値Ｎ０未満である場合におけるステップＳ１０では、サブマイコン３のＣＰＵ３ａが、メインマイコン２に不具合が発生している旨を示す適正診断結果信号をメインマイコン２に出力すると共に、次回の処理においてメインマイコン２に自己診断命令信号として出力すべきＰＭＷ信号を準備する。ここで、例えば、図４（ｄ）の時刻Ｔ５におけるＣＰＵ２ａからＣＰＵ３ａに対する自己診断結果信号であるＰＷＭ信号の出力幅及び出力周期が間違っていて、かつカウンタＮの値が所定値Ｎ０未満となった場合を一点鎖線で示すとすれば、ＣＰＵ３ａは、図４（ｂ）に示すように、時刻Ｔ７で、適正診断結果信号をハイレベルからローレベルに切り替えている。そして、ＣＰＵ３ａは、処理を最初のステップＳ１に戻す。
【００４９】
回数Ｎが所定値Ｎ０以上である場合におけるステップＳ１２では、サブマイコン３のＣＰＵ３ａが、メインマイコン２に不具合が発生したとする故障確定判断をして、ローレベルの制御信号をＡＮＤ回路４に出力すると共に、ＡＮＤ回路４は、対応してローレベルのリレー駆動制御信号をリレー駆動回路５に出力する。そして、ローレベルのリレー駆動制御信号が入力されたリレー駆動回路５は、リレー６をオフ状態に切り替えることにより、バッテリ９からモータ駆動回路７への電力の供給が停止され、電子スロットルモータＭの駆動が禁止される。これにより、ステップＳ１２の処理は完了し、今回の一連の処理は終了する。
【００５０】
なお、メインマイコン２において、電子スロットルモータＭの制御を実行していないときやサブマイコン３の要求による以上の処理を実行していないとき等における処理や通信に余力がある場合には、メインマイコン２のＣＰＵ２ａは、サブマイコン３のＣＰＵ３ａから自己診断命令出力として入力されたＰＷＭ信号やシリアル通信による信号に対応した所定の演算を行ってセルフチェックを行い、その自己診断結果をその具体的な数値等の内容と共に、シリアル通信によりサブマイコン３のＣＰＵ２ａにコマンド出力することも可能である。
【００５１】
次に、サブマイコン３がメインマイコン２を監視して診断する場合において、メインマイコン２が自己診断をすると共にサブマイコンをも診断する処理について、更に図５をも参照して説明する。
【００５２】
図５は、本実施形態における車両用電子制御装置のサブマイコンがメインマイコンの動作を監視して診断する際の処理に伴って、メインマイコンが実行する処理の流れを示すフローチャートである。
【００５３】
図５に示すように、サブマイコン３がメインマイコン２の動作を監視して診断する際の処理に伴って、メインマイコン２のＣＰＵ２ａが、処理を開始すると、ステップＳ１１１で、サブマイコン３のＣＰＵ３ａから出力された自己診断命令信号であるＰＷＭ信号の出力幅を検出する。ここで、ＣＰＵ２ａが、かかるＰＷＭ信号の出力自体がなされていないと判断した場合には、処理をステップＳ１１２に進める。一方で、ＣＰＵ２ａが、かかるＰＷＭ信号が出力されたと判断した場合には、処理をステップＳ１１４に進める。ここで、ＣＰＵ２ａは、図４（ｅ）で示す時刻Ｔ０’から始まる処理で、入力されるべきＰＷＭ信号を検出して、自己診断命令信号が出力されたか否か判断している。なお、図４（ｅ）において、ステップＳ１１２以降の各工程及びステップＳ１１４以降の各工程も、ステップＳ１１１の判断工程に連続して行われるものである。
【００５４】
ＰＷＭ信号の出力自体がなされていないと判断された場合におけるステップＳ１１２の処理では、メインマイコン２のＣＰＵ２ａが、所定時間（例えば、図３に示す時刻Ｔ０’の時点）が経過したか否かを判断する。判断の結果、かかる所定時間が経過していない場合には、ＣＰＵ２ａは処理を最初のステップＳ１１１に戻す。一方で、判断の結果、かかる所定時間が経過した場合には、ＣＰＵ２ａは、処理を次のステップＳ１１３に進める。
【００５５】
ステップＳ１１３では、メインマイコン２のＣＰＵ２ａが、メインマイコン２とサブマイコン３とを繋ぐ配線が断線している等の事象が発生していると判断して、ローレベルの制御信号をＡＮＤ回路４に出力すると共に、ＡＮＤ回路４は、対応してローレベルのリレー駆動制御信号をリレー駆動回路５に出力する。そして、ローレベルのリレー駆動制御信号が入力されたリレー駆動回路５は、リレー６をオフ状態に切り替えることにより、バッテリ９からモータ駆動回路７への電力の供給が停止され、電子スロットルモータＭの駆動が禁止される。これにより、ステップＳ１１３の処理は完了し、今回の一連の処理は終了する。
【００５６】
ＰＷＭ信号の出力自体はなされていると判断された場合におけるステップＳ１１４では、メインマイコン２のＣＰＵ２ａが、今回の処理が初回の処理であるか否かの判断を行う。判断の結果、今回の処理が初回である場合には、ＣＰＵ２ａは、処理をステップＳ１１６へ進める。一方で、今回の処理が初回でない場合には、ＣＰＵ２ａは、処理をステップＳ１１５へ進める。
【００５７】
今回の処理が初回でないと判断された場合におけるステップＳ１１５では、メインマイコン２のＣＰＵ２ａが、サブマイコン３から出力された前回の適正診断結果信号がハイレベルであるかか又はローレベルであるかの判断を行う。かかる前回の適正診断結果信号の電圧レベルの情報は、図４では、時刻Ｔ０以前に行われた前回の処理においてメインマイコン２のメモリ内に記憶されている。そして、サブマイコン３からの適正診断結果信号がハイレベルであれば、ＣＰＵ２ａは、前回のメインマイコン２の自己診断結果が適正だったと判断し、処理をＳ１１６へ進める。一方で、適正診断結果信号がローレベルであった場合には、ＣＰＵ２ａは、前回の自己診断結果が適正ではなかったと判断し、処理をＳ１２０へ進める。
【００５８】
サブマイコン３から出力された適正診断結果が適正だった場合におけるステップＳ１１６では、メインマイコン２のＣＰＵ２ａが、サブマイコン３から出力された自己診断命令信号であるＰＷＭ信号の出力幅及び出力周期が予め設定されている出力幅及び出力周期と一致しているか否かを判断する。具体的には、メインマイコン２が、サブマイコン３がメインマイコン２に出力すべき自己診断命令信号であるＰＷＭ信号の所定出力幅及び所定出力周期をメモリ内に記憶しており、ＣＰＵ２ａは、サブマイコン３から実際に出力された自己診断命令信号の出力幅及び出力周期が、かかる所定出力幅及び所定出力周期に一致しているか否かを判断する。判断の結果、サブマイコン３から出力された自己診断命令信号の出力幅及び出力周期が所定出力幅及び所定出力周期に一致していない場合には、ＣＰＵ２ａは、処理をステップＳ１２０に進める。一方で、サブマイコン３から出力された自己診断命令信号の出力幅及び出力周期が所定出力幅及び所定出力周期に一致している場合には、ＣＰＵ２ａは、処理をステップＳ１１７に進める。
【００５９】
サブマイコン３から出力された自己診断命令信号の出力幅及び出力周期が所定出力幅及び所定出力周期に一致している場合におけるステップＳ１１７では、更に、メインマイコン２のＣＰＵ２ａが、サブマイコン３のＣＰＵ３ａから自己診断命令出力として入力されたＰＷＭ信号に対応した所定の演算を行ってセルフチェック（自己診断）を行い、処理を次のステップＳ１１８に進める。かかるセルフチェックにおける所定の演算としては、入力されたＰＷＭ信号の出力幅に基づき、メインマイコン２のメモり内に記憶された所定の演算式により行われる演算が挙げられる。
【００６０】
ステップＳ１１８では、メインマイコン２のＣＰＵ２ａは、セルフチェックの結果を示す自己診断結果信号をＰＷＭ信号としてサブマイコン３に出力する。ここで、ＣＰＵ２ａは、図４（ｄ）に示すように、時刻Ｔ１で、自己診断結果信号としてＰＷＭ信号を出力している。そして、ＣＰＵ２ａは、処理を最初のステップＳ１１１に戻す。
【００６１】
サブマイコン３から出力された適正診断結果信号が適正でないと判断された場合、及びサブマイコン３から出力された自己診断命令信号の出力幅及び出力周期が所定出力幅及び所定出力周期に一致していないと判断された場合におけるステップＳ１２０の処理では、ステップ１２２の処理を実行した回数を計数するプログラムカウンタＮの値を１つ増数する。これにより、ステップＳ１２０の処理は完了し、ＣＰＵ２ａは、処理を次のステップＳ１２１に進める。
【００６２】
ステップＳ１２１の処理では、メインマイコン２のＣＰＵ２ａが、プログラムカウンタＮの値が所定値Ｎ０以上であるか否かを判断する。判断の結果、プログラムカウンタＮの値が所定値Ｎ０未満である場合には、ＣＰＵ２ａが、処理を最初のステップＳ１１１に戻す。一方で、プログラムカウンタＮの値が所定値Ｎ０以上である場合には、ＣＰＵ２ａが、処理を次のステップＳ１２２に進める。
【００６３】
回数Ｎが所定値Ｎ０以上である場合におけるステップＳ１２２では、メインマイコン２のＣＰＵ２ａが、メインマイコン２に不具合が発生したと最終的に否定的な判断をして、ローレベルの制御信号をＡＮＤ回路４に出力すると共に、ＡＮＤ回路４は、対応してローレベルのリレー駆動制御信号をリレー駆動回路５に出力する。そして、ローレベルのリレー駆動制御信号が入力されたリレー駆動回路５は、リレー６をオフ状態に切り替えることにより、バッテリ９からモータ駆動回路７への電力の供給が停止され、電子スロットルモータＭの駆動が禁止される。これにより、ステップＳ１２２の処理は完了し、今回の一連の処理は終了する。なお、前述したサブマイコン３がメインマイコン２を監視し診断する処理におけるＡＮＤ回路４に対するローレベルの制御信号及びここで説明したメインマイコン２の処理におけるＡＮＤ回路４に対するローレベルの制御信号の少なくとも１つがＡＮＤ回路４に入力されれば、ＡＮＤ回路４は、対応してローレベルのリレー駆動制御信号をリレー駆動回路５に出力し、ローレベルのリレー駆動制御信号が入力されたリレー駆動回路５は、リレー６をオフ状態に切り替えることにより、バッテリ９からモータ駆動回路７への電力の供給が停止され、電子スロットルモータＭの駆動が禁止されることになる。
【００６４】
以上の本実施形態の車両用電子制御装置の構成によれば、シリアル通信ではなくＰＷＭ信号を主として利用しマイクロコンピュータの診断が行われるので、マイクロコンピュータを迅速かつ確実に診断することができる。
【００６５】
なお、本発明は、構成要素の種類、配置、個数等は前述の実施形態に限定されるものではなく、その構成要素を同等の作用効果を奏するものに適宜置換する等、発明の要旨を逸脱しない範囲で適宜変更可能であることはもちろんである。
【産業上の利用可能性】
【００６６】
以上のように、本発明においては、シリアル通信ではなくＰＷＭ信号を主として利用しマイクロコンピュータの診断が行われるので、マイクロコンピュータを迅速かつ確実に診断することができる車両用電子制御装置を提供することができるものであり、その汎用普遍的な性格から車両等の電子制御装置に広範に適用され得るものと期待される。
【符号の説明】
【００６７】
１……電子制御装置
２……メインマイコン
２ａ…ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）
３……サブマイコン
３ａ…ＣＰＵ
４……ＡＮＤ（アンド）回路
５……リレー駆動回路
６……リレー
７……モータ駆動回路
８……監視回路
９……バッテリ
Ｍ……電子スロットルモータ
ＳＷ…イグニッションスイッチ
【図１】
0005582748.tif 000002
【図２】
0005582748.tif 000003
【図３】
0005582748.tif 000004
【図４】
0005582748.tif 000005
【図５】
0005582748.tif 000006