JP2006348786A - 車両の異常検出方法及び車両用電子制御装置 - Google Patents
車両の異常検出方法及び車両用電子制御装置 Download PDFInfo
- Publication number
- JP2006348786A JP2006348786A JP2005173546A JP2005173546A JP2006348786A JP 2006348786 A JP2006348786 A JP 2006348786A JP 2005173546 A JP2005173546 A JP 2005173546A JP 2005173546 A JP2005173546 A JP 2005173546A JP 2006348786 A JP2006348786 A JP 2006348786A
- Authority
- JP
- Japan
- Prior art keywords
- vehicle
- abnormality detection
- electronic control
- control device
- detection process
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Control Of Vehicle Engines Or Engines For Specific Uses (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
【課題】処理負荷の大きさを考慮し、車両の状態に依存して異常検出処理の実施・非実施を行うことができ、処理負荷を軽減することが可能な車両用電子制御装置を提供する。
【解決手段】故障診断処理を開始すると、実施有無関連テーブルから1行読み出し、その行に記載されている車両条件、例えば、「エンジン水温高」が成立するか否かを判定し、車両条件が成立すると判定した場合、その行に設定されている異常検出実施対象の実施有無が“×”(非実施)になっている異常検出実施対象を異常検出実施対象テーブルから削除する。この処理を実施有無関連テーブルの最終行まで行った後、変更した異常検出実施対象テーブルに基づいて、異常検出処理を実行する。
【選択図】図2
【解決手段】故障診断処理を開始すると、実施有無関連テーブルから1行読み出し、その行に記載されている車両条件、例えば、「エンジン水温高」が成立するか否かを判定し、車両条件が成立すると判定した場合、その行に設定されている異常検出実施対象の実施有無が“×”(非実施)になっている異常検出実施対象を異常検出実施対象テーブルから削除する。この処理を実施有無関連テーブルの最終行まで行った後、変更した異常検出実施対象テーブルに基づいて、異常検出処理を実行する。
【選択図】図2
Description
本発明は、車両の異常検出方法及び異常検出機能を備えた車両用電子制御装置に関する。
車両の電子制御装置(以下、ECUという)は、車両の制御機構との間で信号のやり取りを行って車両の電子制御を行うものであり、例えば、エンジン制御ECUには車両に装備されているセンサ群で検出された、車速、エンジン回転数、空気流入量等の情報が入力され、エンジン制御ECUはこれらの情報に基づいて所定の演算処理を行い、その演算結果(例えば、燃料噴射量やバイパス空気量などを制御するための信号)を車両に装備された、電動スロットルやスタータ噴射弁等の制御機構へ送出し、燃料の噴射量や流入空気量の制御などを行っている。
このようなECUは、ECU内の各部の異常検出を行わないと、走行上の不具合を引き起こす可能性があり、場合によっては走行不能となることもあるため、各ECUに自己診断機能を備えることにより、信頼性の向上が図られている。すなわち、各ECUはCPUやセンサ類の動作状態を適当な周期で自動的にチェックし、故障時には異常ランプを点灯したり、その故障内容が修理業者に分かるように異常コード(DTC)を記憶したりするダイアグノーシス(以下、ダイアグという)処理を行っている(例えば、特許文献1参照)。
特開平7−20935号公報
ところで、車両に発生する異常はより迅速に検出されることが望まれており、このためには、異常診断の処理間隔を短縮する必要があるが、異常診断の処理間隔を短縮すると、ECUの処理負荷が増加し、ECUの制御に影響を及ぼすおそれがある。
例えば、エンジン制御ECUでは、エンジンの高回転数時やエンジン始動時など、制御対象機器としてのエンジンを制御するための処理負荷が大きいときに、異常診断処理を実行すると、大きな処理負荷がさらに加わることにより、エンジン制御の処理抜けなどが起こる可能性がある。このため、より高性能な演算処理装置(いわゆるCPU)が必要になってしまう。
例えば、エンジン制御ECUでは、エンジンの高回転数時やエンジン始動時など、制御対象機器としてのエンジンを制御するための処理負荷が大きいときに、異常診断処理を実行すると、大きな処理負荷がさらに加わることにより、エンジン制御の処理抜けなどが起こる可能性がある。このため、より高性能な演算処理装置(いわゆるCPU)が必要になってしまう。
一方、近年の車両システム及びその制御プログラムの増大に伴い、ECUにおけるソフト負荷の軽減が必須となっているが、仕様段階で車両制御や故障診断の削除を行うことは安全・品質面及び法規上の問題で非常に困難な状況になっている。
本発明は、上記の問題に鑑みてなされたもので、処理負荷の大きさを考慮し、車両の状態に依存して異常検出処理の実施・非実施を決定することができ、処理負荷を軽減することが可能な車両の異常検出方法及び車両用電子制御装置を提供することを目的とする。
上述の目的を達成するため、本発明に係る車両の異常検出方法(1)は、
車両の種々の異常を検出する車両の異常検出方法であって、
設定された車両条件が成立するか否かを判定し、車両条件が成立した場合、車両条件と種々の異常検出処理の実施有無との関係が設定された実施有無関連テーブルに基づいて、当該車両条件で非実施に設定されている異常検出処理を実行しないことを特徴とする。
車両の種々の異常を検出する車両の異常検出方法であって、
設定された車両条件が成立するか否かを判定し、車両条件が成立した場合、車両条件と種々の異常検出処理の実施有無との関係が設定された実施有無関連テーブルに基づいて、当該車両条件で非実施に設定されている異常検出処理を実行しないことを特徴とする。
また、本発明に係る車両用電子制御装置(1)は、
異常検出処理機能を実行する制御手段を備えた車両用電子制御装置であって、
車両条件と種々の異常検出処理の実施有無との関係が設定された実施有無関連テーブルを有し、上記制御手段が、上記実施有無関連テーブルに設定された車両条件が成立するか否かを判定し、車両条件が成立した場合、上記実施有無関連テーブルにおいて当該車両条件で非実施に設定されている異常検出処理を実行しないことを特徴とする。
異常検出処理機能を実行する制御手段を備えた車両用電子制御装置であって、
車両条件と種々の異常検出処理の実施有無との関係が設定された実施有無関連テーブルを有し、上記制御手段が、上記実施有無関連テーブルに設定された車両条件が成立するか否かを判定し、車両条件が成立した場合、上記実施有無関連テーブルにおいて当該車両条件で非実施に設定されている異常検出処理を実行しないことを特徴とする。
さらに、本発明に係る車両用電子制御装置(2)は、車両用電子制御装置(1)において、
上記実施有無関連テーブルが当該制御装置の製造時に、機種毎に予め設定されることを特徴とし、
本発明に係る車両用電子制御装置(3)は、車両用電子制御装置(1)において、
上記実施有無関連テーブルが外部ツールにより設定されることを特徴とする。
上記実施有無関連テーブルが当該制御装置の製造時に、機種毎に予め設定されることを特徴とし、
本発明に係る車両用電子制御装置(3)は、車両用電子制御装置(1)において、
上記実施有無関連テーブルが外部ツールにより設定されることを特徴とする。
また、本発明に係る車両用電子制御装置(4)は、車両用電子制御装置(1)において、
上記制御手段が、異常検出処理毎の判定済みフラグに連動して上記実施有無関連テーブルのテーブル値を更新することを特徴とし、
本発明に係る車両用電子制御装置(5)は、車両用電子制御装置(4)において、
各異常検出処理の関係が設定された検出処理関連テーブルを有し、上記制御手段が、上記検出処理関連テーブルに基づいて、テーブル値が更新された検出処理に関連する検出処理のテーブル値も更新することを特徴とする。
上記制御手段が、異常検出処理毎の判定済みフラグに連動して上記実施有無関連テーブルのテーブル値を更新することを特徴とし、
本発明に係る車両用電子制御装置(5)は、車両用電子制御装置(4)において、
各異常検出処理の関係が設定された検出処理関連テーブルを有し、上記制御手段が、上記検出処理関連テーブルに基づいて、テーブル値が更新された検出処理に関連する検出処理のテーブル値も更新することを特徴とする。
さらに、本発明に係る車両用電子制御装置(6)は、車両用電子制御装置(1)において、
上記制御手段が、異常継続時間が最も異常検出閾値に近い異常検出処理のテーブル値を実施に変更することにより上記実施有無関連テーブルを更新することを特徴とし、
本発明に係る車両用電子制御装置(7)は、車両用電子制御装置(6)において、
各異常検出処理の関係が設定された検出処理関連テーブルを有し、上記制御手段が、上記検出処理関連テーブルに基づき、テーブル値が実施に更新された処理に関連する検出処理のテーブル値を実施に変更し、それ以外の処理を非実施に変更することを特徴とする。
上記制御手段が、異常継続時間が最も異常検出閾値に近い異常検出処理のテーブル値を実施に変更することにより上記実施有無関連テーブルを更新することを特徴とし、
本発明に係る車両用電子制御装置(7)は、車両用電子制御装置(6)において、
各異常検出処理の関係が設定された検出処理関連テーブルを有し、上記制御手段が、上記検出処理関連テーブルに基づき、テーブル値が実施に更新された処理に関連する検出処理のテーブル値を実施に変更し、それ以外の処理を非実施に変更することを特徴とする。
また、本発明に係る車両用電子制御装置(8)は、車両用電子制御装置(4)〜(7)のいずれかにおいて、
上記制御手段が、一定周期にて上記実施有無関連テーブルを初期化することを特徴とし、
本発明に係る車両用電子制御装置(9)は、車両用電子制御装置(8)において、
上記制御手段が、定常走行での一定時間経過により、上記実施有無関連テーブルの初期化周期を長くすることを特徴とする。
上記制御手段が、一定周期にて上記実施有無関連テーブルを初期化することを特徴とし、
本発明に係る車両用電子制御装置(9)は、車両用電子制御装置(8)において、
上記制御手段が、定常走行での一定時間経過により、上記実施有無関連テーブルの初期化周期を長くすることを特徴とする。
本発明に係る車両の異常検出方法(1)及び車両用電子制御装置(1)〜(3)によれば、異常検出処理の実施有無関連テーブルに設定されている車両条件が成立した場合、その車両条件で非実施に設定されている異常検出処理が実行されず、車両の状態に依存して異常検出処理の実施・非実施を決定することができるので、処理負荷を軽減することができる。
また、本発明に係る車両用電子制御装置(4)によれば、異常検出処理毎の判定済みフラグ、例えば、正常判定済みフラグに連動して異常検出処理の実施有無関連テーブルが非実施に更新されるので、一度正常と判定された異常検出処理を実施しないようにすることができ、さらに処理負荷を軽減することが可能となる。
さらに、本発明に係る車両用電子制御装置(5)によれば、検出処理関連テーブルに基づき、テーブル値が非実施に更新された検出処理に関連する検出処理のテーブル値も非実施に更新されるので、関連する検出処理を実施しないようにすることができる。
さらに、本発明に係る車両用電子制御装置(5)によれば、検出処理関連テーブルに基づき、テーブル値が非実施に更新された検出処理に関連する検出処理のテーブル値も非実施に更新されるので、関連する検出処理を実施しないようにすることができる。
また、本発明に係る車両用電子制御装置(6)によれば、異常継続時間が最も異常検出閾値に近い異常検出処理のテーブル値が非実施から実施に更新されるので、早期に実施すべき検出処理を実施するようにテーブルを更新することができる。
さらに、本発明に係る車両用電子制御装置(7)によれば、検出処理関連テーブルに基づき、テーブル値が実施に更新された処理に関連する検出処理のテーブル値が実施に変更され、それ以外の処理が非実施に変更されるので、実施に更新された異常検出処理に関連する異常検出処理も実施することができる。
さらに、本発明に係る車両用電子制御装置(7)によれば、検出処理関連テーブルに基づき、テーブル値が実施に更新された処理に関連する検出処理のテーブル値が実施に変更され、それ以外の処理が非実施に変更されるので、実施に更新された異常検出処理に関連する異常検出処理も実施することができる。
また、本発明に係る車両用電子制御装置(8)によれば、一定周期にて実施有無関連テーブルが初期化されるので、一旦非実施、または実施に更新された検出処理がイグニッションオン中その状態のままとなってしまう事態を防止し、各異常検出処理を定期的に実施することができる。
さらに、本発明に係る車両用電子制御装置(9)によれば、定常走行での一定時間経過により、異常検出処理の実施有無関連テーブルの初期化周期が長くなり、非実施となったテーブル値が実施に変更されるまでの期間が長くなるので、異常診断の負荷を軽減することができる。
さらに、本発明に係る車両用電子制御装置(9)によれば、定常走行での一定時間経過により、異常検出処理の実施有無関連テーブルの初期化周期が長くなり、非実施となったテーブル値が実施に変更されるまでの期間が長くなるので、異常診断の負荷を軽減することができる。
以下、本発明の車両用電子制御装置をエンジン制御ECUに適用した実施例について、図面を用いて説明する。
図1はエンジン制御ECUの構成を示すブロック図であり、図に示すように、エンジン制御ECU1はCPU11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、入力回路14、出力回路15等から構成され、これらの各部がバス16により接続されている。
図1はエンジン制御ECUの構成を示すブロック図であり、図に示すように、エンジン制御ECU1はCPU11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、入力回路14、出力回路15等から構成され、これらの各部がバス16により接続されている。
CPU11はバス16を介してエンジン制御ECU1のハードウェア各部を制御するとともに、ROM12に記憶されたプログラムに基づいて各種のプログラムを実行し、ROM12はエンジン制御プログラムや異常診断プログラムとともに、車両条件と種々の異常検出処理の実施有無との関係が設定された実施有無関連テーブルや異常検出実施対象を記憶している。
図2は上記の実施有無関連テーブルの一例であり、エンジン水温高、アイドル状態、非アイドル状態、燃料吐出量によるフィードバック制御(燃料系F/B)中・・・等の車両条件と、これらの車両条件が成立した場合の各異常検出実施対象の実施有無が設定されている。この例では、例えば、エンジン水温が高いとき、失火異常検出と水温センサ断線検出を実施し、燃料系異常検出とアイドル速度制御(ISC)異常検出を実施しないように設定されている。
この実施有無関連テーブルは、エンジン制御ECUの製造時に、機種毎に予めROMに設定することもでき、また、外部ツール、例えば、故障診断テスタ2から入力回路14を介してエンジン制御ECU1に入力することにより、EEPROM等の書き換え可能なROMに記憶させることもできる。
また、RAM13はSRAM等で構成され、図3に示すような異常検出実施対象テーブルや、各異常検出の判定(異常判定または正常判定)済みフラグの記憶領域、ダイアグコード等のダイアグ情報の記憶領域等を備えている。異常検出実施対象テーブルは初期化時にROM12に記憶されている異常検出実施対象を読み出して初期化され、異常実施有無判別処理の実施時に不要な異常検出処理が削除される。
一方、入力回路14には、水温センサ21、空燃比(A/F)センサ22、ノックセンサ23、回転数センサ24等の各種センサの信号が入力され、これらのセンサからの信号がCPU11に入力される。水温センサ21は、エンジンの冷却水の温度を検出し、A/Fセンサ22は排出ガス中に含まれる酸素濃度を検出する。ノックセンサ23はエンジンの失火検出を行い、回転数センサ24はエンジンの回転数を計測する。
また、出力回路15には、イグナイタ(IGT)31、インジェクター32、警告ランプ33等の各種アクチュエータが接続されている。
また、出力回路15には、イグナイタ(IGT)31、インジェクター32、警告ランプ33等の各種アクチュエータが接続されている。
このエンジン制御ECU1は、上記の各種センサの検出信号に基づいてエンジンの運転状態に対応した燃料噴射量等を演算し、エンジンの複数の気筒それぞれに設定されるインジェクター32に対して燃料噴射指令を出力し、また、イグナイタ31に対して点火指令信号を出力して、エンジンの運転制御を実行する。
また、エンジン制御ECU1は、車両の各部位の診断を各センサ群からの検出信号に基づいて実行しており、診断情報を診断結果に対応したコードとしてRAM13に記憶するとともに、故障発生時には、警告ランプ33を点灯させて故障発生をユーザに知らせて修理を促す。
一方、エンジン制御ECU1による車両の各部位の診断に基づく情報を外部から読み出せるように、エンジン制御ECU1に対して入力回路14を介して故障診断テスタ2が接続できるようになっており、故障診断テスタ2が接続された場合には、エンジン制御ECU1は故障診断テスタ2との間でデータ通信を行い、故障診断テスタ2から要求される情報を出力する。
一方、エンジン制御ECU1による車両の各部位の診断に基づく情報を外部から読み出せるように、エンジン制御ECU1に対して入力回路14を介して故障診断テスタ2が接続できるようになっており、故障診断テスタ2が接続された場合には、エンジン制御ECU1は故障診断テスタ2との間でデータ通信を行い、故障診断テスタ2から要求される情報を出力する。
次に、異常診断実施時のCPU11の作用について、フローチャートにより説明する。
図4は、異常診断のメイン処理の作用を示すフローチャートであり、イグニッションスイッチ(図示せず)がオンとなった場合、CPU11は、図4のフローチャートに示す異常診断処理のメインプログラムを開始し、ROM12に記憶されている実施有無関連テーブルを読み出してRAM13に記憶した(ステップ101)後、異常実施有無判別検出処理を実行する(ステップ102)。
図4は、異常診断のメイン処理の作用を示すフローチャートであり、イグニッションスイッチ(図示せず)がオンとなった場合、CPU11は、図4のフローチャートに示す異常診断処理のメインプログラムを開始し、ROM12に記憶されている実施有無関連テーブルを読み出してRAM13に記憶した(ステップ101)後、異常実施有無判別検出処理を実行する(ステップ102)。
図5は、上記の異常実施有無判別検出処理のサブルーチンプログラムの作用を示すフローチャートであり、このサブルーチンプログラムを開始すると、CPU11は、まず、RAM13に記憶されている異常検出実施対象テーブルを初期化する(ステップ201)。
すなわち、CPU11は、ROM12から異常検出実施対象の初期設定を読み出してRAM13に記憶する。
すなわち、CPU11は、ROM12から異常検出実施対象の初期設定を読み出してRAM13に記憶する。
次に、CPU11は、図2に示す、RAM13に記憶されている実施有無関連テーブルから1行読み出した(ステップ202)後、その行に記載されている車両条件、例えば、「エンジン水温高」が成立するか否かを判定する(ステップ203)。車両条件が成立すると判定した場合、CPU11は、その行に設定されている異常検出実施対象の実施有無が“×”(非実施)になっている異常検出実施対象をRAM13に記憶されている異常検出実施対象テーブルから削除する(ステップ204)。
ステップ203で車両条件が成立しないと判定した場合、あるいは、ステップ204で異常検出実施対象を削除した後、CPU11は、読み出した行が実施有無関連テーブルの最終行か否かを判定し(ステップ205)、最終行でないと判定した場合は、ステップ202に戻って次の行を読み出し、再びその行の車両条件が成立するか否かを判定する(ステップ203)。
一方、ステップ205で読み出した行が実施有無関連テーブルの最終行であると判定した場合、CPU11は、異常実施有無判別検出処理のサブルーチンプログラムを終了し、メイン処理に戻る。
一方、ステップ205で読み出した行が実施有無関連テーブルの最終行であると判定した場合、CPU11は、異常実施有無判別検出処理のサブルーチンプログラムを終了し、メイン処理に戻る。
ステップ102の異常実施有無判別検出処理のサブルーチンプログラムを終了すると、CPU11は、RAM13に記憶されている異常検出実施対象テーブルが空か否かを判定し(ステップ103)、異常検出実施対象テーブルが空であると判定した場合、ステップ102に戻り、再び、異常実施有無判別検出処理を実行する。
一方、異常検出実施対象テーブルが空でないと判定した場合、CPU11は、異常検出処理を実行した(ステップ104)後、ステップ102に戻り、再び、異常実施有無判別検出処理を実行する。
一方、異常検出実施対象テーブルが空でないと判定した場合、CPU11は、異常検出処理を実行した(ステップ104)後、ステップ102に戻り、再び、異常実施有無判別検出処理を実行する。
図6は、上記の異常検出処理のサブルーチンプログラムの作用を示すフローチャートであり、このサブルーチンプログラムを開始すると、CPU11は、まず、RAM13に記憶されている異常検出実施対象テーブルから1行読み出した(ステップ301)後、その行の検出処理を実行する(ステップ302)。
例えば、水温センサの断線検出の場合、図7のフローチャートに示すように、CPU11は、前回の水温センサの断線検出処理から所定時間、例えば、16msec経過したか否かを判定し(ステップ401)、所定時間経過していないと判定した場合、処理を終了する。前回の水温センサの断線検出処理から所定時間が経過していると判定した場合、CPU11は、水温センサ21の出力を取り込んだ(ステップ402)後、取り込んだ水温センサの出力が所定範囲内の値であるか否かを判定する(ステップ403)。
取り込んだ水温センサの出力が所定範囲内の値であると判定した場合、CPU11はRAM13の水温センサ断線検出の正常判定フラグをオンし(ステップ404)、異常時間カウンタをリセットした(ステップ405)後、水温センサ検出処理を終了する。
一方、取り込んだ水温センサの出力が所定範囲内の値でないと判定した場合、CPU11は、異常時間をカウントアップした(ステップ406)後、異常継続時間が所定閾値(スレッシュ)、例えば、0.5secを越えたか否かを判定し(ステップ407)、異常継続時間が所定閾値を越えていないと判定した場合、水温センサ検出処理を終了する。
一方、取り込んだ水温センサの出力が所定範囲内の値でないと判定した場合、CPU11は、異常時間をカウントアップした(ステップ406)後、異常継続時間が所定閾値(スレッシュ)、例えば、0.5secを越えたか否かを判定し(ステップ407)、異常継続時間が所定閾値を越えていないと判定した場合、水温センサ検出処理を終了する。
また、異常継続時間が所定閾値を越えていると判定した場合、CPU11は、水温センサ断線検出の異常判定フラグをオンした(ステップ408)後、対応するダイアグコードをRAM13に記憶する(ステップ409)。次に、CPU11は、警告ランプ33を点灯した(ステップ410)後、水温センサ検出処理を終了する。
そして、図6のフローチャートのステップ302の検出処理を終了すると、CPU11は、ステップ301で読み出した行が異常検出実施対象テーブルの最終行か否かを判定し(ステップ303)、最終行でないと判定した場合は、ステップ301に戻って次の行を読み出し、再びその行の検出処理を実行する(ステップ302)。
一方、ステップ303で読み出した行が異常検出実施対象テーブルの最終行であると判定した場合、CPU11は、異常検出処理のサブルーチンプログラムを終了し、メイン処理に戻る。
一方、ステップ303で読み出した行が異常検出実施対象テーブルの最終行であると判定した場合、CPU11は、異常検出処理のサブルーチンプログラムを終了し、メイン処理に戻る。
以上のように、実施有無関連テーブルに設定されている車両条件が成立した場合、その車両条件で非実施に設定されている異常検出処理が異常検出実施対象テーブルから削除され、車両の状態に依存して必要な異常検出処理のみが実施されるので、処理負荷を軽減することができる。
上記の実施例では、毎回、同じ実施有無関連テーブルに基づいて、異常実施有無判別検出処理を実行したが、異常検出の条件成立フラグを使用して実施有無関連テーブルを更新するようにすることもでき、以下、異常検出の条件成立フラグを使用して実施有無関連テーブルを更新する場合の作用を図8、図9のフローチャートにより説明する。
なお、装置構成は図1のブロック図と同じであるので、詳細な説明は省略する。
なお、装置構成は図1のブロック図と同じであるので、詳細な説明は省略する。
イグニッションスイッチがオンとなった場合、CPU11は常時、図8のフローチャートに示す異常診断処理のメインプログラムを実行するが、実施有無関連テーブル読み出し(ステップ501)、異常実施有無判別検出処理(ステップ502)、異常検出実施対象テーブルが空か否かの判定処理(ステップ503)、異常検出処理(ステップ504)は、図4のフローチャートのステップ101〜104と同様であるので、説明を省略し、ステップ505の関連テーブル更新処理の作用についてのみ説明する。
図9は、上記の実施有無関連テーブルの更新処理のサブルーチンプログラムの作用を示すフローチャートであり、このサブルーチンプログラムを開始すると、まず、CPU11は、前回の実施有無関連テーブルの初期化から所定時間、例えば、65msec経過したか否かを判定する(ステップ601)。前回の実施有無関連テーブルの初期化から所定時間が経過していないと判定した場合、CPU11は、RAM13に記憶されている実施有無関連テーブルから1列読み出した(ステップ602)後、その列の異常検出処理の正常判定フラグがオンになっているか否かを判定する(ステップ603)。正常判定フラグがオンになっていると判定した場合、CPU11は、実施有無関連テーブルのその列を全て“×”に更新する(ステップ604)。
ステップ603で正常判定フラグがオンになっていないと判定した場合、あるいは、ステップ604でテーブル値を更新した後、CPU11は、読み出した列が実施有無関連テーブルの最終列か否かを判定し(ステップ605)、最終列でないと判定した場合は、ステップ602に戻って次の列を読み出し、再びその列の異常検出処理の正常判定フラグがオンになっているか否かを判定する(ステップ603)。
また、ステップ605で読み出した列が実施有無関連テーブルの最終列であると判定した場合、CPU11は、実施有無関連テーブルの更新処理のサブルーチンプログラムを終了し、メイン処理に戻る。
また、ステップ605で読み出した列が実施有無関連テーブルの最終列であると判定した場合、CPU11は、実施有無関連テーブルの更新処理のサブルーチンプログラムを終了し、メイン処理に戻る。
一方、ステップ601で前回の実施有無関連テーブルの初期化から所定時間が経過したと判定した場合、CPU11は、ROM12に記憶されている実施有無関連テーブルを読み出してRAM13に記憶することにより実施有無関連テーブルを初期化した(ステップ606)後、実施有無関連テーブルの更新処理のサブルーチンプログラムを終了し、メイン処理に戻る。
なお、この初期化処理は、一旦非実施に設定された異常検出処理がイグニッションオンの期間中常に非実施となってしまうことを防止するため、所定の初期化周期をおいて実施するものである。
なお、この初期化処理は、一旦非実施に設定された異常検出処理がイグニッションオンの期間中常に非実施となってしまうことを防止するため、所定の初期化周期をおいて実施するものである。
以上のように、異常検出処理毎の判定済みフラグ、例えば、正常判定済みフラグに連動して実施有無関連テーブルのその異常検出処理のテーブル値が“×”(非実施)に変更され、一度正常と判定された異常検出処理を、テーブルが初期化されるまで実施しないようにすることができるので、処理負荷を軽減することが可能となる。
上記の実施例では、一定周期、例えば、65msec毎に実施有無関連テーブルを初期化したが、この初期化周期を変更することも可能であり、以下、実施有無関連テーブルの初期化周期を変更する場合の作用を図10、図11のフローチャートにより説明する。
イグニッションスイッチがオンとなった場合、CPU11は、常時、図10のフローチャートに示す異常診断処理のメインプログラムを実行するが、実施有無関連テーブル読み出し(ステップ701)、異常実施有無判別検出処理(ステップ702)、異常検出実施対象テーブルが空か否かの判定処理(ステップ703)、異常検出処理(ステップ704)、関連テーブル更新処理(ステップ706)は、図8のフローチャートのステップ501〜505と同じであるので、説明を省略し、ステップ705の関連テーブル初期化周期変更処理の作用についてのみ説明する。
図11は、上記の関連テーブル初期化周期変更処理のサブルーチンプログラムの作用を示すフローチャートであり、このサブルーチンプログラムを開始すると、CPU11は、車両が定常走行にて一定時間走行したか否かを判定する(ステップ801)。この場合、車両が車速10〜80km/hでの走行を30分継続した場合、CPU11は定常走行にて一定時間走行したと判定する。
ステップ801で車両が定常走行にて一定時間走行していないと判定した場合、CPU11は、関連テーブル初期化周期変更処理のサブルーチンプログラムを終了してメイン処理プログラムに戻り、定常走行にて一定時間走行したと判定すると、関連テーブル初期化周期を、例えば、128msに変更することにより初期化周期を長くする(ステップ802)。
以上のように、定常走行にて一定時間走行した場合、関連テーブル初期化周期を長くすることにより、一旦非実施に設定された異常検出処理が再び実施に変更されるまでの間隔が長くなるので、さらに処理負荷を軽減することができる。
さらに、実施有無関連テーブルのテーブル値が更新された場合に、更新された検出処理と関連のある検出処理のテーブル値も更新するようにすることもでき、以下、更新された検出処理と関連のある検出処理のテーブル値も更新する場合の作用を図12、図13のフローチャートにより説明する。
なお、装置構成は図1のブロック図と同じであるが、ROM12は図14に示す検出処理関連テーブルも記憶している。
なお、装置構成は図1のブロック図と同じであるが、ROM12は図14に示す検出処理関連テーブルも記憶している。
この検出処理関連テーブルでは、“○”に設定されている異常検出処理の実施有無関連テーブルのテーブル値が更新された場合には、対応する異常検出のテーブル値も更新される。例えば、水温センサ断線検出のテーブル値が更新された場合、失火異常検出のテーブル値も同じテーブル値に更新される。
イグニッションスイッチがオンとなった場合、CPU11は、常時、図12のフローチャートに示す異常診断処理のメインプログラムを実行するが、実施有無関連テーブル読み出し(ステップ901)、異常実施有無判別検出処理(ステップ902)、異常検出実施対象テーブルが空か否かの判定処理(ステップ903)、異常検出処理(ステップ904)、関連テーブル更新周期変更処理(ステップ905)、関連テーブル更新処理(906)は、図10のフローチャートのステップ701〜706と同じであるので、説明を省略し、ステップ907の検出処理関連テーブルによる処理の作用についてのみ説明する。
なお、RAM13は実施有無関連テーブルが更新された場合にも、更新前のテーブルを記憶しているものとする。
なお、RAM13は実施有無関連テーブルが更新された場合にも、更新前のテーブルを記憶しているものとする。
図13は、上記の検出処理関連テーブルによる処理のサブルーチンプログラムの作用を示すフローチャートであり、このサブルーチンプログラムを開始すると、CPU11は、まず、RAM13に記憶されている実施有無関連テーブルから1列読み出した(ステップ1001)後、その列の検出処理が更新前のテーブルと比較してテーブル値が更新された検出処理か否かを判定する(ステップ1002)。
テーブル値が更新された検出処理であると判定した場合、CPU11は、図14の検出処理関連テーブルに基づき、更新処理された検出処理と関連ある検出処理のテーブル値を同値にて更新する(ステップ1003)。例えば、水温センサ断線検出のテーブル値が“×”(非実施)に更新された場合、失火異常検出のテーブル値も“×”(非実施)に更新される。
ステップ1002でテーブル値が更新された検出処理でないと判定した場合、あるいは、ステップ1003でテーブル値を更新した後、CPU11は、読み出した列が実施有無関連テーブルの最終列か否かを判定し(ステップ1004)、最終列でないと判定した場合は、ステップ1001に戻って次の列を読み出し、再びその列の検出処理が更新前のテーブルと比較してテーブル値が更新された検出処理か否かを判定する(ステップ1002)。
一方、ステップ1004で読み出した列が実施有無関連テーブルの最終列であると判定した場合、CPU11は、検出処理関連テーブルによる処理のサブルーチンプログラムを終了し、メイン処理プログラムに戻る。
一方、ステップ1004で読み出した列が実施有無関連テーブルの最終列であると判定した場合、CPU11は、検出処理関連テーブルによる処理のサブルーチンプログラムを終了し、メイン処理プログラムに戻る。
以上のように、実施有無関連テーブルのテーブル値が更新された場合、更新された検出処理と関連のある検出処理のテーブル値も更新されるので、実施する異常検出処理を減らすことができ、さらに処理負荷を軽減することが可能となる。
以下、この実施例でのエンジン制御ECU1の動作を車両の状況も含めて詳しく説明する。
図15は車両状況、すなわち、エンジン水温、アイドル状態、燃料F/B中等の状態を示す時間経過図であり、図の時点t1でイグニッションスイッチがオンとなり、時点t2で水温センサの判定が完了し、水温センサ断線検出が正常と判定される。また、時点t3でエンジンが非アイドル状態からアイドル状態に切り替わり、時点t4で車速40km/hの一定走行で30分経過したものとする。
図15は車両状況、すなわち、エンジン水温、アイドル状態、燃料F/B中等の状態を示す時間経過図であり、図の時点t1でイグニッションスイッチがオンとなり、時点t2で水温センサの判定が完了し、水温センサ断線検出が正常と判定される。また、時点t3でエンジンが非アイドル状態からアイドル状態に切り替わり、時点t4で車速40km/hの一定走行で30分経過したものとする。
図15に示すように、時点t1〜t2の区間では、エンジン水温高:×、アイドル状態:×、非アイドル状態:○、燃料系F/B中:×であるので、図12のフローチャートのステップ902の「異常実施有無判別検出処理」により「ISC異常検出」処理が削除されるので、異常検出実施対象テーブルは図16に示すようになり、ステップ903の異常検出処理では、「失火異常検出」、「燃料系異常検出」、「水温センサ断線検出」の検出処理が行われる。
また、図15の時点t2〜t3の区間では、水温センサ判定が完了しており、「水温センサ断線検出」の正常判定フラグがRAM13に記憶されているので、図12のフローチャートのステップ906に示す実施有無関連テーブルの更新処理が実行されることにより、RAM13に記憶されている実施有無関連テーブルは、図17に示すように、「水温センサ断線検出」の列が全て“×”(非実施)に更新される。
これにより、実施有無関連テーブルが初期化されるまで、以降の異常検出処理では「水温センサ断線検出」が実行されないので、処理負荷を軽減することが可能となる。
これにより、実施有無関連テーブルが初期化されるまで、以降の異常検出処理では「水温センサ断線検出」が実行されないので、処理負荷を軽減することが可能となる。
さらに、ステップ907の検出処理関連テーブルによる処理が実行されると、「水温センサ断線検出」のテーブル値が“×”(非実施)に更新されたことが判定されるので、図14の検出処理関連テーブルに基づき、図18に示すように、「失火異常検出」のテーブル値も“×”(非実施)に更新される。
そして、車両状態がエンジン水温高:×、アイドル状態:×、非アイドル状態:○、燃料系F/B中:×となっているので、図12のフローチャートのステップ902の「異常実施有無判別検出処理」により「失火異常検出」、「ISC異常検出」、「水温センサ断線検出」処理が削除され、異常検出実施対象テーブルは図19に示すようになり、ステップ903の異常検出処理では、「燃料系異常検出」のみの処理が行われる。
このように、実施有無関連テーブルが初期化されるまで、以降の異常検出処理では、「失火異常検出」、「ISC異常検出」、「水温センサ断線検出」の処理が実行されないので、処理負荷を軽減することが可能となる。
このように、実施有無関連テーブルが初期化されるまで、以降の異常検出処理では、「失火異常検出」、「ISC異常検出」、「水温センサ断線検出」の処理が実行されないので、処理負荷を軽減することが可能となる。
一方、図15の時点t3で、車両が非アイドル状態からアイドル状態に切り替わり、これに伴い、車両状態はエンジン水温高:×、アイドル状態:○、非アイドル状態:×、燃料系F/B中:×となり、図12のフローチャートのステップ902の「異常実施有無判別検出処理」により「失火異常検出」、「水温センサ断線検出」処理が削除されるので、異常検出実施対象テーブルは図20に示すようになり、ステップ904の異常検出処理では、「燃料系異常検出」、「ISC異常検出」の検出処理が行われる。
そして、図15の時点t4以降の区間では、車両が車速40km/hの一定走行を30分行ったことが判定されるので、図12のフローチャートのステップ905の関連テーブル初期化周期変更処理により、実施有無関連テーブルの初期化周期が65msから128msと長くなる。
実施有無関連テーブルは、以上のようにして更新あるいは初期化されるので、例えば、水温センサ断線検出処理は、t1〜t2の区間では16ms、t2〜t4の区間では65ms、t4以降の区間では128msの周期で起動されることとなる。
実施有無関連テーブルは、以上のようにして更新あるいは初期化されるので、例えば、水温センサ断線検出処理は、t1〜t2の区間では16ms、t2〜t4の区間では65ms、t4以降の区間では128msの周期で起動されることとなる。
以上の実施例では、図12のフローチャートのステップ906の実施有無関連テーブル更新処理で異常検出の条件成立フラグを使用して実施有無関連テーブルのテーブル値を“×”(非実施)に更新したが、異常継続時間が最も異常検出閾値に近いもののテーブル値を“○”(実施)に更新することもでき、以下、異常継続時間を使用して実施有無関連テーブルのテーブル値を更新する実施例の作用について、図21のフローチャートにより説明する。
図21に示すフローチャートの実施有無関連テーブル更新処理のサブルーチンプログラムを開始すると、CPU11は、t_newの値を初期値、例えば、20秒等の大きな値に設定してRAM13に記憶するとともに、pの値にダミー値として任意の数値を設定してRAM13に記憶する(ステップ1101)。
次に、CPU11は、RAM13に記憶されている実施有無関連テーブルから1列読み出した(ステップ1102)後、読み出した列の異常検出処理の異常継続時間カウンタの値とその処理の異常検出閾値(スレッシュ)との差をt_oldとしてRAM13に記憶する(ステップ1103)。
次に、CPU11は、RAM13に記憶されている実施有無関連テーブルから1列読み出した(ステップ1102)後、読み出した列の異常検出処理の異常継続時間カウンタの値とその処理の異常検出閾値(スレッシュ)との差をt_oldとしてRAM13に記憶する(ステップ1103)。
次に、CPU11は、t_newの値がt_old の値より大きいか否かを判定し(ステップ1104)、t_newの値がt_old の値より大きいと判定した場合、t_oldの値を
t_newの値と置き換えてRAM13に記憶した(ステップ1105)後、pの値を読み出した検出処理の列番号と置き換えてRAM13に記憶する(ステップ1106)。
t_newの値と置き換えてRAM13に記憶した(ステップ1105)後、pの値を読み出した検出処理の列番号と置き換えてRAM13に記憶する(ステップ1106)。
ステップ1104でt_newの値がt_old の値より小さいと判定した場合、または、ステップ1106でpの値を置き換えた後、CPU11は、読み出した列が実施有無関連テーブルの最終列か否かを判定し(ステップ1107)、最終列でないと判定した場合、ステップ1102に戻って次の列を読み出し、再び、読み出した列の異常検出処理の異常継続時間カウンタの値とその処理の異常検出閾値との差をt_oldとしてRAM13に記憶する(ステップ1103)。
一方、ステップ1107で読み出した列が実施有無関連テーブルの最終列であると判定した場合、CPU11は、関連テーブルのp列のテーブル値を全て“○”(実施)に更新した(ステップ1108)後、テーブルの更新処理のサブルーチンプログラムを終了する。
一方、ステップ1107で読み出した列が実施有無関連テーブルの最終列であると判定した場合、CPU11は、関連テーブルのp列のテーブル値を全て“○”(実施)に更新した(ステップ1108)後、テーブルの更新処理のサブルーチンプログラムを終了する。
以上のように、異常継続時間とその処理の異常検出閾値との差が最も小さい検出処理のテーブル値が“○”(実施)に変更されるので、早期に実施すべき検出処理を実施するように実施有無関連テーブルのテーブル値を変更することができる。
さらに、上記の更新処理で更新された異常検出処理と関連のある異常検出処理のテーブル値を更新するようにすることもでき、以下、更新処理でテーブル値が更新された検出処理と関連のある検出処理のテーブル値を更新する場合の作用について、図22のフローチャートにより説明する。
図22のフローチャートの検出処理関連テーブルによる処理のサブルーチンプログラムを開始すると、CPU11は、まず、RAM13に記憶されている実施有無関連テーブルから1列読み出した(ステップ1201)後、その列の検出処理が更新前のテーブルと比較してテーブル値が“○”(実施)に更新されたか否かを判定する(ステップ1202)。
テーブル値が“○”(実施)に更新されたと判定した場合、CPU11は、図14の検出処理関連テーブルに基づき、更新処理された検出処理と関連ある検出処理のテーブル値を全て“○”(実施)に更新した(ステップ1203)後、その列の検出処理及び関連ある検出処理を除いたその他の検出処理のテーブル値を全て“×”(非実施)に更新する(ステップ1204)。
ステップ1202でテーブル値が“○”(実施)に更新されていないと判定した場合、または、ステップ1204で“×”(非実施)に更新した後、CPU11は、読み出した列が実施有無関連テーブルの最終列か否かを判定し(ステップ1205)、最終列でないと判定した場合は、ステップ1201に戻って次の列を読み出し、再びその列の検出処理が更新前のテーブルと比較してテーブル値が“×”(非実施)から“○”(実施)に更新されたか否かを判定する(ステップ1202)。
一方、ステップ1205で読み出した列が実施有無関連テーブルの最終列であると判定した場合、CPU11は、検出処理関連テーブルによる処理のサブルーチンプログラムを終了する。
一方、ステップ1205で読み出した列が実施有無関連テーブルの最終列であると判定した場合、CPU11は、検出処理関連テーブルによる処理のサブルーチンプログラムを終了する。
以上のように、実施有無関連テーブルのテーブル値が“○”(実施)に更新された場合、その検出処理と関連のある検出処理のテーブル値が“○”(実施)に変更され、その他の検出処理のテーブル値が“×”(非実施)に変更されるので、実施する必要性の大きい検出処理のみが実施されるように実施有無関連テーブルを変更することができる。
なお、上記の実施例では、本発明の車両用電子制御装置をエンジン制御ECUに適用した例について説明したが、その他のECUにも本発明を適用することが可能である。
1 エンジン制御ECU
11 CPU
12 ROM
13 RAM
14 入力回路
15 出力回路
16 バス
2 故障診断テスタ
21 水温センサ
22 A/Fセンサ
23 ノックセンサ
24 回転数センサ
31 IGT
32 インジェクター
33 警告ランプ
11 CPU
12 ROM
13 RAM
14 入力回路
15 出力回路
16 バス
2 故障診断テスタ
21 水温センサ
22 A/Fセンサ
23 ノックセンサ
24 回転数センサ
31 IGT
32 インジェクター
33 警告ランプ
Claims (10)
- 車両の種々の異常を検出する車両の異常検出方法であって、
設定された車両条件が成立するか否かを判定し、車両条件が成立した場合、車両条件と種々の異常検出処理の実施有無との関係が設定された実施有無関連テーブルに基づいて、当該車両条件で非実施に設定されている異常検出処理を実行しないことを特徴とする車両の異常検出方法。 - 異常検出処理機能を実行する制御手段を備えた車両用電子制御装置であって、
車両条件と種々の異常検出処理の実施有無との関係が設定された実施有無関連テーブルを有し、上記制御手段が、上記実施有無関連テーブルに設定された車両条件が成立するか否かを判定し、車両条件が成立した場合、上記実施有無関連テーブルにおいて当該車両条件で非実施に設定されている異常検出処理を実行しないことを特徴とする車両用電子制御装置。 - 請求項2に記載された車両用電子制御装置において、
上記実施有無関連テーブルが当該制御装置の製造時に、機種毎に予め設定されることを特徴とする車両用電子制御装置。 - 請求項2に記載された車両用電子制御装置において、
上記実施有無関連テーブルが外部ツールにより設定されることを特徴とする車両用電子制御装置。 - 請求項2に記載された車両用電子制御装置において、
上記制御手段が、異常検出処理毎の判定済みフラグに連動して上記実施有無関連テーブルのテーブル値を更新することを特徴とする車両用電子制御装置。 - 請求項5に記載された車両用電子制御装置において、
各異常検出処理の関係が設定された検出処理関連テーブルを有し、上記制御手段が、上記検出処理関連テーブルに基づいて、テーブル値が更新された検出処理に関連する検出処理のテーブル値も更新することを特徴とする車両用電子制御装置。 - 請求項2に記載された車両用電子制御装置において、
上記制御手段が、異常継続時間が最も異常検出閾値に近い異常検出処理のテーブル値を実施に変更することにより上記実施有無関連テーブルを更新することを特徴とする車両用電子制御装置。 - 請求項7に記載された車両用電子制御装置において、
各異常検出処理の関係が設定された検出処理関連テーブルを有し、上記制御手段が、上記検出処理関連テーブルに基づき、テーブル値が実施に更新された処理に関連する検出処理のテーブル値を実施に変更し、それ以外の処理を非実施に変更することを特徴とする車両用電子制御装置。 - 請求項5〜請求項8のいずれかに記載された車両用電子制御装置において、
上記制御手段が、一定周期にて上記実施有無関連テーブルを初期化することを特徴とする車両用電子制御装置。 - 請求項9に記載された車両用電子制御装置において、
上記制御手段が、定常走行での一定時間経過により、上記実施有無関連テーブルの初期化周期を長くすることを特徴とする車両用電子制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005173546A JP2006348786A (ja) | 2005-06-14 | 2005-06-14 | 車両の異常検出方法及び車両用電子制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005173546A JP2006348786A (ja) | 2005-06-14 | 2005-06-14 | 車両の異常検出方法及び車両用電子制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006348786A true JP2006348786A (ja) | 2006-12-28 |
Family
ID=37644905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005173546A Withdrawn JP2006348786A (ja) | 2005-06-14 | 2005-06-14 | 車両の異常検出方法及び車両用電子制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006348786A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008267266A (ja) * | 2007-04-19 | 2008-11-06 | Fujitsu Ten Ltd | エコランシステム、制御プログラム及びエコラン状態報知装置 |
-
2005
- 2005-06-14 JP JP2005173546A patent/JP2006348786A/ja not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008267266A (ja) * | 2007-04-19 | 2008-11-06 | Fujitsu Ten Ltd | エコランシステム、制御プログラム及びエコラン状態報知装置 |
WO2008136152A1 (ja) * | 2007-04-19 | 2008-11-13 | Fujitsu Ten Limited | エコランシステム、制御プログラム及びエコラン状態報知装置 |
US8417435B2 (en) | 2007-04-19 | 2013-04-09 | Fujitsu Ten Limited | Eco-run system, computer readable medium and eco-run state informing apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4803168B2 (ja) | 車両用情報記憶装置 | |
JP4491967B2 (ja) | 自己診断機能を備えた車両用制御装置及び記録媒体 | |
JP4420944B2 (ja) | 車載エンジン制御装置 | |
US7155326B2 (en) | Electric control unit | |
JP4835755B2 (ja) | 車両用制御装置 | |
US5095438A (en) | Engine controller with low voltage reset | |
US6401163B1 (en) | Apparatus and method for rewriting data from volatile memory to nonvolatile memory | |
JPS61261145A (ja) | 車両用故障診断装置 | |
JP3879368B2 (ja) | エンジンシステムの異常判定装置 | |
JP4552982B2 (ja) | 電子制御装置 | |
US6553289B2 (en) | Control apparatus having object-oriented self-diagnosis program | |
US20150178144A1 (en) | Electronic control unit | |
JP4008197B2 (ja) | ダイアグノーシス機能を有する車両用制御装置及び記録媒体 | |
JP2002041367A (ja) | 車両制御装置 | |
JP2008196441A (ja) | 車両の制御装置 | |
JP2006348786A (ja) | 車両の異常検出方法及び車両用電子制御装置 | |
JP2003222053A (ja) | 車両用電子制御装置 | |
JP2013151220A (ja) | 車載制御装置 | |
JPH11141391A (ja) | 自動車用制御装置 | |
JP3463322B2 (ja) | 車両用制御装置のメモリチェック装置 | |
JP2007198290A (ja) | 車両の異常診断装置 | |
JP2001182607A (ja) | 車両制御装置 | |
JP2002132533A (ja) | 自己診断機能を備えた車両用制御装置及び記録媒体 | |
JPH07211087A (ja) | 車載用電子制御装置 | |
JP2004156590A (ja) | 車両制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Effective date: 20080609 Free format text: JAPANESE INTERMEDIATE CODE: A621 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20090128 |