JP4007203B2 - 電子制御装置 - Google Patents
電子制御装置 Download PDFInfo
- Publication number
- JP4007203B2 JP4007203B2 JP2003015324A JP2003015324A JP4007203B2 JP 4007203 B2 JP4007203 B2 JP 4007203B2 JP 2003015324 A JP2003015324 A JP 2003015324A JP 2003015324 A JP2003015324 A JP 2003015324A JP 4007203 B2 JP4007203 B2 JP 4007203B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- processing unit
- diagnostic
- normal
- diagnosis
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/24—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
- F02D41/26—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
- F02D41/266—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor the computer being backed-up or assisted by another circuit, e.g. analogue
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/0025—Controlling engines characterised by use of non-liquid fuels, pluralities of fuels, or non-fuel substances added to the combustible mixtures
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0259—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
- G05B23/0267—Fault communication, e.g. human machine interface [HMI]
- G05B23/027—Alarm generation, e.g. communication protocol; Forms of alarm
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B9/00—Safety arrangements
- G05B9/02—Safety arrangements electric
- G05B9/03—Safety arrangements electric with multiple-channel loop, i.e. redundant control systems
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D2400/00—Control systems adapted for specific engine types; Special features of engine control systems not otherwise provided for; Power supply, connectors or cabling for engine control systems
- F02D2400/08—Redundant elements, e.g. two sensors for measuring the same parameter
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24044—Second controller monitors diagnostics system of first controller
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
- Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Control Of Throttle Valves Provided In The Intake System Or In The Exhaust System (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Description
【発明の属する技術分野】
本発明は、2つのコンピュータを備える電子制御装置において、一方のコンピュータの診断機能が正常に作動しているかを他方のコンピュータによって監視する電子制御装置に関する。
【0002】
【従来の技術】
従来、2つのコンピュータを備える電子制御装置において、それらのコンピュータ間で異常の発生を監視するものが知られている。例えば、特許文献1に記載された電子制御装置は、エンジン制御マイクロコンピュータ(マイコン)とスロットル制御マイコンとを備える。そして、エンジン制御マイコン内に、スロットル制御マイコンの異常を監視するための監視プログラムが設けられる。監視プログラムは、各種のエンジン制御を行なうためのベースプログラムとは独立して、周期的に割込み処理される割込みプログラムである。そして、この監視プログラムにおいて、エンジン制御マイコンのデータを用いて演算した演算値(例えば、燃料噴射量)と、スロットル制御マイコンから送信されたデータを用いて同じ演算によって算出した演算値とを比較する。この比較処理において、両演算値が一致した場合には、スロットル制御マイコンは正常であると判定する。
【0003】
エンジン制御マイコンに対しては、2つのウオッチドックタイマーが設けられる。1つはエンジン制御マイコンが正常にベースプログラムを実行しているかを監視するものであり、もう1つは、エンジン制御マイコンが、正常に監視プログラムを実行しているかを監視するものである。
【0004】
そして、監視プログラムが実行されると、監視プログラムを構成する複数のサブルーチン等の処理が所定の順序で実行されているか否かが判定され、所定の順序で実行されていない場合には、ウオッチドックタイマーへのウオッチドックパルスの出力を停止する。この場合、エンジン制御マイコンが、スロットル制御マイコンの動作を監視できない可能性があるため、監視プログラムの実行を監視するウオッチドックタイマーは、スロットルバルブを駆動するためのモータの電源をカットする。
【0005】
【特許文献1】
特開平11−294252号公報
【0006】
【発明が解決しようとする課題】
しかしながら、上述した従来技術によれば、ウオッチドックタイマーへウオッチドックパルスが出力されている限り、監視プログラムは正常に機能していると判定されてしまう。換言すれば、上述した従来技術は、エンジン制御マイコンが実行すべき診断処理(ダイアグノーシス)が確実に実行されているか否かを直接的に監視することはできない。このため、実際には診断処理が行なわれること無く、ウオッチドックパルスが出力されるようなモードで、監視プログラムに異常が発生した場合には、上述した従来技術では、そのような異常を検知することができない。
【0007】
特に、車両のエンジンやスロットルバルブを制御する電子制御装置においては、制御上、重要なパラメータが正しいか否かをチェックしたり、ROMに記憶されているデータやプログラムが正しいかをチェックする等複数の診断処理が行なわれる。このような複数の診断処理が確実に実行されているかをチェックすることは、適切な制御を行なう上で非常に重要である。
【0008】
本発明は、かかる従来の問題点を鑑みてなされたもので、2つのコンピュータを備える電子制御装置において、一方のコンピュータにおける複数の診断処理が確実に実行されているかを他方のコンピュータによって直接的に監視することが可能な電子制御装置を提供することを第1の目的とする。
【0009】
また、一方のコンピュータにおける診断処理を監視するとともに、その診断処理自体の信頼性も併せて他方のコンピュータによって監視することが可能な電子制御装置を提供することを第2の目的とする。
【0010】
【課題を解決するための手段】
上記第1の目的を達成するために、請求項1に記載の電子制御装置は、第1のコンピュータと第2のコンピュータとを備え、
第1のコンピュータは、
自身の動作が正常か否かを判断するために、少なくとも2種類の異なる演算を行なって第1及び第2の演算値を算出し、それぞれに対応する予め記憶された第1及び第2の正常値と対比して、第1の演算値と第1の正常値との関係及び第2の演算値と第2の正常値との関係が正常であるか否かを診断する第1及び第2の診断処理を実施する第1の診断処理部と、
第1の診断処理部の第1及び第2の診断処理に関する情報を第2のコンピュータに送信する送信部とを備え、
第2のコンピュータは、
第1及び第2の診断処理に関する情報を受信する受信部と、
受信部が受信する第1及び第2の診断処理に関する情報に基づいて、第1の診断処理部が正常に機能しているかを診断する第2の診断処理部とを備えることを特徴とする。
【0011】
上述したように、第1のコンピュータは、第1及び第2の診断処理に関する情報を送信部によって第2のコンピュータに送信する。第2のコンピュータは、第1及び第2の診断処理に関する情報を受信部によって受信し、それら第1及び第2の診断処理に関する情報に基づいて、第2の診断処理部が第1の診断処理部は正常に機能しているかを診断する。このように、請求項1に記載の電子制御装置では単なるウオッチドックパルスではなく、第1のコンピュータが第1及び第2の診断処理に関する情報を送信するため、第2のコンピュータは、それら第1及び第2の診断処理に関する情報に基づいて、確実に複数の診断処理が行なわれたことを直接的に監視することができる。
【0012】
請求項2に記載したように、送信部は、第1及び第2の診断処理に関する情報として、第1の診断処理部における第1及び第2の診断処理に用いられる第1及び第2の演算値と第1及び第2の正常値とを送信し、第2の診断処理部は、当該第1の演算値と第1の正常値及び第2の演算値と第2の正常値とを対比する第3及び第4の診断処理を実施することにより、第1の診断処理部における第1及び第2の演算値と第1及び第2の正常値との対比判定が正常であるか否かを判定することが好ましい。
【0013】
このように、第1及び第2の診断処理に関する情報として、第1及び第2の診断処理に用いられる第1及び第2の演算値と第1及び第2の正常値とを送信することにより、第1の診断処理部において第1及び第2の診断処理が実施されたことを直接的かつ確実に監視することができる。さらに、第2のコンピュータにおいて、第2の診断処理部が、受信した第1の演算値と第1の正常値及び第2の演算値と第2の正常値とを対比する第3及び第4の診断処理を実施することにより、第1の診断処理部における対比判定が正常であるか否かも確認することができる。
【0014】
請求項3に記載の電子制御装置は、第1の診断処理部が、第1の演算値と第1の正常値との対比判定及び第2の演算値と第2の正常値との対比判定をそれぞれ繰り返し行ない、送信部が、第1及び第2の診断処理に関する情報として、第1の診断処理部の第1及び第2の診断処理に用いられた最新の第1の演算値と第1の正常値、もしくは第2の演算値と第2の正常値を送信する。そして、第2のコンピュータの受信部が第1の演算値と第1の正常値を受信しない時間、もしくは第2の演算値と第2の正常値を受信しない時間が所定の異常判定時間以上となった場合、第2の診断処理部が、第1の診断処理部の第1もしくは第2の診断処理が停止していると判定する。これにより、第2の診断処理部において、第1の診断処理部による第1及び第2の診断処理の停止状態を検知することが可能になる。
【0015】
なお、請求項4に記載したように、送信部は、第1の演算値と第1の正常値、及び第2の演算値と第2の正常値を交互に送信することが好ましい。第1の診断処理と第2の診断処理との実行タイミングに依存して、一方のみが送信されることを防止するためである。このように、前回送信した演算値及び正常値の種類と異なる演算値及び正常値を優先的に送信すべきであるが、それらの演算値及び正常値が求められていない場合には、前回送信したのと同じ種類の演算値及び正常値を送信することが好ましい。
【0016】
次に、上述した第2の目的を達成するために、請求項5に記載の電子制御装置は、第1のコンピュータと第2のコンピュータとを備え、
第1のコンピュータは、
自身の動作が正常か否かを判断するために、所定の演算により算出した演算値と予め記憶されている正常値とを対比して、当該演算値と正常値との関係が正常であるか否かを診断する診断処理を実施する第1の診断処理部と、
第1の診断処理部の診断処理に用いられる演算値と正常値とを第2のコンピュータに送信する送信部とを備え、
第2のコンピュータは、
演算値と正常値とを受信する受信部と、
受信部が受信した演算値と正常値との対比判定を行なうことにより、第1の診断処理部が正常に機能しているかを診断する診断処理を実施する第2の診断処理部とを備えることを特徴とする。
【0017】
このように、第1の診断処理部における診断処理に用いた演算値と正常値とを第2のコンピュータに送信することにより、第2のコンピュータの第2の診断処理部は、実際に第1の診断処理部において診断処理がなされたか否かを直接的に確認することができる。さらに、第2の診断処理部においても、受信した演算値と正常値との対比判定を実施することにより、第1の診断処理部における対比判定が正常であるか否かも確認することができる。
【0018】
請求項6に記載したように、第1の診断処理部は繰り返し診断処理を行ない、送信部は、第1の診断処理部における診断処理に用いられる最新の演算値及び正常値を送信し、受信部が演算値及び正常値を受信しない時間が、所定の異常判定時間以上となった場合、第2の診断処理部は、第1の診断処理部の診断処理が停止していると判定することが好ましい。これにより、第2の診断処理部において、第1の診断処理部による診断処理の停止状態を検知することが可能になる。
【0019】
請求項7に記載したように、第2のコンピュータは、第2の診断処理部によって第1の診断処理部の診断処理が停止していると判定された場合と第1の診断処理部の対比判定が異常と判定された場合とで、異なる異常処理を行なう異常処理手段を備えることが好ましい。第1の診断処理部の診断処理が停止している場合には、第1のコンピュータにおける動作が正常か否かを第2のコンピュータで確認することはできないが、第1のコンピュータの動作は正常である場合もありえる。すなわち、第1の診断処理部の対比判定が異常である場合に比較して、第1の診断処理部の診断処理が停止している場合には、ある程度の動作が確保できるようにすることが好ましいのである。
【0020】
具体例としては、請求項8に記載したように、第1及び第2のコンピュータが、車両のエンジンのスロットルバルブ開度を制御するために用いられる場合、異常処理手段は、第2の診断処理部によって第1の診断処理部の診断処理が停止していると判定された場合には、所定の制限開度を上限として、スロットルバルブ開度の制御を継続させ、第1の診断処理部の対比判定が異常と判定された場合には、スロットルバルブ開度の制御を停止することが好ましい。これにより、単に第1の診断処理部の診断処理が停止している場合には、少なくとも車両のエンジンの駆動を確保することができる。
【0021】
【発明の実施の形態】
以下、本発明による電子制御装置の実施の形態について、図面に基づいて説明する。図1は、本実施形態による電子制御装置の全体の構成を示すブロック図である。なお、本実施形態による電子制御装置は、エンジン制御マイクロコンピュータ及びスロットル制御マイクロコンピュータを有する車両用の内燃機関の電子制御装置として適用されるものである。
【0022】
図1に示す様に、電子制御装置(以下ECUと記す)2は、エンジンの制御を行なうエンジン制御マイクロコンピュータ(以下、マイコン)4と、スロットルバルブ26の制御を行なうスロットル制御マイコン6を備えている。エンジン制御マイコン4は、エンジン回転数や冷却水温等のエンジン状態信号、アクセル開度信号、スロットルバルブ26のバルブ開度信号等を入力し、制御に必要な演算を行って、燃料噴射量や点火時期の調節を行なうために、インジェクタやイグナイタ等に制御信号を出力するものである。さらに、エンジン制御マイコン4は、上述した検出信号等に基づいてスロットルバルブ26の目標開度を算出し、スロットル制御マイコン6に与える。
【0023】
このエンジン制御マイコン4は、ウオッチドックパルス(WDC)をウオッチドックタイマー(WDT)8に出力することにより、WDT8にてその異常の発生が監視されている。そして、WDT8が、異常を検出した場合は、エンジン制御マイコン4に対してリセット信号を出力して、エンジン制御マイコン4をリセットする。
【0024】
また、エンジン制御マイコン4内には、スロットル制御マイコン6の異常を監視するために、図示しないウオッチドックタイマーが設けられている。スロットル制御マイコン6は、所定のプログラムに従って正常に処理を実行している場合には、周期的にウオッチドックパルスWDCをエンジン制御マイコン4に対して出力する。エンジン制御マイコン4にウオッチドックパルスWDCが所定時間以上入力されない場合には、エンジン制御マイコン4は、スロットル制御マイコン6にリセット信号を出力して、スロットル制御マイコン6をリセットする。
【0025】
エンジン制御マイコン4は、各種のエンジン制御を行なうためのベースプログラムとは独立して、自身の動作が正常か否かをチェックするための診断処理プログラム及びこの診断処理プログラムにおける診断処理データやスロットルバルブ26の目標開度に関する制御データ等をスロットル制御マイコン6に送信する通信処理プログラムを有する。これらの診断処理プログラム及び通信処理プログラムは、周期的に割込み処理される割込みプログラムであり、詳細については後述する。
【0026】
また、スロットル制御マイコン6は、エンジン制御マイコン4から送信された制御データ、さらにアクセル開度信号及びバルブ開度信号等に基づいてスロットルバルブ26を制御するためのベースプログラムに加え、エンジン制御マイコン4から送信された診断データに基づいて、エンジン制御マイコン4において診断処理が適切になされているか否かを監視する監視プログラム及び監視プログラムによって異常が発見された場合には、その異常の態様に応じたフェールセーフ処理を行なうフェールセーフプログラムを備えている。これらの監視プログラム及びフェールセーフプログラムも、周期的に割込み処理される割込みプログラムであり、その詳細については後述する。
【0027】
エンジン制御マイコン4もしくはスロットル制御マイコン6において、上述した診断処理プログラムもしくは監視プログラムにより、重大な異常が生じたと判定された場合には、それぞれのマイコン4,6からアンド回路12に異常を示すLOW信号が出力される。
【0028】
アンド回路12は、スロットルバルブ26のスロットルモータ20を駆動するモータ駆動回路22に図示しないバッテリからの電源電圧を供給するリレー24回路のオン、オフを切り換えるものである。すなわち、アンド回路12は、エンジン制御マイコン4及びスロットル制御マイコン6からの信号が共に正常を示すHIGH信号の場合にHIGH出力となり、どちらか一方が異常を示すLOW信号を出力した場合にLOW出力となる。
【0029】
アンド回路12の出力は、リレー回路24のリレーコイルと直列接続されたトランジスタ14のベースに入力されている。このため、アンド回路12にどちらか一方のマイコン4,6からLOW信号が出力された場合は、トランジスタ14がオフされ、リレーコイルへの通電が停止する。この結果、リレー回路24のリレー接点がオフし、モータ駆動回路22への電源供給が停止されるため、スロットルモータ20の駆動が停止する。この場合、スロットルバルブ26は図示しないスプリングにより全閉位置に固定され、スロットルバルブ26による吸入空気量の制御が禁止される。
【0030】
なお、スロットル制御マイコン6は、エンジン制御マイコン4から送信された制御データ、アクセル開度信号及びバルブ開度信号等に基づき、制御に必要な演算を行って、モータ駆動回路(Hブリッジ回路)22に制御信号を出力する。モータ駆動回路22は、スロットルモータ20に接続されており、このスロットルモータ20によりスロットルバルブ26を駆動し、吸入空気量を調節する。
【0031】
次に、本実施形態の電子制御装置2の制御処理を説明する。
【0032】
まず、エンジン制御マイコン4での処理を説明する。エンジン制御マイコン4は、ベースプログラムを実行することにより、例えば燃料噴射量の算出や、点火時期の算出等のエンジン制御処理を行なう。さらに、このベースプログラムによるエンジン制御処理とは独立して、ROMチェックルーチンやインストラクションチェックルーチン等の診断処理プログラム及びこの診断処理プログラムにおける診断処理データ等をスロットル制御マイコン6に送信する通信処理プログラムを実行する。以下、診断処理プログラム及び通信処理プログラムについて詳しく説明する。
【0033】
図2は、上述したROMチェックルーチンを示すフローチャートである。このROMチェックルーチンは、例えば8ms間隔で割込み処理によって実行される。まず、ステップS100において、ROMの記憶領域における所定範囲のチェックサムを計算し、その演算結果をROMCHKSUMというRAMに記憶する。このチェックサムを計算する範囲は、ROMチェックルーチンが実施される度に変更される。
【0034】
次にステップS110では、各計算範囲に対応して予め記憶されているROM判定値を読出し、ROMCHKSUMに記憶された演算結果と比較する。この比較処理において、演算結果とROM判定値とが一致しないと判定された場合には、ROMが異常であると考えられるので、ステップS120に進み、ROM異常処理を実施する。すなわち、このROM異常処理では、エンジン制御マイコン4からアンド回路12に対して異常である旨を示すLOW信号を出力して、リレー回路24をオフする。
【0035】
ステップS110にて演算結果とROM判定値とが一致したと判定されるか、もしくはステップS120にてROM異常処理が実施されると、ステップS130に進み、ROMチェックルーチンが実行されたことを示すため、フラグXROMJDGに1をセットする。
【0036】
図3は、上述したインストラクションチェックルーチンを示すフローチャートである。このインストラクションチェックルーチンは、例えば16ms間隔で割込み処理によって実行される。まず、ステップS140において、チェックしたい関数をコールして呼び出し、所定(固定)の入力値を代入した場合の演算結果を算出する。その算出した演算結果は、CALDATAというRAMに記憶される。
【0037】
次にステップS150では、関数及び入力値に対応して予め記憶されているインストラクション(インスト)判定値を読出し、CALDATAに記憶された演算結果と比較する。この比較処理において、演算結果がインスト判定値以下であれば、インストラクションチェックの結果は正常と考えられるため、ステップS170に進む。一方、演算結果が、インスト判定値よりも大きい場合には、インストラクションチェックの結果は異常となり、ステップS160に進み、異常処理を行なう。この異常処理においても、エンジン制御マイコン4からアンド回路12に対して異常である旨を示すLOW信号を出力して、リレー回路24をオフする。
【0038】
なお、上述した関数はエンジン制御処理やスロットル開度制御処理を実施する際に用いられるものである。そして、所定の入力値が代入されたとき、その関数による演算が正常に実施されたとみなしえる演算値もしくは範囲を予め設定しておく。そして、正常とみなしえる演算値もしくは範囲をインスト判定値として予め記憶しておくことにより、各関数による演算が正常に行なわれたか否かを判定することができる。
【0039】
その後、ステップS170に進み、インストラクションチェックルーチンが実行されたことを示すため、フラグXINSTJDGに1をセットする。
【0040】
このように、エンジン制御マイコン4は、複数の種類の診断処理ルーチンを実行することにより、エンジン制御処理やスロットル制御処理を適切になしえるか否かを常に確認する。そして、何らかの異常が発生し、制御が適切になしえない可能性がある場合には、スロットルバルブ26のスロットルモータ20を駆動するモータ駆動回路22への電源供給を停止する。
【0041】
次に、通信処理プログラムについて説明する。この通信処理プログラムのフローチャートを図4に示す。この通信処理ルーチンは、上述した診断処理プログラムとは独立して、例えば8ms間隔で割込み処理により実行される。
【0042】
まず、通信処理ルーチンによって送信される送信データのデータ構造について、図5に基づいて説明する。図5に示すように、送信データには、n個のデータ(DATA1、DATA2、……、DATAn)からなり、通信ナンバー、スロットルバルブの目標開度等を示す制御データ、診断処理データ、及び送信データのチェックサムが含まれる。
【0043】
診断処理データは、診断処理の種類(ROMチェック、インストラクションチェック)を示す送信ID,各チェックルーチンにおいて算出された演算結果である送信データ1、及びその演算結果と比較される判定値である送信データ2からなる。
【0044】
このような構造を有する送信データを作成し、送信するために、通信処理ルーチンでは以下のような処理を行なう。
【0045】
まずステップS200では、前回の処理によって送信した診断処理データの種類を判定する。具体的には、前回送信した診断処理データの送信IDがROMチェックに関する診断処理データを送信したことを示す1であるか否か判定する。このように、前回送信した診断処理データの種類を判定するのは、ROMチェック及びインストラクションチェック等の診断処理と通信処理のタイミングによって常に同じ種類の診断処理データを送信してしまうことを防止するためである。すなわち、本通信処理ルーチンでは、前回送信した診断処理データとは異なる診断処理データが優先的に送信される。ただし、異なる種類の診断処理データがまだ算出されていない場合には、同じ種類の診断処理データが算出されているか否かを判定し、算出されていれば、同じ種類の診断処理データを送信する。
【0046】
ステップS200において、前回送信した診断処理データの送信IDが1と判定された場合には、ステップS210にて、インストラクションチェックが実行されたか否かを、フラグXINSTJDGの値に基づいて判定する。このとき、フラグXINSTJDGの値が1であれば、インストラクションチェックが実行され、インストラクションチェックに関する診断処理データが算出済みである。このため、ステップS220に進んで、診断処理データとして、送信ID=2、送信データ1=CALDATA、送信データ2=インスト判定値とセットする。その後、ステップS230にて、フラグXINSTJDGの値を0にリセットして、同じ診断処理データが再度送信されることを防止する。
【0047】
ステップS210において、フラグXINSTJDGの値が1ではないと判定された場合、インストラクションチェックに関する診断処理データはまだ算出されていないので、ステップS240に進む。ステップS240では、ROMチェックが実行されたか否かを、フラグXROMJDGの値に基づいて判定する。このとき、フラグXROMJDGの値が1であれば、ROMチェックが実行され、ROMチェックに関する診断処理データが算出済みである。このため、ステップS250に進んで、診断処理データとして、送信ID=1、送信データ1=ROMCHKSUM、送信データ2=ROM判定値とセットする。その後、ステップS260にて、フラグXROMJDGの値を0にリセットして、同じ診断処理データが再度送信されることを防止する。
【0048】
ステップS240にて、フラグXROMJDGの値が1ではないと判定された場合には、まだ、前回の送信時からROMチェック及びインストラクションチェックとも実施されていないため、ステップS310に進む。ステップS310では、送信すべき診断処理データが無いことを示すため、送信ID=0、送信データ1=0、送信データ2=0とセットする。
【0049】
また、ステップS200において、前回送信した診断処理データの送信IDが1ではないと判定された場合には、ステップS270に進んで、フラグXROMJDGの値が1であるか否かを判定する。このとき、フラグXROMJDGの値が1であると、ROMチェックに関する診断処理データが算出されているので、ステップS250に進む。
【0050】
一方、ステップS270にてフラグXROMJDGの値が1ではないと判定された場合には、ステップS280にて、フラグXINSTJDGの値が1であるか否か判定する。このとき、フラグXINSTJDGの値が1であると、インストラクションに関する診断処理データが算出されているので、ステップS290に進む。なお、ステップS290及びステップS300の処理は、ステップS220及びステップS230の処理と同様であるため、説明を省略する。
【0051】
また、ステップS280にて、フラグXINSTJDGの値が1ではないと判定された場合には、ROMチェック及びインストラクションチェックに関する診断処理データは算出されていないので、ステップS310に進む。
【0052】
このようにして、診断処理データをセットした後に、ステップS320において、ベースプログラムによって算出されるスロットルバルブ26の目標開度等の制御データをセットし、図5に示す送信データを作成する。なお、通信ナンバー、制御データ、及び診断処理データがすべて確定した後に、それらのデータのチェックサムが計算され、そのチェックサムも送信データに付加される。そして、送信データの作成が完了すると、その送信データがエンジン制御マイコン4からスロットル制御マイコン6に送信される。
【0053】
この送信データは、ステップS200において、前回送信した診断処理データの送信IDの種類を判定するため、RAMに一時的に記憶される。
【0054】
次に、送信データを受信するスロットル制御マイコン6における演算処理について説明する。スロットル制御マイコン6は、スロットルバルブ26の開度等を制御するためのベースプログラムに加えて、送信データに基づいて、エンジン制御マイコン4が正常に診断処理を実施しているかを監視する監視プログラムと、エンジン制御マイコン4の診断処理が異常と判定された場合にフェールセーフ処理を実施するフェールセーフプログラムを有している。
【0055】
図6及び図7は、上述した監視プログラムの内容を示す第1及び第2の監視処理ルーチンである。図6に示す第1の監視処理ルーチンでは、まず、ステップS400において、送信データの受信処理を行なう。なお、この第1の監視処理ルーチンは、スロットル制御マイコン6が送信データを受信した時に実行される。また、図示してはいないが、受信された送信データはベースプログラムにも与えられる。そして、ベースプログラムでは、送信データに含まれる制御データ、アクセル開度信号及びスロットルバルブ開度信号に基づいて、モータ駆動回路22に対する制御信号を作成し、モータ駆動回路22へ出力する。
【0056】
ステップS410では、送信データのチェックサムを計算するとともに、送信データに付加されたチェックサムと一致するか否かを判定する。このとき、不一致と判定された場合には、送信データに何らかの異常が発生した可能性があるためそのまま本ルーチンを終了する。
【0057】
ステップS420では、送信データに含まれる診断処理データの送信IDが1であるか否かを判定する。このとき、送信IDが1と判定されると、ステップS430に進んで、ROM判定未処理時間カウンタCROMFに0をセットすることにより、カウンタCROMFのカウント値をクリアする。次に、ステップS440において、送信された診断処理データの送信データ1と送信データ2とを比較し、両者が一致するか否かを判定する。このとき、両者が不一致であると判定されると、ステップS450にてROMの異常判定が行なわれる。一方、ステップS440にて、送信データ1と送信データ2とが一致すると判定された場合には、ROMのチェック結果は正常であるため、そのまま本ルーチンを終了する。
【0058】
また、ステップS420において、送信された診断処理データの送信IDが1ではないと判定された場合には、ステップS460に進み、診断処理データの送信IDが2であるか否か判定される。このとき、送信IDが2と判定されると、ステップS470に進んで、インストラクション判定未処理時間カウンタCINSTFのカウント値をクリアする。次に、ステップS480において、送信された診断処理データの送信データ1と送信データ2とを比較し、送信データ1が送信データ2以下であるか否かを判定する。このとき、送信データ1が送信データ2よりも大きいと判定されると、ステップS490にてインストラクションチェックの異常判定が行なわれる。
【0059】
なお、ステップS460にて送信IDが2ではないと判定された場合、その送信IDは0とみなすことができる。この場合、送信データには診断処理データが含まれていないので、そのまま、本ルーチンを終了する。また、ステップS480にて、送信データ1が送信データ2以下であると判定された場合にも、インストラクションチェックの結果は正常であるため、そのまま本ルーチンを終了する。
【0060】
このように、本実施形態においては、スロットル制御マイコン6が、エンジン制御マイコン4の個々の診断処理に関するデータを受信するので、より直接的に、エンジン制御マイコン4にて個々の診断処理が適切に実施されているか否かを確認することができる。
【0061】
そして、スロットル制御マイコン6は、診断処理に関するデータとして、エンジン制御マイコン4における対比判定に用いられた演算値(送信データ1)及び判定値(送信データ2)を受信し、スロットル制御マイコン6においても、演算値と判定値との対比判定を行なう。これにより、エンジン制御マイコン4にて実施される診断処理における対比判定が正常であるか否かをも確認することができる。
【0062】
次に、図7に示す第2の監視処理ルーチンは、例えば16ms間隔で割込み処理によって実施されるものであり、まず、ステップS500において、ROM判定未処理時間カウンタCROMFをインクリメントする。そして、ステップS510にてこのROM判定未処理時間カウンタCROMFが所定値以上まで増加されたか否かを判定する。すなわち、ROM判定未処理時間カウンタCROMFは、図6に示す第1の監視処理ルーチンによって、ROMチェックに関する診断処理データを受信する毎にリセットされる。このため、ステップS510において、ROM判定未処理時間カウンタCROMFの値が所定値以上まで増加されたと判定されるのは、スロットル制御マイコン6が、所定時間以上、ROMチェックに関する診断処理データを受信できない場合である。そこで、ステップS510において、ROM判定未処理時間カウンタCROMFが所定値以上と判定された場合には、ステップS520に進み、ROM判定処理異常と判定する。
【0063】
次にステップS530では、インストラクション判定未処理時間カウンタCINSTFをインクリメントする。そして、ステップS540にてこのインストラクション判定未処理時間カウンタCINSTFが所定値以上まで増加されたか否かを判定する。このインストラクション判定未処理時間カウンタCINSTFも、図6に示す第1の監視処理ルーチンによって、インストラクションチェックに関する診断処理データを受信する毎にリセットされる。このため、ステップS540において、インストラクション判定未処理時間カウンタCINSTFの値が所定値以上まで増加されたと判定されるのは、スロットル制御マイコン6が、所定時間以上、インストラクションチェックに関する診断処理データを受信できない場合である。そこで、ステップS540において、インストラクション判定未処理時間カウンタCINSTFが所定値以上と判定された場合には、ステップS550に進み、インスト判定処理異常と判定する。
【0064】
図8は、スロットル制御マイコン6にて実施されるフェールセーフ処理の内容を示すフローチャートである。このフェールセーフルーチンは、例えば16msの周期で割込み処理される。
【0065】
まず、ステップS600では、図6のフローチャートによってROM異常判定がなされたか否かが判定される。また、ステップS610では、同じく図6のフローチャートによってインストラクション異常判定がなされたか否かが判定される。これらのステップS600とS610とのいずれかで異常判定がなされたと判定された場合、ステップS620に進んで、これらの異常に対応したフェールセーフ処理を行なう。すなわち、ROMやエンジン制御等に用いられる関数に異常が生じた場合には、正常なエンジン制御やスロットル制御を行ない得ないため、スロットルバルブ26の駆動を停止する。具体的には、スロットル制御マイコン6からアンド回路12に対して、異常を示すLOW信号を出力し、リレー回路24をオフする。さらに、インストルメントパネルに設けられた異常ランプの点灯を行なう。
【0066】
ステップS600及びステップS610において、ROM異常判定及びインストラクション異常判定がなされていないと判定された場合には、ステップS630に進む。ステップS630では、図7のフローチャートによりROM判定処理異常の判定がなされているか否かを判定する。また、ステップS640では、同じく図7のフローチャートによりインストラクション判定処理異常の判定がなされているか否かを判定する。これらのステップS630とS640とのいずれかで判定処理異常と判定された場合には、ステップS650に進んで、これらの異常に対応したフェールセーフ処理を行なう。すなわち、この場合のフェールセーフ処理として、スロットルバルブ26の最大開度を制限しつつ、異常ランプの点灯を行なう。
【0067】
ROM判定処理異常もしくはインストラクション判定処理異常と判定された場合、エンジン制御マイコン4では、ROMチェックルーチンもしくはインストラクションチェックルーチンが適切に処理されていない可能性がある。このため、スロットルバルブ26を全閉から全開までの範囲に渡って制御するのではなく、所定開度を上限とした最大開度制限制御を行なうのである。この最大開度制限制御では、算出されたスロットルバルブ26の目標開度が所定上限開度を超えている場合には、所定上限開度が目標開度とされる。
【0068】
ここで、エンジン制御マイコン4のROMチェックやインストラクションチェックに関する診断処理が停止している場合には、エンジン制御マイコン4の動作が正常か否かをスロットル制御マイコン6で確認することはできないが、単に診断処理のみが停止しているだけで、エンジン制御マイコン4の動作は正常である場合もありえる。このような理由から、診断処理がおこなわれていないだけで、スロットルバルブ26の駆動を完全に停止してしまうのではなく、最大開度制限制御を行なうことにより、少なくとも車両が走行できる範囲でスロットルバルブ26が動作できるようにするのである。
【0069】
ステップS630及びステップS640において、ROM判定処理異常及びインストラクション判定処理異常とは判定されなかった場合には、エンジン制御マイコン4は、正常に診断処理を実行し、かつその動作は正常であると考えられるため、ステップS660に進んで、通常のスロットル制御を実施する。また、異常ランプを消灯状態に維持する。
【0070】
このように、本実施形態による電子制御装置2によれば、従来技術のように、単なるウオッチドックパルスではなく、エンジン制御マイコン4が個々の診断処理に関する情報(送信ID、演算値及び判定値)を送信するため、スロットル制御マイコン6は、それらの診断処理に関する情報に基づいて、確実に個々の診断処理が行なわれたことを直接的に監視することができる。
【0071】
なお、本発明による電子制御装置は、上述した実施形態に制限されることなく、種々変形して実施することが可能である。
【0072】
例えば、上述した実施形態では、エンジン制御マイコン4が、診断処理として、ROMチェックルーチンとインストラクションチェックルーチンを実行する例について説明した。しかしながら、診断処理としては、ROMチェックルーチンやインストラクションチェックルーチンに限定されるものではなく、これらのチェックルーチンに置き換えて、もしくはこれらのチェックルーチンとともに各種のチェックルーチンを実行しても良い。
【0073】
その他のチェックルーチンの例を図9及び図10を用いて説明する。まず、図9(a),(b),(c)は、制御上重要なパラメータを算出し記憶するルーチン及びそのパラメータを記憶するRAMのチェック処理を実施するためのチェックルーチンを示すフローチャートである。
【0074】
エンジン制御マイコン4におけるRAMチェック処理では、制御上重要なパラメータを算出するとともにその反転値も併せて算出し、そのパラメータ及び判定値を同時にRAMに記憶する。そして、RAMのセルが壊れていないことを確認するため、反転値のさらに反転値を算出して、元のパラメータと比較する。特に、図9に示す例では、パラメータとして、スロットルバルブ26の目標開度とアクセル開度とを算出しており、比較処理においては加算値同士を比較する。このようにすれば、比較処理を1回で済ませることができる。なお、パラメータの数は2つに限られるものではなく、3つ以上の場合にもそれらの加算値を求めることで同様に処理できる。
【0075】
図9(a)のスロットル目標開度演算ルーチンでは、まずステップS700にて、マップや演算式を用いた所定の演算によってスロットルバルブの目標開度(DSLOT)を算出する。そして、ステップS710では、その目標開度(DSLOT)の反転値(DSLOTINV)を算出する。ステップS720では、算出した目標開度(DSLOT)及び目標開度の反転値(DSLOTINV)を同時にRAMに書き込む。
【0076】
また、図9(b)のアクセル開度演算ルーチンでは、ステップS730にて、アクセル開度信号に基づいてアクセル開度(ACC)を演算する。ステップS740では、そのアクセル開度の反転値(ACCINV)を算出する。そして、ステップS750において、算出したアクセル開度(ACC)及びアクセル開度の反転値(ACCINV)を同時にRAMに書き込む。
【0077】
なお、図9(a)、(b)の各ルーチンは、例えば8ms毎に周期的に実行される。これらの各ルーチンで行われるRAMへの書き込みが有効であるかを検証するため、別のタイミング(例えば16ms毎)で図9(c)に示すRAMチェックルーチンを実行する。
【0078】
このRAMチェックルーチンでは、まずステップS760において、それぞれRAMに書き込まれた目標開度(DSLOT)とアクセル開度(ACC)とを加算して、判定値1として保存する。ステップS770では、目標開度の反転値(DSLOTINV)の反転値及びアクセル開度の反転値(ACCINV)の反転値をそれぞれ算出して加算し、判定値2として保存する。そして、ステップS780において、判定値1と判定値2とが一致しているか否かを判定する。このとき、不一致と判定された場合には、RAMに異常が生じている可能性があるため、RAM異常判定処理として、リレー回路24をオフする。ステップS800では、RAM判定が実施されたことを示すため、フラグXRAMJDGに1をセットする。
【0079】
そして、通信処理において、他の診断処理と同様に、XRAMJDGが1となっているか確認し、1である場合には、RAMチェックに関する診断処理データが算出済みであると判定して、RAMチェックを示す送信ID,判定値1、及び判定値2を診断処理データとしてスロットル制御マイコン6に送信する。
【0080】
なお、エンジン制御マイコン4が3種類以上の診断処理データを送信する場合には、最も古い送信履歴を持つデータから優先的に送信されるようにすると良い。
【0081】
次に、図10に示す例について説明する。図10(a)はスロットルの目標開度を算出する目標開度演算ルーチンを複数のサブルーチンで構成した場合のフローチャートを示す。図10(b)、(c)、(d)は、各サブルーチンの内容を示すフローチャートであり、特に図10(d)はフローチェック異常検出処理を行なうフローチェックルーチンを示すフローチャートである。
【0082】
例えば8ms毎に処理されるスロットル目標開度演算ルーチンでは、まずステップS900において、フローチェック用のカウンタCFLOWを0にセットする。次にステップS910及びステップS920のサブルーチンを実行した後、ステップS930にて、フローチェック処理を実施する。つまり、この目標開度演算ルーチンは、各サブルーチンが順番通りに実行されないと、最終的に演算される目標開度が異常な値になるため、各サブルーチンの実行順序を監視するのである。
【0083】
図10(b)に示すサブルーチン(処理A)について説明する。このサブルーチン(処理A)においては、ステップS911において、カウンタCFLOWの値が0か否かを確認する。図10(a)のステップS900においてカウンタCFLOWが正常にコールされた場合には、カウンタCFLOWの値は0となる。このため、カウンタCFLOWの値が0と判定された場合には、正しい順序で処理が行なわれていると考えられる。この場合には、処理Aが実施されたことを示すために、ステップS913において、カウンタCFLOWの値を1に変更する。一方、カウンタCFLOWの値が0以外である場合には、ステップS915において、カウンタCFLOWにフロー異常であることを示す値$FFをセットする。そして、ステップS917において、処理Aとしての所定の制御処理を実施した後、本ルーチンを終了する。
【0084】
図10(c)に示すサブルーチン(処理B)も、図10(b)に示すサブルーチン(処理A)と同様であり、まず、カウンタCFLOWの値が1であるか確認する(ステップS921)。カウンタCFLOWの値が1である場合には、処理Bが実施されたことを示すために、カウンタCFLOWの値を2に変更する(ステップS923)。一方、カウンタCFLOWの値が1以外である場合には、カウンタCFLOWにフロー異常であることを示す値$FFをセットする(ステップS925)。そして、ステップS927において、処理Bとしての所定の制御処理を実施した後、本ルーチンを終了する。
【0085】
図10(d)に示すフローチェックルーチンでは、ステップS931において、カウンタCFLOWの値が2であるか否かを判定する。目標開度演算ルーチンにおけるサブルーチンが順番通りに実行された場合には、カウンタCFLOWの値は2となっているはずである。従って、カウンタCFLOWの値が2である場合には、異常処理を行なうことなく、ステップS935に進んで、フローチェックが実施されたことを示すために、フラグXFLOWJDGに1をセットする。
【0086】
一方、ステップS931において、カウンタCFLOWの値が2以外であると判定された場合には、フロー異常であるため、ステップS933に進んで、フロー異常処理として、リレー回路24をオフする。
【0087】
そして、エンジン制御マイコン4の通信処理において、他の診断処理と同様に、XFLOWJDGが1となっているか確認し、1である場合には、フローチェックに関する診断処理データが算出済みであると判定して、フローチェックを示す送信ID,カウンタCFLOW、及び判定値(2)を診断処理データとしてスロットル制御マイコン6に送信する。
【0088】
また、上述した実施形態においては、複数種類の診断処理を行い、それぞれの診断処理に関するデータをエンジン制御マイコン4からスロットル制御マイコン6へ送信する例について説明した。しかしながら、エンジン制御マイコン4は、少なくとも1種類の診断処理を行い、その診断処理に関するデータ(演算値及び判定値等)をスロットル制御マイコン6へ送信するものであっても良い。
【図面の簡単な説明】
【図1】実施形態による電子制御装置の全体の構成を示すブロック図である。
【図2】エンジン制御マイクロコンピュータにおいて実施されるROMチェックルーチンを示すフローチャートである。
【図3】エンジン制御マイクロコンピュータにおいて実施されるインストラクションチェックルーチンを示すフローチャートである。
【図4】エンジン制御マイクロコンピュータにおいて実施される通信処理ルーチンを示すフローチャートである。
【図5】通信処理ルーチンによって送信される送信データのデータ構造を示す説明図である。
【図6】スロットル制御マイクロコンピュータにおいて実施される第1の監視処理ルーチンを示すフローチャートである。
【図7】スロットル制御マイクロコンピュータにおいて実施される第2の監視処理ルーチンを示すフローチャートである。
【図8】スロットル制御マイコン6にて実施されるフェールセーフルーチンの内容を示すフローチャートである。
【図9】(a)はスロットルバルブの目標開度を演算するルーチンを示すフローチャートであり、(b)はアクセル開度を演算するルーチンを示すフローチャートであり、(c)はそれらの目標開度及びアクセル開度を記憶するRAMのチェック処理を実施するためのチェックルーチンを示すフローチャートである。
【図10】(a)はスロットルの目標開度を算出する目標開度演算ルーチンを複数のサブルーチンで構成した場合のフローチャートを示し、(b)、(c)及び(d)は、各サブルーチンの内容を示すフローチャートである。
【符号の説明】
2…電子制御装置(ECU)
4…エンジン制御マイクロコンピュータ
6…スロットル制御マイクロコンピュータ
8…ウオッチドックタイマー
12…AND回路
14…トランジスタ
20…スロットルモータ
22…モータ駆動回路
24…リレー回路
26…スロットルバルブ
Claims (8)
- 第1のコンピュータと第2のコンピュータとを備える電子制御装置であって、
前記第1のコンピュータは、
自身の動作が正常か否かを判断するために、少なくとも2種類の異なる演算を行なって第1及び第2の演算値を算出し、それぞれに対応する予め記憶された第1及び第2の正常値と対比して、第1の演算値と第1の正常値との関係及び第2の演算値と第2の正常値との関係が正常であるか否かを診断する第1及び第2の診断処理を実施する第1の診断処理部と、
前記第1の診断処理部の第1及び第2の診断処理に関する情報を前記第2のコンピュータに送信する送信部とを備え、
前記第2のコンピュータは、
前記第1及び第2の診断処理に関する情報を受信する受信部と、
前記受信部が受信する前記第1及び第2の診断処理に関する情報に基づいて、前記第1の診断処理部が正常に機能しているかを診断する第2の診断処理部とを備えることを特徴とする電子制御装置。 - 前記送信部は、前記第1及び第2の診断処理に関する情報として、前記第1の診断処理部における前記第1及び第2の診断処理に用いられる第1及び第2の演算値と第1及び第2の正常値とを送信し、
前記第2の診断処理部は、当該第1の演算値と第1の正常値及び第2の演算値と第2の正常値とを対比する第3及び第4の診断処理を実施することにより、前記第1の診断処理部における前記第1及び第2の演算値と第1及び第2の正常値との対比判定が正常であるか否かを判定することを特徴とする請求項1に記載の電子制御装置。 - 前記第1の診断処理部は、前記第1の演算値と第1の正常値との対比判定及び第2の演算値と第2の正常値との対比判定をそれぞれ繰り返し行い、前記送信部は、前記第1及び第2の診断処理に関する情報として、前記第1の診断処理部の第1及び第2の診断処理に用いられた最新の第1の演算値と第1の正常値、もしくは第2の演算値と第2の正常値を送信し、
前記受信部が前記第1の演算値と第1の正常値を受信しない時間、もしくは第2の演算値と第2の正常値を受信しない時間が所定の異常判定時間以上となった場合、前記第2の診断処理部は、前記第1の診断処理部の第1もしくは第2の診断処理が停止していると判定することを特徴とする請求項1又は請求項2に記載の電子制御装置。 - 前記送信部は、前記第1の演算値と第1の正常値、及び第2の演算値と第2の正常値を交互に送信することを特徴とする請求項3に記載の電子制御装置。
- 第1のコンピュータと第2のコンピュータとを備える電子制御装置であって、
前記第1のコンピュータは、
自身の動作が正常か否かを判断するために、所定の演算により算出した演算値と、予め記憶されている正常値とを対比して、当該演算値と正常値との関係が正常であるか否かを診断する診断処理を実施する第1の診断処理部と、
前記第1の診断処理部の診断処理に用いられる演算値と正常値とを前記第2のコンピュータに送信する送信部とを備え、
前記第2のコンピュータは、
前記演算値と正常値とを受信する受信部と、
前記受信部が受信した演算値と正常値との対比判定を行なうことにより、前記第1の診断処理部が正常に機能しているかを診断する診断処理を実施する第2の診断処理部とを備えることを特徴とする電子制御装置。 - 前記第1の診断処理部は繰り返し診断処理を行い、前記送信部は、前記第1の診断処理部における診断処理に用いられる最新の演算値及び正常値を送信し、
前記受信部が前記演算値及び正常値を受信しない時間が、所定の異常判定時間以上となった場合、前記第2の診断処理部は、前記第1の診断処理部の診断処理が停止していると判定することを特徴とする請求項5に記載の電子制御装置。 - 前記第2のコンピュータは、前記第2の診断処理部によって前記第1の診断処理部の診断処理が停止していると判定された場合と前記第1の診断処理部の対比判定が異常と判定された場合とで、異なる異常処理を行なう異常処理手段を備えることを特徴とする請求項3又は請求項6に記載の電子制御装置。
- 前記第1及び第2のコンピュータは、車両のエンジンのスロットルバルブ開度を制御するために用いられ、
前記異常処理手段は、前記第2の診断処理部によって前記第1の診断処理部の診断処理が停止していると判定された場合には、所定の制限開度を上限として、前記スロットルバルブ開度の制御を継続させ、前記第1の診断処理部の対比判定が異常と判定された場合には、前記スロットルバルブ開度の制御を停止することを特徴とする請求項7に記載の電子制御装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003015324A JP4007203B2 (ja) | 2003-01-23 | 2003-01-23 | 電子制御装置 |
EP04001185A EP1441264B1 (en) | 2003-01-23 | 2004-01-21 | Electronic control unit |
DE602004000497T DE602004000497T2 (de) | 2003-01-23 | 2004-01-21 | Elektronische Steuerungseinheit |
EP05004464A EP1538495A3 (en) | 2003-01-23 | 2004-01-21 | Electronic control unit |
US10/761,377 US7013241B2 (en) | 2003-01-23 | 2004-01-22 | Electronic control unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003015324A JP4007203B2 (ja) | 2003-01-23 | 2003-01-23 | 電子制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004225635A JP2004225635A (ja) | 2004-08-12 |
JP4007203B2 true JP4007203B2 (ja) | 2007-11-14 |
Family
ID=32588674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003015324A Expired - Fee Related JP4007203B2 (ja) | 2003-01-23 | 2003-01-23 | 電子制御装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7013241B2 (ja) |
EP (2) | EP1538495A3 (ja) |
JP (1) | JP4007203B2 (ja) |
DE (1) | DE602004000497T2 (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006125014A2 (en) * | 2005-05-17 | 2006-11-23 | United Technologies Corporation | Personal wearable microserver |
DE102006028695B4 (de) | 2005-06-23 | 2017-11-30 | Denso Corporation | Elektronisches Steuersystem mit Fehlfunktionsüberwachung |
JP4483720B2 (ja) | 2005-06-23 | 2010-06-16 | 株式会社デンソー | 電子制御装置 |
JP2007092747A (ja) * | 2005-08-30 | 2007-04-12 | Yamaha Motor Co Ltd | 自動二輪車用エンジン制御装置および自動二輪車 |
US20070220335A1 (en) * | 2006-02-28 | 2007-09-20 | Gollub Marc A | Hardware function isolating during slow mode initial program loading |
US7693625B2 (en) * | 2007-01-09 | 2010-04-06 | Gm Global Technology Operations, Inc. | State of health monitoring and reset methods and systems for on-board device driver integrated circuits |
ATE478367T1 (de) * | 2007-03-12 | 2010-09-15 | Secunet Security Networks Ag | Schutzeinrichtung für eine programmierbare datenverarbeitende einheit |
JP4525762B2 (ja) * | 2008-02-04 | 2010-08-18 | 株式会社デンソー | 車両用電子制御装置 |
EP2109083A1 (en) | 2008-04-11 | 2009-10-14 | Robert Bosch Gmbh | An electronic control unit and a method of performing diagnosis in a vehicle |
US8731749B2 (en) | 2011-01-20 | 2014-05-20 | GM Global Technology Operations LLC | System and method for operating a vehicle cruise control system |
US9233744B2 (en) | 2011-01-20 | 2016-01-12 | GM Global Technology Operations LLC | Engine control system and method for a marine vessel |
US8989928B2 (en) * | 2011-01-20 | 2015-03-24 | GM Global Technology Operations LLC | Watercraft throttle control systems and methods |
US9127604B2 (en) | 2011-08-23 | 2015-09-08 | Richard Stephen Davis | Control system and method for preventing stochastic pre-ignition in an engine |
US9097196B2 (en) | 2011-08-31 | 2015-08-04 | GM Global Technology Operations LLC | Stochastic pre-ignition detection systems and methods |
US8776737B2 (en) | 2012-01-06 | 2014-07-15 | GM Global Technology Operations LLC | Spark ignition to homogenous charge compression ignition transition control systems and methods |
US9121362B2 (en) | 2012-08-21 | 2015-09-01 | Brian E. Betz | Valvetrain fault indication systems and methods using knock sensing |
US9133775B2 (en) | 2012-08-21 | 2015-09-15 | Brian E. Betz | Valvetrain fault indication systems and methods using engine misfire |
DE102013201702C5 (de) * | 2013-02-01 | 2017-03-23 | Mtu Friedrichshafen Gmbh | Verfahren und Anordnung zur Steuerung einer Brennkraftmaschine |
US8973429B2 (en) | 2013-02-25 | 2015-03-10 | GM Global Technology Operations LLC | System and method for detecting stochastic pre-ignition |
JP6069104B2 (ja) * | 2013-05-31 | 2017-01-25 | 富士重工業株式会社 | 制御装置および制御装置の異常検出方法 |
DE102019201408B3 (de) * | 2019-02-04 | 2020-07-30 | Atlas Elektronik Gmbh | Elektronikmodul |
CN114483349A (zh) * | 2022-02-15 | 2022-05-13 | 深圳市星卡科技有限公司 | 一种远程汽车节气门匹配方法、装置、设备和介质 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5086499A (en) * | 1989-05-23 | 1992-02-04 | Aeg Westinghouse Transportation Systems, Inc. | Computer network for real time control with automatic fault identification and by-pass |
DE4136338A1 (de) * | 1991-11-05 | 1993-05-06 | Robert Bosch Gmbh, 7000 Stuttgart, De | Verfahren und vorrichtung zur fehlerbehandlung in elektronischen steuergeraeten |
JPH064353A (ja) * | 1992-06-17 | 1994-01-14 | Sumitomo Electric Ind Ltd | 複数のマイクロコンピュータの相互監視回路 |
US5654888A (en) * | 1992-06-20 | 1997-08-05 | Robert Bosch Gmbh | Control arrangement for vehicles |
US5550736A (en) * | 1993-04-27 | 1996-08-27 | Honeywell Inc. | Fail-operational fault tolerant flight critical computer architecture and monitoring method |
US5537590A (en) * | 1993-08-05 | 1996-07-16 | Amado; Armando | Apparatus for applying analysis rules to data sets in a relational database to generate a database of diagnostic records linked to the data sets |
US6408242B1 (en) * | 1997-12-11 | 2002-06-18 | Cummins, Inc. | Apparatus and method for diagnosing and controlling an ignition system of an internal combustion engine |
US6006156A (en) * | 1997-12-11 | 1999-12-21 | Cummins Engine Company, Inc. | Apparatus and method for diagnosing and controlling an ignition system of an internal combustion engine |
US6076504A (en) * | 1998-03-02 | 2000-06-20 | Cummins Engine Company, Inc. | Apparatus for diagnosing failures and fault conditions in a fuel system of an internal combustion engine |
JPH11294252A (ja) * | 1998-04-13 | 1999-10-26 | Denso Corp | 電子制御装置 |
JP3627545B2 (ja) | 1998-12-10 | 2005-03-09 | トヨタ自動車株式会社 | Cpuの異常検出方法 |
JP4253979B2 (ja) | 2000-01-21 | 2009-04-15 | 株式会社デンソー | 車載制御ユニットの検査方法 |
US6701232B2 (en) * | 2001-04-25 | 2004-03-02 | Fuji Jukogyo Kabushiki Kaisha | Vehicle management system |
JP3805648B2 (ja) | 2001-06-14 | 2006-08-02 | 三菱電機株式会社 | エンジン用吸気量制御装置 |
US20030109972A1 (en) * | 2001-12-12 | 2003-06-12 | Sht Co., Ltd. | Driver's vehicle diagnostic apparatus and early warning |
-
2003
- 2003-01-23 JP JP2003015324A patent/JP4007203B2/ja not_active Expired - Fee Related
-
2004
- 2004-01-21 EP EP05004464A patent/EP1538495A3/en not_active Withdrawn
- 2004-01-21 EP EP04001185A patent/EP1441264B1/en not_active Expired - Fee Related
- 2004-01-21 DE DE602004000497T patent/DE602004000497T2/de not_active Expired - Lifetime
- 2004-01-22 US US10/761,377 patent/US7013241B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7013241B2 (en) | 2006-03-14 |
EP1441264A1 (en) | 2004-07-28 |
JP2004225635A (ja) | 2004-08-12 |
US20040153286A1 (en) | 2004-08-05 |
DE602004000497D1 (de) | 2006-05-11 |
EP1441264B1 (en) | 2006-03-22 |
EP1538495A3 (en) | 2011-08-03 |
DE602004000497T2 (de) | 2006-10-26 |
EP1538495A2 (en) | 2005-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4007203B2 (ja) | 電子制御装置 | |
JP3816416B2 (ja) | 電子スロットル制御システムのフェイルセーフ装置 | |
US7251551B2 (en) | On-vehicle electronic control device | |
CN110594028B (zh) | 节气门自学习的控制方法、装置及电子控制单元 | |
JP5284943B2 (ja) | 制御装置、及び、制御方法 | |
US20060293831A1 (en) | Electronic control system with malfunction monitor | |
JPH11294252A (ja) | 電子制御装置 | |
JP4348950B2 (ja) | 電子制御装置 | |
JP2009293951A (ja) | 車両用故障診断装置、故障診断方法 | |
JP3835312B2 (ja) | 車両用電子制御装置 | |
JP2006291730A (ja) | 車両用診断装置 | |
JP4042466B2 (ja) | メモリ診断装置及び制御装置 | |
US6845315B2 (en) | Engine air-intake control device and engine air-intake control method | |
JP5662181B2 (ja) | 移動体の電子制御装置 | |
JP2011032903A (ja) | 車両の制御装置 | |
CN110872998A (zh) | 用于验证cvvd位置学习结果的方法以及用于验证cvvd位置学习结果的cvvd*** | |
JP2007138878A (ja) | 内燃機関の制御装置 | |
JP3923810B2 (ja) | 車両用電子制御装置 | |
JP6380141B2 (ja) | 電子制御装置 | |
JP2002089336A (ja) | 車両用電子制御システムの故障検出装置 | |
JP3804454B2 (ja) | 電子制御装置 | |
JP3775194B2 (ja) | 車両用電子制御システムの故障検出装置 | |
KR20220032232A (ko) | 냉시동 유해가스 저감 시스템 고장 진단 방법 및 차량 | |
JP2006195739A (ja) | 電子制御装置 | |
JPH04240997A (ja) | 車載電子装置の制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050413 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060721 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060725 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070220 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070807 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070820 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100907 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100907 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110907 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110907 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120907 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120907 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130907 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |