(57)【特許請求の範囲】
【請求項１】
監視リセット制御用のモノリシックＩＣ（２）、および、車両に関する制御を実行するデータを記憶する記憶手段（３２、３３）を備えた車両制御用のＣＰＵ（３）を備え、
前記モノリシックＩＣ（２）は、
前記ＣＰＵ（３）から送られてくるデータに基づいて、前記ＣＰＵ（３）の異常を検出するＣＰＵ異常検出手段（２２）と、
前記ＣＰＵ（３）から前記記憶手段（３２、３３）へのプログラムの書換えや記憶データの更新を行っていることを示す書換え中信号を受け取る監視側通信手段（２３）と、
前記ＣＰＵ（３）のリセットおよびリセットラッチの制御を行い、前記ＣＰＵ異常検出手段（２２）により前記ＣＰＵ（３）の異常が検出されたときに、前記ＣＰＵ（３）にリセットの指示を行うと共に、該リセットの回数をカウントして該回数が予め決められた規定値に達したときにリセットラッチの指示を行い、かつ、前記監視側通信手段（２３）が前記書換え中信号を受け取ったときに前記リセットの回数を増加させないようにするリセット制御手段（２４、２５）と、
電源（４）から前記ＣＰＵ（３）への電力供給のＯＮ／ＯＦＦを制御すると共に、前記監視側通信手段（２３）が前記書換え中信号を受け取ったときに、前記電力供給をＯＦＦさせることなくＯＮし続けるＣＰＵ電源手段（２１）と、を含み、
前記ＣＰＵ（３）は、
前記記憶手段（３２、３３）に前記プログラムの書換えや記憶データの更新を行うか否かを判別すると共に、前記プログラムの書換えや記憶データの更新を行っていることを示す書換え中指示信号を出力する書換え判別手段（３ｂ）と、
前記車両に関する制御を実行する車両制御手段（３ｃ）と、
前記書換え中指示信号を受け取り、前記モノリシックＩＣ（２）に出力するＣＰＵ通信手段（３ｄ）と、
前記リセット制御手段（２４、２５）によるリセットもしくはリセットラッチの指示に基づき、該ＣＰＵのリセットやリセットラッチを実行するリセット処理手段（３ｅ）と、を備えていることを特徴とする車両用電子制御システム。
【請求項２】
前記リセット制御手段（２４、２５）では、前記規定値をノイズ許容回数としており、前記リセットの回数が前記ノイズ許容回数を超える場合に、前記リセットラッチの指示を行うことを特徴とする請求項１に記載の車両用電子制御システム。
【請求項３】
前記リセット制御手段（２５）は、前記監視側通信手段（２３）が前記書換え中信号を受け取ったときに前記リセットの回数を維持することを特徴とする請求項１または２に記載の車両用電子制御システム。
【請求項４】
前記ＣＰＵ（３）は、監視のためのカウントを行うウォッチドッグタイマ（３ａ）を備え、
前記ＣＰＵ異常検出手段（２２）は、前記ウォッチドッグタイマ（３ａ）のカウント値に基づいて前記ＣＰＵ（３）の異常を検出することを特徴とする請求項１ないし３のいずれか１つに記載の車両用電子制御システム。
【請求項５】
前記ＣＰＵ（３）は、前記ＣＰＵ通信手段（３ｄ）を通じて前記監視側通信手段（２３）に対して決められた周期毎にデータを送っており、
前記監視側通信手段（２３）は、前記ＣＰＵ（３）からの前記データを前記周期よりも長期間に設定された時間（Ｔ２）を超えて受信しなかったときに、前記リセットの指示を行うことを特徴とする請求項１ないし４のいずれか１つに記載の車両用電子制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム書換えや補正データ更新などが行われる車両用電子制御システムに関するものである。
【背景技術】
【０００２】
従来、特許文献１に示される車両用電子制御システムがある。この車両用電子制御システムでは、少なくとも２つのマイクロコンピュータ（電子制御装置）を備えておき、電源をＯＮした時とマイクロコンピュータの動作中にリセットを行って再起動する時を識別し、動作中にリセットを行った回数が所定回数を超えた場合に、電源がＯＦＦされるまでコンピュータの動作がリセット状態に保持（以下、リセットラッチという）する。これにより、マイクロコンピュータに異常が発生したときにマイクロコンピュータが再起動し続けられることを防止している。
【０００３】
また、特許文献２には、メモリに欠陥が生じた場合でも、制御プログラムによる制御なしでメモリへの書換え動作が行えるようにし、書換え後にリセットを行う制御装置が提案されている。
【特許文献１】特開平５−８８９２４号公報
【特許文献１】特開平８−８３１７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
マイクロコンピュータの安全性を考慮すると、何らかの異常が発生したときには電源がＯＦＦするまでリセットラッチを掛け、マイクロコンピュータを待機状態にするのが好ましい。
【０００５】
しかしながら、プログラムの書換えや補正データの更新などを行った場合に、その更新による不正確なデータに基づく演算などが行われることになるため、例えば、マイクロコンピュータが暴走状態になることで異常発生に基づくリセットラッチが掛けられ、電源がＯＦＦされるまでプログラムを再起動させられなくなるという問題がある。
【０００６】
近年では、利便機能向上、例えばトラクション（ＴＣＳ）性能やセンサ側の精度向上に伴うブレーキ加圧条件の変更や加圧ガード変更などの要望があり、プログラムの書換えによって対応することが可能であるが、このような場合にも上記問題が発生し得る。
【０００７】
本発明は上記点に鑑みて、プログラムの書換えや補正データの更新などが行われる場合に、リセットラッチが掛けられることで電源がＯＦＦされるまでプログラムが起動させられなくなることを防止することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、請求項１に記載の車両用電子制御システムは、監視リセット制御用のモノリシックＩＣ（２）と、車両に関する制御を実行するデータを記憶する記憶手段（３２、３３）を備えた車両制御用のＣＰＵ（３）を備え、以下の構成を有していることを特徴としている。
【０００９】
すなわち、モノリシックＩＣ（２）では、ＣＰＵ異常検出手段（２２）がＣＰＵ（３）から送られてくるデータに基づいて、ＣＰＵ（３）の異常を検出すると共に、監視側通信手段（２３）がＣＰＵ（３）から記憶手段（３２、３３）へのプログラムの書換えや記憶データの更新を行っていることを示す書換え中信号を受け取り、リセット制御手段（２４、２５）にて、ＣＰＵ異常検出手段（２２）によりＣＰＵ（３）の異常が検出されたときに、ＣＰＵ（３）にリセットの指示を行うと共に、該リセットの回数をカウントして該回数が予め決められた規定値に達したときにリセットラッチの指示を行い、かつ、監視側通信手段（２３）が書換え中信号を受け取ったときにリセットの回数を増加させないようにする。さらに、モノリシックＩＣ（２）にＣＰＵ電源手段（２１）を備え、電源（４）からＣＰＵ（３）への電力供給のＯＮ／ＯＦＦを制御し、監視側通信手段（２３）が書換え中信号を受け取ったときに、電力供給をＯＦＦさせることなくＯＮし続けるようにする。
【００１０】
一方、ＣＰＵ（３）では、書換え判別手段（３ｂ）にて記憶手段（３２、３３）にプログラムの書換えや記憶データの更新を行うか否かを判別し、プログラムの書換えや記憶データの更新を行っていることを示す書換え中指示信号を出力させ、ＣＰＵ通信手段（３ｄ）にて、その書換え中指示信号をモノリシックＩＣ（２）に出力させる。そして、リセット制御手段（２４、２５）によるリセットもしくはリセットラッチの指示に基づき、該ＣＰＵのリセットやリセットラッチを実行するリセット処理手段（３ｅ）を実行する。
【００１１】
このような車両用電子制御システムであれば、ＣＰＵ（３）をリセットさせる要求があった場合に、それがＣＰＵ異常検出手段（２２）でＣＰＵ異常が検出されたためなのか、ＣＰＵ（３）が書換え中指示信号を出して指示しているものなのかを判別することができる。そして、ＣＰＵ（３）からの指示による場合には、リセット回数を増加させないようにするＣＰＵ（３）にリセットラッチが掛けられることを防ぎ、ＣＰＵ異常によるものである場合にはＣＰＵ（３）にリセットラッチを掛けるようにしている。
【００１２】
これにより、ＣＰＵ（３）の安全性を考慮して、何らかの異常が発生したときには電源がＯＦＦするまでリセットラッチを掛けて、ＣＰＵ（３）を待機状態にしつつ、プログラムの書換えや補正データの更新などを行う場合にリセットラッチが掛けられることを防止でき、電源（４）をＯＦＦしなくてもプログラムを再起動させることが可能となる。
【００１３】
請求項２に記載の発明では、リセット制御手段（２４、２５）では、規定値をノイズ許容回数としており、リセットの回数がノイズ許容回数を超える場合に、リセットラッチの指示を行うことを特徴としている。
【００１４】
このように、ノイズを考慮して、ノイズ許容回数（例えば２回以上）を超える場合に、初めてＣＰＵ（３）にリセットラッチが掛かるようにすることができる。また、ノイズ自体を許容しなければ、１回のリセットでリセットラッチが掛かるようにすることもできる。
【００１５】
なお、請求項３に示すように、リセット回数を増加させないとは、リセット回数を維持するようにしても良いし、リセット回数を所定値、例えば０にクリアしても良い。
【００１６】
ＣＰＵ（３）の異常監視の為には、例えば、請求項４に示すように、ＣＰＵ（３）に監視のためのカウントを行うウォッチドッグタイマ（３ａ）を備えることが挙げられ、ＣＰＵ異常検出手段（２２）にて、ウォッチドッグタイマ（３ａ）のカウント値に基づいてＣＰＵ（３）の異常を検出することができる。
【００１７】
また、請求項５に示すように、ＣＰＵ（３）にて、ＣＰＵ通信手段（３ｄ）を通じて監視側通信手段（２３）に対して決められた周期毎にデータを送らせ、監視側通信手段（２３）がＣＰＵ（３）からのデータを決められた周期よりも長期間に設定された時間（Ｔ２）を超えて受信しなかったときに、リセットの指示を行うことでＣＰＵ（３）の異常を検出することもできる。
【００１８】
なお、上記各手段の括弧内の符号は、後述する実施形態に記載の具体的手段との対応関係を示すものである。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施形態について図に基づいて説明する。
【００２０】
（第１実施形態）
図１は、本発明の第１実施形態が適用された車両用電子制御システム１のブロック構成を示した図である。以下、この図を参照して、本実施形態の車両用電子制御システム１の構成について説明する。
【００２１】
車両用電子制御システム１は、モノリシックＩＣに相当する監視リセット制御部２とＣＰＵ３を備えた構成とされ、イグニッション（以下、ＩＧという）電源から印加されるＩＧ電源電圧に基づいて作動する。
【００２２】
監視リセット制御部２は、図示しないがＲＯＭ、ＲＡＭ、Ｉ／Ｏなどを備えた周知のマイクロコンピュータまたはモノリシックＩＣによって構成され、ＲＯＭなどに記憶されたプログラムにしたがって、ＣＰＵの異常監視やリセット制御を実行する。具体的には、監視リセット制御部２は、ＣＰＵ電源回路２１、ＣＰＵ異常検出部２２、監視側通信部２３、リセットラッチ判別部２４およびリセット出力部２５を有した構成とされている。
【００２３】
ＣＰＵ電源回路２１は、ＩＧ電源４からの電力供給を受け、一定電圧となる電圧ＶＣＣ（例えば５Ｖ）を形成するものであり、ＣＰＵ３への電力供給のＯＮ／ＯＦＦの制御を行う。すなわち、このＣＰＵ電源回路２１によって形成された電圧ＶＣＣがＣＰＵ３に印加され、ＣＰＵ３が作動する。
【００２４】
ＣＰＵ異常検出部２２は、ＣＰＵ３内のウォッチドッグタイマ（以下、ＷＤタイマという）３ａのタイマカウントに基づいてＣＰＵ３の異常を検出するものであり、一般的に良く知られているものである。このＣＰＵ異常検出部２２によってＣＰＵ３の異常が検出されたときには、ＣＰＵ異常検出部２２からリセットラッチ判別部２４に対してリセットラッチを指示する信号が出力される。
【００２５】
監視側通信部２３は、ＣＰＵ３内のＣＰＵ通信部３ｄとデータの受け取りもしくは受け渡しを行う。そして、監視側通信部２３は、ＣＰＵ通信部３ｄから得たデータにリセット要求やリセット回数維持要求の有無が示されているため、それをＲＡＭに記憶させると共にＲＡＭに記憶させた内容を示す信号をリセットラッチ判別部２４に送る。なお、リセット要求やリセット回数維持要求は、“０”、“１”のフラグによって示され、フラグが“０”（つまりリセット状態）は要求無しを示し、“１”（つまりセット状態）は要求有りを示している。
【００２６】
また、監視側通信部２３は、ＣＰＵ３から予め決められた周期毎にデータが送られてくることになっているため、このデータがその周期よりも長時間に設定された時間を超えて受信されなかった場合に、ＣＰＵ３に異常が発生したと判別してリセット要求を指示する信号を出力する。
【００２７】
リセットラッチ判別部２４は、ＣＰＵ異常検出部２２や監視側通信部２３から伝えられる信号に基づいて、リセットを行うか否か、もしくはリセットラッチを掛けるか否かを判別するものである。このリセットラッチ判別部２４での判別結果を示す信号はリセット出力部２５に伝えられる。また、リセットラッチ判別部２４は、リセットした回数をカウントし、そのカウント数に応じてリセットラッチを掛けるか否かを判別を行う。さらに、リセットラッチ判別部２４は、リセットラッチを掛ける必要があるか否かを判別し、それを示す信号をリセット出力部２５に送る。このリセットラッチ要求も、“０”、“１”のフラグによって示され、フラグが“０”（つまりリセット状態）は要求無しを示し、“１”（つまりセット状態）は要求有りを示している。
【００２８】
リセット出力部２５は、リセットラッチ判別部２４から送られる信号に基づいて、それに応じた出力を発生させる。具体的には、リセット出力部２５は、ＣＰＵ３をリセットする場合には、出力する電位をＨｉからＬｏｗに切り替えたのちＬｏｗからＨｉに切り替え、リセットラッチする場合には出力する電位をＨｉからＬｏｗに切り替えたのちリセットラッチを継続する期間中Ｌｏｗを維持する。
【００２９】
一方、ＣＰＵ３は、ＲＯＭ３２、ＲＡＭ３３、Ｉ／Ｏ（図示せず）などを備えた周知のマイクロコンピュータによって構成され、ＲＯＭ３２などに記憶されたプログラムに従い、ＲＡＭ３３に記憶されたデータを用いて各種演算などの処理を行うことで、車両に関する制御としてブレーキ液圧制御を実行する。
【００３０】
ＣＰＵ３は、ＷＤタイマ３ａや書換え判別部３ｂ、通常制御部３ｃ、ＣＰＵ通信部３ｄおよびリセット処理部３ｅを有して構成されている。
【００３１】
ＷＤタイマ３ａは、マイクロコンピュータが正常動作時に、基本周期毎にパルス出力を行う。
【００３２】
書換え判別部３ｂは、書換え要求信号に基づいて、ＲＯＭ３２に記憶してあるプログラムの書換えや補正データの更新などを行うものである。ユーザーもしくは書換え作業者が外部書換え装置５を用いてプログラムの書換えや補正データの更新などを行う際に、外部書換え装置５をＣＰＵ３に繋がる図示しない端子に接続すると、書換えデータもしくは更新用データを格納した書換え要求信号が外部書換え装置５から入力される。書換え判別部３ｂは、この書換え要求信号を受け取ったか否かに基づいてプログラムの書換えや補正データ更新を行うか否かの判別を行い、それを行うと判別したときにプログラムの書換えや補正データ更新を行う。
【００３３】
また、書換え判別部３ｂは、プログラムの書換えや補正データ更新を行うと判別した場合に、ＣＰＵ通信部３ｄに対してリセット要求有、リセット回数維持要求有を示す信号を送り、逆に、判別しなかった場合には、リセット要求無、リセット回数維持要求無を示す信号を送る。さらに、書換え判別部３ｂは、プログラムの書換えや補正データ更新を行うときには、書換え実行中であることを示す書換え中信号を通常制御部３ｃにも伝えるようになっている。
【００３４】
通常制御部３ｃは、書換え判別部３ｂから書換え中信号を受け取っていない通常状態のときにはブレーキ液圧制御を実行し、書換え中信号を受け取っている書換え状態のときにはブレーキ液圧制御を実行しないようにしている。
【００３５】
ＣＰＵ通信部３ｄは、書換え判別部３ｂから伝えられたリセット要求やリセット回数維持要求の有無を示す信号を例えばシリアル／非同期などの通信手段を用いて監視リセット制御部２に伝えるものである。
【００３６】
リセット処理部３ｅは、監視リセット制御部２からのリセット信号に基づいて、ＣＰＵ３をリセットするか、リセットラッチするかなどを判別し、それを実行するものである。具体的には、リセット処理部３ｅは、ＣＰＵ３に対して電圧ＶＣＣが印加されている状態において、リセット出力部２５の電位がＬｏｗからＨｉに切り替わるとＣＰＵ３を起動し、ＨｉからＬｏｗに切り替わるとリセットが掛けられ、Ｌｏｗが維持（リセットラッチ）されている期間中リセットを掛けたままとする。そして、リセット処理部３ｅがリセットラッチを掛けているときにＣＰＵ３に対する電圧ＶＣＣの印加がＯＦＦされると、リセットラッチを解除する。
【００３７】
続いて、上記のように構成された車両用電子制御システム１の作動について説明する。図２〜図６は、車両用電子制御システム１がＲＯＭ３２に記憶されたプログラムにしたがって実行する各種制御のフローチャートを示したものである。以下、これらの図を参照して車両用電子制御システム１の作動を説明する。
【００３８】
図２は、監視リセット制御部２で実行される監視リセット制御処理のフローチャートである。この処理は、ＩＧ電源４による電力供給に基づいて実行されるもので、ドライバがＩＧスイッチをＯＮし、ＩＧ電源４からの電力供給が行われたときに演算周期毎に実行される。
【００３９】
まず、ステップ１００では、ＩＧ電源４のＯＮが維持された状態か否かを判定する。この処理は、ＩＧ電源４がＯＮされて最初にこのステップでの判定が行われるのであるか否かを判定するためのものである。このため、このステップでの判定がＩＧ電源４がＯＮされてから初めてのものであった場合にはここで否定判定され、２回目以降であった場合にはここで肯定判定される。
【００４０】
このステップで否定判定されると、ステップ１０５に進み、初期化処理として、リセットラッチ要求無しを示すべくフラグをリセット状態“０”とし、リセットされた回数を示す回数カウンタも“０”にする。
【００４１】
続いて、ステップ１１０に進み、リセット要求無し、リセット回数維持要求無しを示すべく、それぞれの要求を示すフラグを共にリセット状態“０”とし、リセットＬｏｗ状態経過時間もリセット状態“０”とする。
【００４２】
一方、ＩＧ電源４からの電力供給が行われると、ＣＰＵ電源回路２１を通じて電圧ＶＣＣがＣＰＵ３に印加される。さらに、リセット出力部２５の出力電位をＨｉに切替える。これにより、ＣＰＵ３が起動し、ＣＰＵ制御を実行する。
【００４３】
図３は、このＣＰＵ制御の処理を示したフローチャートである。このＣＰＵ制御の処理は演算周期毎に行われる。なお、図１におけるステップ１００で肯定判定された場合の処理は、ＣＰＵ制御の処理などに基づいて行われるものであるため、ここでは先に図３以降の各種処理について説明する。
【００４４】
まず、ＣＰＵ３が起動されると、ステップ２００においてプログラム書換え要求の有無を判定する。書換え要求が無ければこのステップで肯定判定され、あれば否定判定される。
【００４５】
そして、ステップ２００で肯定判定されるとステップ２０５に進み、ＲＯＭ３２に記憶された補正データの更新を判定する。補正データの更新を行う場合には、更新後に一旦ＣＰＵ３をリセットして、再起動する必要がある。このため、プログラムの書換えや補正データの更新を行う場合にはステップ２１５に進む。プログラム書換えや補正データの更新要求が無いと判定された場合は、通常のブレーキ液圧制御を行うべく、ステップ２１０に進む。
【００４６】
一方、ステップ２００で否定判定された場合にもステップ２１５に進む。このステップ２１５では、プログラム書換えや補正データ更新を行う。このときのプログラム書換えや補正データ更新の内容は、上述した外部書換え装置の信号に示される内容となる。
【００４７】
そして、プログラム書換えや補正データ更新が完了すると、ステップ２２０に進んでリセット要求有り、および、リセット回数維持要求有りを示すべく、それぞれの要求を示すフラグを共にセット状態“１”として、処理を完了する。なお、このリセット要求有り、および、リセット回数維持要求有りを示すフラグは、その後の演算周期が来たときにステップ２０５で肯定判定されると再びリセットされる。
【００４８】
図４は、図３におけるステップ２１０に示すブレーキ液圧制御のフローチャートである。ブレーキ液圧制御としては、周知となっているアンチロックブレーキ制御（ＡＢＳ）や横滑り防止制御（ＥＳＣ：Electronic Stability Control）、トラクション制御（ＴＣＳ）を行っている。すなわち、ステップ３００にて各車輪の車輪速度Ｖｗの演算、ステップ３０５にて各車輪の車輪加速度ＤＶｗの演算、ステップ３１５にて車輪速度Ｖｗに基づく推定車体速度Ｖｓの演算を行い、車輪速度Ｖｗと推定車体速度Ｖｓとの偏差として示されるスリップ率などから車輪のロック傾向を検出したり、横滑り傾向を検出する等により、ＡＢＳ制御やＥＳＣ制御やＴＣＳ制御を実行する。
【００４９】
また、上述した図３における処理に基づいて、ＣＰＵ３は、データの送信処理を実行する。図５は、この送信処理のフローチャートを示したものである。この送信処理も演算周期毎に実行される。
【００５０】
ステップ４００では、図示しないが、定期的なＣＰＵ送信したときのデータ送信が完了したか否かを判定する。そして、送信完了を示すフラグがセットされていなければ、ステップ４０５に進んでリセット要求の有無やリセット回数維持要求の有無を示すデータを送信する処理を行い、セットされていれば、そのまま処理を完了する。リセット要求の有無やリセット回数維持要求の有無のデータに関しては、上述した図３の結果がそのまま反映されたものとなる。
【００５１】
これに伴い、監視リセット制御部２は、監視側通信部２３にて、ＣＰＵ３からの送信処理によるデータの受信処理を実行する。図６は、このデータ受信処理のフローチャートを示したものである。この処理も演算周期毎に実行される。
【００５２】
まず、ステップ５００に示すように、データ受信が完了したか否かを判定する。例えば、受信データ内に終了確認を示すデータを含めておけば、そのデータを受信したときにデータの受信が完了したことが確認できる。このため、完了したことが確認できたらデータ受信が完了したことを示すフラグをセット状態“１”とし、完了していないもしくはデータ受信が行われていないのであればフラグをリセット状態“０”とする。そして、このフラグの状態からデータ受信が完了したか否かを判定し、完了した場合には、ステップ５０５に進む。
【００５３】
ステップ５０５では、受信したデータがリセット要求有りを示していたか否かを判定する。上述したステップ２２０でリセット要求有りを示すフラグがセットされていれば、このステップで肯定判定されることになる。そして、ここで肯定判定された場合には、ステップ５１０においてリセット要求の有無の状態を記憶するＲＡＭ内のメモリをセット状態“１”とし、否定判定された場合には、ステップ５１５に進む。
【００５４】
このステップ５１５では、受信したデータがリセット回数維持要求有りを示していたか否かを判定する。上述したステップ２２０でリセット回数維持要求有りを示すフラグがセットされていれば、このステップで肯定判定されることになる。そして、ここで肯定判定された場合には、ステップ５２０においてリセット回数維持要求の有無の状態を記憶するＲＡＭ内のメモリをセット状態“１”とし、否定判定された場合には、ステップ５２５に進む。
【００５５】
そして、このステップ５２５では、データ受信が完了したことを示すフラグを再びリセット状態“０”としたのち、ステップ５３０に進む。
【００５６】
一方、ステップ５００で否定判定された場合には、ステップ５３５に進む。ステップ５３５では、ＣＰＵ３からのデータを受信していない時間（以下、データ受信無時間という）が規定時間Ｔ２を超えたか否かを判定する。ここでいう規定時間Ｔ２は、ＣＰＵ３からデータが送られてくるべきであるにもかかわらず送られてきていないような状況を想定して規定されたものである。ＣＰＵ３からのデータ受信無時間をカウントし、このデータ受信無時間が規定時間Ｔ２に満たなければ許容するが、規定時間Ｔ２を超えると異常であると判別する。このため、このステップ５３５で否定判定された場合には、ステップ５４０に進んでデータ受信無時間を示すカウンタを１つインクリメントしたのち処理を終了し、規定時間Ｔ２を超えてもＣＰＵ３からのデータを受信しない場合には、ステップ５４５に進んでＣＰＵ３を再起動させるべく、リセット要求有り、つまりリセット要求の有無の状態を記憶するＲＡＭ内のメモリをセット状態“１”としたのち、ステップ５３０に進む。
【００５７】
ステップ５３０では、データ受信を完了してそのデータに示されたリセット要求やリセット回数維持要求の有無の状態をＲＡＭ内のメモリに記憶させた後、もしくは、データを規定時間Ｔ２よりも長時間受け取れずリセット要求有りをＲＡＭ内のメモリに記憶させた後であるため、データ受信無時間を０にクリアする。
【００５８】
このようにして、監視リセット制御部２において、ＣＰＵ３でのリセット要求やリセット回数維持要求の有無が認識されると共に、ＣＰＵ３の状態に応じてリセット要求の有無が認識される。
【００５９】
再び、図２に示す監視リセット制御処理のフローチャートに戻って説明する。ＩＧ電源４がＯＮされた直後ではない場合、つまりステップ１００の処理を行うのが２回目以上となる場合には、ステップ１００で肯定判定される。そして、ステップ１１５に進み、リセットラッチ要求の有無を示すメモリがリセット状態“０”であるか否かを判定する。
【００６０】
リセットラッチ要求は、後述するステップ１７０でセット状態“１”とされない限りはリセット状態“０”となるため、基本的にはこのステップで肯定判定される。そして、ステップ１２０に進み、リセット要求の有無を示すメモリがセット状態“１”であるか否かを判定する。上述した図６のステップ５１０やステップ５４５でリセット要求の有無を示すメモリがセット状態“１”にされていれば、このステップで肯定判定される。
【００６１】
そして、リセット要求が出されておらず、このステップ１２０で否定判定されれば、ステップ１１０に進み、上記と同様の処理を行った後、監視リセット制御処理を終了する。すなわち、リセット要求が出されていなければ、プログラムの書換えや補正データの更新も行われておらず、かつ、ＣＰＵ３に異常も発生していない通常のブレーキ液圧制御が行われている状態であると考えられる。このため、この場合には、そのまま監視リセット制御処理を終了する。
【００６２】
一方、ステップ１２０で肯定判定された場合には、ステップ１２５に進む。このステップでは、リセット出力部２５の出力する電位がＨｉか否かを判定する。通常、ＣＰＵ３をリセットして再起動したときにはリセット出力部２５の出力する電位がＨｉになっているため、このステップ１２５は肯定判定され、ＣＰＵ３をリセットしているときには電位がＬｏｗとなっているため、このステップ１２５で否定判定されることになる。
【００６３】
ここで肯定判定された場合には、ステップ１３０に進んで、リセット出力部２５の出力する電位をＨｉからＬｏｗに切り替えることで、リセットを行う準備を行う。つまり、ＣＰＵ３をリセットする場合には、リセット処理部３ｅに入力される電位をＨｉからＬｏｗに切り替えた後で、さらにＬｏｗからＨｉに切り替える必要があるため、一旦Ｌｏｗにするのである。
【００６４】
また、リセット要求が出されて、ＣＰＵ３を再度リセットするためにリセット出力部２５の出力する電位がＬｏｗとされ、ステップ１２５で否定判定された場合、つまり既にステップ１３０の処理によってリセット出力部２５の出力する電位がＨｉからＬｏｗに切替えられていた場合には、ステップ１３５に進み、リセットＬｏｗ状態経過時間が規定時間Ｔ１未満であるか否かを判定する。
【００６５】
規定時間Ｔ１は、リセットを行う前にリセット出力部２５の出力する電位をＬｏｗにしておく時間である。この規定時間Ｔ１を超えるまでは、ステップ１３５で肯定判定され、ステップ１４０に進んでリセットＬｏｗ状態経過時間を示すカウンタを１つインクリメントし、処理を終了する。そして、リセットＬｏｗ状態経過時間を示すカウンタの値が規定時間Ｔ１を超えるものとなったときにステップ１４５に進み、ＣＰＵ３を再起動させる。具体的には、リセット出力部２５の出力する電位をＬｏｗからＨｉに切り替える。それと同時に、リセット要求の有無を示すメモリをリセット状態“０”、リセットＬｏｗ状態経過時間を示すカウンタをリセット状態“０”にして、処理を終了する。このようにして、リセット要求が有った場合の処理が行われる。
【００６６】
また、上記ステップ１２５で肯定判定され、ステップ１３０に進んだ後には、ステップ１５０に進み、リセット回数維持要求を示すメモリがセット状態“１”であるか否かを判定する。
【００６７】
ここで、リセット回数とリセット回数維持要求について説明する。リセット回数は、リセット回数カウンタによってカウントされており、このリセット回数が規定値Ｃ１を超えると、ＣＰＵ３に異常が発生したとみなしてリセットラッチ要求が出されるようになっている。リセット回数維持要求は、ＣＰＵ３がプログラムの書換えや補正データの更新を行ったときにセット状態“１”となる。ＣＰＵ３がプログラムの書換えや補正データの更新を行っている最中は図示しないがＣＰＵ３がいわゆる暴走状態になるが、異常が発生した訳ではないため、ＣＰＵ異常の検出をさせない処置を行う。更新後に、その処置の解除およびＲＡＭの不正確なデータに基づく演算が行われることになるため、リセットを掛ける。このときにリセット回数カウンタのカウントを増加させるのは好ましくない。このため、ＣＰＵ３がプログラムの書換えや補正データの更新を行う場合はリセット回数維持要求を出すことで、リセット回数カウンタのカウントを維持し、増加させないようにするのである。
【００６８】
したがって、ステップ１５０で肯定判定された場合には、ステップ１５５に進み、リセット回数が維持されるように、リセット回数カウンタでのカウントＵＰのステップを飛ばし、その後、リセット回数維持要求を示すメモリをリセット状態“０”に戻して処理を終了し、再度、監視リセット制御処理を繰り返す。また、図示しないがプログラムの書換えや補正データの更新にて、必要に応じて、リセット回数カウンタを所定値、例えば“０”にクリアする。
【００６９】
逆に、ステップ１５０で否定判定された場合には、ステップ１６０に進んでリセット回数カウンタのカウントを１つインクリメントする。そして、ステップ１６５に進み、リセット回数カウンタのカウントがＣＰＵ３に異常が発生したとみなす規定値Ｃ１を超えているか否かを判定する。
【００７０】
規定値Ｃ１は、リセットラッチと判別する閾値となるもので、ノイズなどを考慮する場合にはノイズ許容回数として設定される。本実施形態の場合、ＣＰＵ３からプログラムの書換えや補正データの更新によってリセット要求が出された場合に、リセット回数維持要求を示すメモリがセット状態“１”になる。しかしながら、ＣＰＵ３に何らかの異常が発生した場合、リセット要求を示すメモリがセット状態“１”になる可能性がある。このような場合に、即座にＣＰＵ３にリセットラッチを掛けても良いが、それがノイズ的に発生する場合も有り得る。したがって、ノイズによることを想定して、リセット回数がＣ１になるまではリセットラッチを許容するが、それを超える場合にはＣＰＵ３に異常が発生したものとして、ＣＰＵ３にリセットラッチを掛けるようにする。
【００７１】
このため、リセット回数カウンタのカウントがＣ１を超えていなければステップ１５５に進んで上記と同様の処理を実行し、超えていればステップ１７０に進んでリセットラッチ要求を出すべく、リセットラッチ要求を示すメモリをセット状態“１”にしたのち、処理を終了し、監視リセット制御処理を繰り返す。
【００７２】
このように、リセットラッチ要求が出されると、次の演算周期において再度監視ＩＣ内部処理が実行され、ステップ１００でＩＧ電源４が既にＯＮされた状態となっているため肯定判定され、かつ、ステップ１１５でリセットラッチ要求を示すフラグがセット状態“１”となっているため否定判定されることで、ステップ１７５に進む。
【００７３】
これにより、ステップ１７５において、リセットラッチ判別部２４からリセット出力部２５に対してリセットラッチ要求として、リセット出力部２５の電位をＨｉからＬｏｗに切替えたのちＬｏｗを維持するという指示が出される。これに基づき、ＣＰＵ３にリセットラッチが掛かり、ＣＰＵ３が待機状態となる。このようにして、監視リセット制御部２によるＣＰＵ３の監視リセット制御が実行される。
【００７４】
以上説明した本実施形態の車両用電子制御システム１によれば、電源起動（ＩＧ電源４をＯＮ）したときにリセット要求やリセット回数等をクリアし、リセット要求を示すメモリがセット状態“１”であったときに、それがＣＰＵ３からの指示によるものであるか、それともＣＰＵ３の異常によるものであるかを判別している。そして、ＣＰＵ３からの指示による場合には、リセット回数維持要求を出すことでＣＰＵ３にリセットラッチが掛けられることを防ぎ、ＣＰＵ異常によるものである場合にはＣＰＵ３にリセットラッチを掛けるようにしている。
【００７５】
これにより、監視リセット制御部２側でＣＰＵ３がプログラムの書換えや補正データの更新によってリセット要求を出しているときと、例えばＣＰＵ異常によってリセット要求を示すメモリがセット状態“１”になってしまったときを判別できる。このため、ＣＰＵ３の安全性を考慮して、何らかの異常が発生したときには電源がＯＦＦするまでリセットラッチを掛けて、ＣＰＵ３を待機状態にしつつ、プログラムの書換えや補正データの更新などを行う場合にリセットラッチが掛けられることを防止でき、電源をＯＦＦしなくてもプログラムを再起動させることが可能となる。
【００７６】
また、リセット回数カウンタが規定値Ｃ１になるまでＣＰＵ３にリセットラッチを掛けないようにすることで、ノイズ的にリセット要求を示すフラグがセット状態“１”になった場合にまでＣＰＵ３にリセットラッチを掛けてしまうことを防止することができる。
【００７７】
さらに、本実施形態の車両用電子制御システム１によれば、ＩＧ電源４をＯＮさせたままの状態で、ＣＰＵ３でのプログラムの書換えや補正データの更新を行った後に自動的にＣＰＵ３をリセットして再起動させるという自動リセット機能を有しているため、書換え作業者が電源をＯＦＦさせなくても、ＣＰＵ３を再起動させることが可能となる。このため、簡素な設備によって、プログラムの書換えや補正データの更新を行った後のＣＰＵ３の再起動を行うことが可能となる。これについて、図７および図８を参照して説明する。
【００７８】
図７は、上記機能を本実施形態に示した車両用電子制御システム１とは異なるシステムによって実現する場合に想定されるブロック構成である。
【００７９】
この図に示されるように、このシステムには、ＥＣＵ１００とＥＣＵ１００を駆動するための設備１０１が備えられている。設備１０１側には、電源１０２と電源操作スイッチ１０３および電源操作装置１０４が備えられている。電源操作装置１０４は、電源１０２からの電力供給を受けて、プログラム書換え等の処理を行ったり、電源操作スイッチ１０３のＯＮ／ＯＦＦ制御を実行する。また、電源操作装置１０４は、ＥＣＵ１００に備えられるリセット要求端子から出力されるリセット要求を受け取り、電源操作スイッチ１０３によりＯＮ／ＯＦＦ制御を実行することで、ＥＣＵ１００への電力供給を制御する。
【００８０】
図８は、図７に示すシステムのプログラム書換え時の作動を表したタイミングチャートである。
【００８１】
この図に示されるように、電源の出力端子の電位がＨｉになり、外部書換え装置により書換えモードとされると、プログラム書換え操作が行われる。まず、書換えモードになると同時に電源操作スイッチ１０３がＯＮされ、電源操作装置１０４がＥＣＵ１００と通信を行い、プログラム書換えのデータをＥＣＵ１００に伝えることでＲＯＭに記憶されたプログラムの書換えを行う。
【００８２】
プログラム書換えが一通り終わると、プログラム書換えのための通信が完了するため、それがＥＣＵ１００で検出されるとＥＣＵ１００からリセット要求が出力される。このリセット要求を検出するために電源操作装置１０４に備えられるリセット要求タイマでカウントされ、リセット要求判定タイマのカウントが上限時間を超えるか否かが電源操作装置１０４で判定される。書換えエラーが発生したような場合には、リセット要求無しの状態が上限時間を超えるため、リセット要求が上限時間を超えるか否かにより、書換えが正常に行われたか否かを判定することができる。
【００８３】
そして、リセット要求が上限時間を超えていなければ、電源操作装置１０４に備えられた電源遮断タイマでＥＣＵ１００がリセット状態に切り替わるのに必要な時間以上とされた所定時間電源操作スイッチ１０３をＯＦＦする。これにより、ＥＣＵ１００への電力供給がＯＦＦされ、ＥＣＵ１００がリセットされるため、その後、電源操作スイッチ１０３をＯＮに戻してＥＣＵ１００への電力供給をＯＮにすることでＥＣＵ１００が再起動する。
【００８４】
このようにして、図７に示すシステムでのプログラム書換え操作が行われる。このプログラムの書換えに際して、各種制御に必要なデータを保存するＲＡＭに一旦プログラムを仮保存しておき、プログラム整合チェックを行いながらＲＯＭへのプログラム書換えを行うことになるため、本実施形態のような自動リセット機能が無くても設備１０１側で電源操作を確実に行えるようにするためには、ＥＣＵ１００にリセット要求端子が必要になる。さらに、設備１０１側にリセット判定タイマや電源断続タイマを備える必要もある。
【００８５】
これに対し、本実施形態の車両用電子制御システム１によれば、自動リセット機能を実現できるため、リセット要求端子が不要で、書換え作業者は、上記のような構成を備えなる必要なしで、例えば既存の検査用ツールの車両用電子制御システム１との通信を介して、プログラムの書換えや補正データの更新を行い、その後のＣＰＵ３の再起動を行うことが可能となる。
【００８６】
（他の実施形態）
上記実施形態では、車両に関する各種制御の一例として車両用電子制御システム１をブレーキ制御に適用する場合について説明したが、ブレーキ制御以外の制御に適用しても構わない。
【００８７】
なお、各図中に示したステップは、各種処理を実行する手段に対応するものである。また、本発明に備えられる各手段と上記実施形態での具体的な構成との対応関係は、次のようになっている。すなわち、ＣＰＵ異常検出部２２はＣＰＵ異常検出手段、監視側通信部２３は監視側通信手段、リセットラッチ判定部２４およびリセット出力部２５はリセット制御手段にそれぞれ相当する。また、ＣＰＵ電源回路２１はＣＰＵ電源手段に相当し、書換え判別部３ｂは書換え判別手段、通常制御部３ｃは車両制御手段、ＣＰＵ通信部３ｄはＣＰＵ通信手段、リセット処理部３ｅはリセット処理手段にそれぞれ相当する。
【図面の簡単な説明】
【００８８】
【図１】本発明の第１実施形態における車両用電子制御システム１のブロック構成を示した図である。
【図２】監視リセット制御部２で実行される監視リセット制御処理のフローチャートである。
【図３】ＣＰＵ制御の処理を示したフローチャートである。
【図４】ブレーキ液圧制御のフローチャートである。
【図５】送信処理のフローチャートである。
【図６】データ受信処理のフローチャートである。
【図７】上記第１実施形態に示す車両用電子制御システム１の比較例となるシステムのブロック構成を示した図である。
【図８】図７に示すシステムのプログラム書換え時の作動を表したタイミングチャートである。
【符号の説明】
【００８９】
１…車両用電子制御システム、２…監視リセット制御部、３…ＣＰＵ、３ａ…ＷＤタイマ、３ｂ…書換え判別部、３ｃ…通常制御部、３ｄ…ＣＰＵ通信部、３ｅ…リセット処理部、４…電源、２１…ＣＰＵ電源回路、２２…ＣＰＵ異常検出部、２３…監視側通信部、２４…リセットラッチ判別部、２５…リセット出力部、３２…ＲＯＭ、３３…ＲＡＭ。
【図１】
0004784311.tif 000002
【図２】
0004784311.tif 000003
【図３】
0004784311.tif 000004
【図４】
0004784311.tif 000005
【図５】
0004784311.tif 000006
【図６】
0004784311.tif 000007
【図７】
0004784311.tif 000008
【図８】
0004784311.tif 000009