(58)【調査した分野】(Int.Cl.,DB名)
前記報知制御部は、前記エンジン停止判定部で前記エンジンの停止を判定してから前記バッテリとの電気的な接続をオフに切り換えるまでの期間を、前記異常検出部で検出された異常の種類の数に応じて増加させるように構成したことを特徴とする請求項1に記載のエンジンの制御装置。
前記報知制御部は、前記エンジン停止判定部で前記エンジンの停止を判定した後、前記異常検出部で新たに異常が検出された場合には、前記期間の長さを延長するように構成したことを特徴とする請求項1又は請求項2に記載のエンジンの制御装置。
【発明を実施するための最良の形態】
【0011】
本発明を実施するための形態について以下に詳細に説明する。
図1に車両、例えば自動二輪車の制御装置であるECU(Engine Control Unit)の概略構成を示す。
ECU1は、電力供給系2からの電力供給を受けて車両の制御を行う。この実施の形態において、ECU1は、車両の異常検出用センサ3の信号と、クランク角センサ4の信号とが入力され、インジケータ5の点灯や消灯を制御する機能を有する。さらに、ECU1は、インジケータ5を制御する機能を実現するための構成として、異常検出部11と、回転速度算出部12と、エンスト判定部13(エンジン停止判定部)と、報知制御部14と、インジケータ駆動回路15と、ソレノイド駆動回路16(切換制御部)とを有する。
【0012】
異常検出部11は、異常検出用センサ3からの信号が入力され、車両の異常を検出する処理を実行する。異常検出用センサ3は、例えば、エンジン水温センサや、吸気圧センサなどがある。異常検出部11は、例えば、異常検出用センサ3の一例であるエンジン水温センサの信号が予め定められた閾値を越えたときに、エンジン水温異常と判定し、その旨を示す信号を報知制御部14に出力する。
回転速度算出部12は、クランク角センサ4からクランク角信号が入力され、エンジンの回転速度を算出する。ここで、回転速度算出部12は、クランク角センサ4以外のデータ、例えば、エンジンの吸気圧の変化に基づいてエンジン回転速度を算出しても良い。
エンスト判定部13は、回転速度算出部12で算出したエンジン回転速度に基づいて、エンジンの運転状態を判定する。具体的には、エンジン回転速度が予め定められた所定値以下であったとき、エンジンが停止していると判定する。エンジンの運転状態の判定結果は、報知制御部14に送信される。
【0013】
報知制御部14は、車両が異常状態にあるときに、インジケータ5の点滅を制御すると共に、エンジン停止時にECU1への電力供給を停止するタイミングを決定するように構成されている。このような処理を実行するための手段として、報知制御部14は、カウンタ21と、フラグ設定部22と、フラグ判定部23と、タイマ24とを有する。
カウンタ21は、異常発生時にインジケータ5を用いて搭乗者に異常を報知した回数を
カウントする。また、複数種類の異常が発生していた場合には、それぞれの異常についての報知を1回ずつ順番に実行したか否かもカウントする。
フラグ設定部22は、インジケータ5を用いた異常報知を予め設定された回数実施したことを示すフラグFを設定する。
フラグ判定部23は、フラグ設定部22で設定されるフラグFの値が所定の値になっているか調べる。フラグFは、異常の報知処理を終了させるために用いられる。
【0014】
タイマ24は、エンジン停止からECU1への電力供給を停止するまでの時間を制御するために使用する。タイマ24は、カウントする時間として、異常が発生していないときに使用する第1の時間と、異常が発生したときに使用する第2の時間とを有し、異常の有無に応じて第1の時間と第2の時間を使い分ける。例えば、異常が発生していないときには、タイマ24は、第1の時間を初期値としてカウントダウンを開始し、カウント値がゼロになったら、ECU1への電力供給を停止する。タイマ24は、カウントダウンの代わりに、カウントアップすることによってタイミングを制御して良い。なお、第1の時間は、第2の時間より短いことが好ましい。
【0015】
インジケータ駆動回路15は、報知制御部14からの信号を受けてインジケータ5の点灯状態を制御する制御信号を作成し、インジケータ5に出力する。
ソレノイド駆動回路16は、電力供給系2の通電切換部であるメインリレー31をオンオフ制御することでECU1への給電をコントロールする回路である。
【0016】
ここで、インジケータ5は、車両の搭乗者から視認可能な位置に配置され、インジケータ駆動回路15から出力される制御信号に指令された時間で、点灯又は消灯を行うように構成されている。
電力供給系2は、エンジンに接続されたジェネレータ32と、駆動回路33と、バッテリ34と、レギュレータ35とを有し、バッテリ34からの電力を、メインリレー31を介してECU1に供給可能に構成されている。メインリレー31は、スイッチ31Aは、ソレノイド31Bに電流を供給することによってON−OFF制御することができる。ソレノイド31Bは、ECU1側のソレノイド駆動回路16、又は電力供給系2の駆動回路33でON−OFF制御できる。
【0017】
なお、この実施の形態では、エンジンのクランキングによってジェネレータ32から駆動回路33に電力を供給し、メインリレー31のソレノイド31Bにバッテリ34からの電力を供給してスイッチ31Aをオンにするように構成されている。これに対して、電力供給系2は、不図示のセルモータの回転によってECU1に給電する構成を有しても良い。
【0018】
次に、ECU1を用いた異常報知処理の詳細について、
図2及び
図3のフローチャートを主に参照して説明する。なお、
図2は、メインリレー31を制御する処理を主に示している。
図3は、メインリレー31を制御するためのフラグを設定する処理を主にしめしている。
【0019】
図2に示す処理では、エンジン停止後にタイマ24のカウントダウンを行い、タイマ24の値が「0」になったら、ECU1への電力供給を停止する。それまでは、ECU1への電力供給を維持する。
即ち、ステップS101では、回転速度算出部12がクランク角を読み込んで、エンジン回転速度を算出する。続くステップS102で、エンスト判定部13が、エンジンが停止していないと判定した場合は、ステップS103に進む。一方、エンジンが停止していると判定したときには、ステップS104に進む。
【0020】
ステップS103では、タイマ24の設定時間を所定時間Tpreに設定する。ここで、所定時間Tpreは、車両に異常が発生していないときには第1の時間が、異常が発生しているときには第2の時間が選択される。次に、ステップS107で、メインリレー31のソレノイド31Bの駆動信号をONにする。これによって、ECU1への電力供給が継続されるので、この後にステップS101に戻る。この場合は、ステップS102でエンジンが停止していないことから、メインリレー31のソレノイド31Bは、ECU1外の駆動回路33からの信号によってONが維持される。
【0021】
ここで、ステップS102でエンジンが停止状態にあると判定された場合には、ステップS104でタイマ24をカウントダウンする。そして、ステップS105で、カウントダウン中のタイマ24の値が「0」になっていなければ、ステップS106に進み、フラグ判定部23がフラグFの値を調べる。フラグFの値が「0」であれば、ステップS107に進み、メインリレー31のソレノイド31Bの駆動信号をONにする。この場合は、ステップS102でエンジンが停止しているので、ECU1のソレノイド駆動回路16からの信号によってメインリレー31のONが維持される。
【0022】
一方、ステップS106において、フラグFの値が「1」であれば、ステップS108に進む。また、ステップS105でタイマ24の値が「0」であったときも、ステップS108に進む。
ステップS108では、メインリレー31のソレノイド31Bの駆動信号をOFFにする。この場合は、ステップS102でエンジンが停止しているので、ECU1のソレノイド駆動回路16からの信号出力を停止させることより、メインリレー31をOFFにする。その結果、ECU1への電力供給が停止され、ECU1での処理が終了する。そして、この後にここでの処理を終了する。
【0023】
次に、
図3を主に参照してフラグFの設定処理について説明する。
図3の処理では、異常発生時に全ての異常について2回ずつ報知したらフラグFを「1」にし、ECU1への電力供給を停止できるようにする。2回ずつ異常報知するまでは、フラグFを「0」にして、ECU1への電力供給を停止しないようにする。また、異常報知の途中で新しい異常が追加された場合には、カウンタ21の値をリセットし、異常報知回数を1回目から数え直す。
【0024】
即ち、ステップS201で、回転速度算出部12がクランク角を読み込んで、エンジン回転速度を算出する。続くステップS202で、異常検出用センサ3からの信号を読み込む。さらに、ステップS203で異常検出部11が車両の異常を検出していたら、ステップS204でインジケータ5を点灯と消灯を繰り返して運転者に異常報知を実行する。具体的には、報知制御部14の指令に基づいてインジケータ駆動回路15がインジケータ5を異常の種類に応じて点滅させる。ここで、異常の種類に応じて点滅させるとは、異常の種類毎に予め定められている回数及び時間間隔でインジケータ5を点滅させることである。また、複数のインジケータ5を異常の種類毎に予め定められている回数及び時間間隔で点滅させることが含まれる。
【0025】
その際、ステップS205でエンジン停止と判定されていたら、ステップS206に進む。さらに、ステップS206で、エンジン停止後に新しい異常を検出しなかった場合、ステップS207に進む。
【0026】
この実施の形態では、複数種類の異常が発生した場合には、全ての異常について2回ずつ報知を行った後、ECU1への電力供給を停止することを特徴としている。従って、ステップS207では、インジケータ5が全ての異常を1回ずつ報知したか調べる。例えば、2種類の異常が発生していた場合には、カウンタ21が、1つ目の異常を報知するイン
ジケータ5の点滅と、2つ目の異常を報知するインジケータ5の点滅を1回ずつ実行したか判定する。1回ずつインジケータ5による異常報知が終了していれば、ステップS208でカウンタ21の値Cをインクリメントする。
さらに、ステップS220でカウンタ21の値C=2であれば、全ての異常について2回ずつ報知したことになるので、ステップS221に進んでフラグ設定部22が異常の報知処理終了のためのフラグFの値を「1」に設定し、ここでの処理を終了する。
【0027】
ここで、ステップS203で、車両の異常を検出していない場合には、インジケータ5を点滅させる必要ない。従って、ステップS210に進み、報知制御部14がインジケータ5の消灯を維持する。この後、ステップS211で、カウンタ21の値Cを「0」に設定し、ステップS213で、フラグ設定部22がフラグFの値に「1」に設定する。
【0028】
また、ステップS205で、エンジン停止と判定されなかった場合は、ステップS214に進んで、カウンタ21の値Cを「0」に設定する。続いて、ステップS216で、フラグ設定部22がフラグFの値に「0」に設定する。さらに、ステップS206で、異常報知中に異常検出部11で新たな異常が検出された場合には、ステップS214に進んで、カウンタ21の値Cを「0」にリセットする。これによって、異常報知を1回目からやり直すことになる。この後、ステップS216で、フラグ設定部22がフラグFの値に「0」に設定し、ここでの処理を終了する。
【0029】
なお、ステップS207でインジケータ5が全ての異常を1回ずつ報知し終えていない場合は、ステップS215でカウンタ21の値Cを変更せずに、ステップS216に進む。ステップS220でカウンタ21の値Cが「2」でなかった場合もステップS216に進む。
【0030】
次に、
図4のタイミングチャートを用いて、異常報知処理の具体例について説明する。横軸は時間を示し、縦軸は上からインジケータ5の表示、エンジン停止の判定結果、カウンタ21の値C、フラグFの値、タイマ24の値、メインリレー31のソレノイド31Bの駆動信号を示している。
インジケータ5の表示は、異常Er1と、異常Er2と、異常Er3の3種類の異常が検出される場合を示している。異常Er1では、インジケータ5を4回点滅させる。異常Er2では、インジケータ5を3回点滅させる。異常Er3では、インジケータ5を5回点滅させる。このように、インジケータ5の点滅係数及び点灯時間によって、搭乗者は異常の発生と種類を確認することができる。なお、異常の種類や点滅回数、点灯や消灯の時間間隔は、これに限定されない。
エンジン停止の判定結果は、「YES」がエンジン停止と判定されたことを示す。「No」はエンジンが停止していないと判定したことを示す。
【0031】
カウンタ21の値Cは、異常Er1〜Er3の報知回数を示している。即ち、カウンタ21のC=0は、現在検知されている異常Er1〜Er3を0回報知したことを示す。カウンタ21のC=1は、現在検知されている異常Er1〜Er3を1回報知したことを示す。カウンタ21のC=2は、現在検知されている異常Er1〜Er3を2回報知したことを示す。
フラグFの値は、カウンタ21の値Cが「2」になったか否かを判定するためのフラグである。フラグFは、異常報知を規定回数実行したかを確認するために使用される。このために、規定回数が3回のときは、カウンタ21の値Cが「3」になったときにフラグFが「1」になる。
タイマ24の値は、初期値Tpreからカウントダウンされる。タイマ24の値が「0」になると、ECU1への給電が停止される。
メインリレー31のソレノイド31Bの駆動信号は、ONでECU1の給電が維持され
る。OFFでECU1への給電が停止される。
【0032】
例えば、時間t0の段階では、既に異常Er1と異常Er2が検知されている。この後、時間t1でエンジンが停止すると、タイマ24が初期値Tpreからカウントダウンを開始する。この場合は、異常が検知されているので、タイマ24の初期値Tpreは、第2の時間がセットされる。
カウンタ21は、エンジン停止と判定された後、異常Er1と異常Er2が、この順番で点滅された回数をカウントする。即ち、時間t1から時間t2までの間で、2つの異常Er1、Er2を順番に1回ずつ点滅したので、時間t2でカウンタ21の値Cをインクリメントして「1」にする。この後、異常Er1及び異常Er2の2回目の点滅が開始される。
【0033】
ここで、時間t3で新しく異常Er3が検出されると、カウンタ21の値Cが「0」にリセットされる。以降は、3つの異常Er1〜Er3を順番に点滅させる処理が開始される。時間t4でそれぞれ1回ずつ異常Er1〜Er3を点滅させたら、カウンタ21の値Cをインクリメントして「1」にする。そして、時間t5でそれぞれ2回ずつ異常Er1〜Er3を点滅させたら、カウンタ21の値Cをインクリメントして「2」にする。これに伴って、フラグFに「1」が立ち、メインリレー31のソレノイド31Bの駆動信号がOFFになってECU1への給電が停止する。これによって、ECU1による制御が終了し、インジケータ5も消灯する。
【0034】
このケースでは、時間t5ではタイマ24の値はゼロになっていない。即ち、タイマ24のカウントダウンが終了する前に、異常報知が終了している。これに対して、時間t5でフラグFの値が「1」になる前に、タイマ24の値がゼロになることがある。この場合には、異常Er1〜Er3を規定回数ずつ点滅させていなくても、ECU1への給電を停止し、インジケータ5を消灯させる。また、異常が検知されない場合には、タイマ24の初期値Tpreは、第1の時間が設定される。その結果、
図4のタイミングチャートで示す時間より早く、タイマ24の値が「0」になって、ECU1の電力供給が停止する。
【0035】
以上、説明したように、ECU1では、車両の異常が検出された場合に、異常の状態に応じてECU1への通電を遮断するまでの時間を変化させるように構成した。車両に異常が発生した場合には、エンジン停止後であっても確実にインジケータ5を点滅させることが可能になる。
【0036】
ここで、車両の異常の状態が異なれば、異常を報知するのに必要な時間が異なる。異常の状態とは、異常の種類や、異常の種類の数があげられる。異常の種類に応じてとは、異常を搭乗者に1回報知するために必要なインジケータ5の点滅時間が異なる場合に、インジケータ5の点滅時間が長く必要な異常の場合にはECU1の通電時間を長くし、インジケータ5の点滅時間が短くて済む異常の場合にはECU1の通電時間を短くすることに相当する。また、異常の種類の数に応じてとは、異常の種類が多いときには1回ずつ異常を報知するために必要な時間が長くなるのでECU1の通電時間を長くし、異常の種類が少ないときには1回ずつ異常を報知するために必要な時間が短くて済むのでECU1の通電時間を短くすることに相当する。
【0037】
また、ECU1では、異常の種類の数に応じてECU1への給電をオフにするまでの時間を第2の時間の範囲内で変化させるように構成した。このために、異常の報知に必要な時間を容易に設定することができ、十分な期間を確実に確保できる。なお、異常が検出された場合には、全ての異常報知が所定回数実行されるか、第2の時間が経過するか、いずれか早く終了した時点でECU1への給電が停止する。一方、異常が検出されなかった場合には、給電をオフにするまでの時間として、第2の時間より短い時間である第1の時間
が選択されるので、バッテリ34の省電力化が図れる。
【0038】
さらに、異常の報知中に、新しい異常が検出された場合に、ECU1への給電をオフにするまでの時間を第2の時間の範囲内で延長させることが可能になるので、全ての異常の報知に必要な時間を確実に確保し易くなる。第2の時間は、複数の異常が検知された場合に、それらの異常を所定回数ずつ報知するのに十分な時間が設定されているので、検知された故障の全てを運転者に報知する前にECUが停止してしまうことを防止できる。
【0039】
なお、本発明は、実施の形態に限定されずに広く応用することが可能である。
例えば、ECU1にバッテリ34の電圧を測定する測定部を設け、バッテリ34の電圧が所定値以下のときには、ECU1への給電をオフにするまでの時間として、第2の時間より短い時間を選択することによって、異常検知の信頼性の低下を防止しても良い。