JP4442617B2 - 電子制御装置 - Google Patents

電子制御装置 Download PDF

Info

Publication number
JP4442617B2
JP4442617B2 JP2007036385A JP2007036385A JP4442617B2 JP 4442617 B2 JP4442617 B2 JP 4442617B2 JP 2007036385 A JP2007036385 A JP 2007036385A JP 2007036385 A JP2007036385 A JP 2007036385A JP 4442617 B2 JP4442617 B2 JP 4442617B2
Authority
JP
Japan
Prior art keywords
abnormality
code
electronic control
information
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.)
Active
Application number
JP2007036385A
Other languages
English (en)
Other versions
JP2008201160A (ja
Inventor
昌貞 近藤
孝吉 清水
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2007036385A priority Critical patent/JP4442617B2/ja
Priority to US12/068,537 priority patent/US8095257B2/en
Publication of JP2008201160A publication Critical patent/JP2008201160A/ja
Application granted granted Critical
Publication of JP4442617B2 publication Critical patent/JP4442617B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/22Safety or indicating devices for abnormal conditions
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/22Safety or indicating devices for abnormal conditions
    • F02D2041/228Warning displays
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/04Introducing corrections for particular operating conditions
    • F02D41/10Introducing corrections for particular operating conditions for acceleration
    • F02D41/107Introducing corrections for particular operating conditions for acceleration and deceleration
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/22Safety or indicating devices for abnormal conditions
    • F02D41/222Safety or indicating devices for abnormal conditions relating to the failure of sensors or parameter detection devices
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/2406Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using essentially read only memories
    • F02D41/2425Particular ways of programming the data
    • F02D41/2487Methods for rewriting
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Description

本発明は、自己診断機能(ダイアグノーシス機能)を有する電子制御装置に関する。
例えば特許文献1に示すように、車両においては、コンピュータシステムにおける異常箇所を検出する自己診断機能が備えられている。
自己診断機能とは、具体的には、例えばセンサ類等の動作状態を定期的にチェックして、故障時には、ユーザ等に故障を知らせるための警告灯を点灯したり、その故障内容が修理担当者等に分かるように、外部の診断装置からの要求に応じて故障の種類を示すダイアグコードをその診断装置に出力したりする、というような機能である。そして、ダイアグコードは、電子制御装置の例えばRAMに記憶されるようになっている。
ところで、RAMに記憶されたダイアグコードは、そのダイアグコードを消去するための指令が外部の診断装置から電子制御装置に入力された際や、そのRAMの動作用としてバッテリから常時供給されることになっている電圧が遮断された際(例えばバッテリが取り外された際)に消去される。
そこで、ダイアグコードを不揮発性のメモリ(例えばEEPROM)に記憶させることが、法規により新たに義務づけられることとなっている。
一方、新たな法規によれば、複数のトリップ期間(尚、「トリップ期間」とは、車両のドライビングサイクル(例えばイグニションスイッチのオンから次のイグニションスイッチのオンまで)の期間のことを指す)で連続して異常無しと判定されると、その複数のトリップ期間で異常無しと判定された項目(以下、正常復帰項目と記載する)についてのダイアグコードを、不揮発性のメモリから削除しても良いことになっている。
特許第3659017号公報
ところで、従来より、ダイアグコードは複数の項目に共通の場合もある。例えば、所定のセンサに異常が生じたことを表すダイアグコードが、そのセンサにおける断線・ショートを表すものであったり、そのセンサの検出値が異常であることを表すものであったりすることが考えられる。また、例えばエンジンにおいて失火が生じたことを表すダイアグコード(以下、失火ダイアグコードと記載する)が、各気筒に共通であることも考えられる。つまりこの場合、失火ダイアグコードによれば、失火が生じたことは分かるが、具体的にどの気筒において失火が生じたかまでは分からないこととなってしまう。
このため、ダイアグコードを単に不揮発性のメモリに記憶させることとすると、ダイアグコードが複数の項目に共通のものであり不揮発性メモリに同じダイアグコードが記憶されている場合、その同じダイアグコードのうち、どのダイアグコードが正常復帰項目に対応するものか区別がつかず、何れを消去して良いか判断できなくなってしまう。
本発明は、こうした問題に鑑みなされたもので、車両における故障を表すダイアグコードを不揮発性メモリに記憶させるようにした電子制御装置において、その不揮発性メモリに記憶されたダイアグコードのうち、所望のダイアグコードを個々に消去できるようにすることを目的とする。
上記目的を達成するためになされた請求項1に記載の発明は、データ書換可能な不揮発性メモリと、複数の監視項目のそれぞれについて異常の有無を検出する異常検出手段と、異常検出手段により異常が検出された場合に、その異常を示す異常コードを、少なくとも不揮発性メモリに記憶する異常記憶手段とを備え、車両における制御対象を制御する電子制御装置である。
そして、異常記憶手段は、異常検出手段により異常が検出された場合に、少なくとも不揮発性メモリに、異常が検出された監視項目を識別可能な識別情報を、異常コードと共に記憶するようになっている。
このような請求項1の電子制御装置によれば、不揮発性メモリには、異常コードと共に、監視項目を識別するための識別情報が記憶されるため、不揮発性メモリに記憶されている異常コードがどの監視項目の異常を表すものであるかを、識別情報から特定することができる。
よって、不揮発性メモリに記憶されている異常コードのうち、所望の異常コード、言い換えると、所望の監視項目についての異常を表す異常コードのみを確実に消去できるようになる。また、このため、メモリ資源を節約することができる。
ところで、新たに規定される法規によれば、不揮発性メモリに異常を示す異常コードを記憶させることが義務付けられると共に、不揮発性メモリに記憶された異常コードのうち、異常が解消されたものについては消去しても良いことになっている。法規への対応という観点からすると、本請求項1の電子制御装置によれば、消去しても良い異常コードを識別情報から特定できるため、消去してはいけない異常コードを消去してしまう、つまり法規に違反してしまう、ということを防止することができる。
特に、請求項の電子制御装置は、異常検出手段は、車両のドライビングサイクルの期間であるトリップ期間において、複数の監視項目のそれぞれについて異常の有無を検出するようになっており、その異常検出手段により異常が検出された場合、及びその異常検出手段により異常無しと判断された場合にカウント動作すると共に、そのカウント方向は前者の場合と後者の場合とで逆であり、さらに、カウント動作は1つのトリップ期間につき1回であるカウンタを、監視項目毎に備えている。
そして、カウンタを監視して、カウンタのうち、異常検出手段により異常が検出された監視項目用のカウンタが、異常無しと判断された場合のカウント方向(以下、正常カウント方向と言う)に所定数だけ連続してカウント動作したと判断すると、不揮発性メモリに記憶された異常コード及び識別情報のうち、正常カウント方向に所定数だけ連続してカウント動作したカウンタに対応する監視項目を表す異常コード及び識別情報を、その識別情報から特定して消去する消去手段を備えている。
新たな法規によれば、不揮発性メモリに記憶された異常コードを消去しても良い場合とは、具体的には異常が検出された監視項目について所定数のトリップ期間で連続して異常無しと判断された場合である。
請求項の電子制御装置によれば、上述したような消去手段を備えているため、まさに法規に適合させることができる。しかも、消去手段は、識別情報から、異常コードを特定するようになっているため、消去しても良い所望の異常コード及び識別情報を確実に消去することができるようになる。また、消去手段は、監視項目毎に備えられているカウンタを監視するという簡単な構成で、異常検出手段が異常を検出した監視項目についての異常コードを消去しても良いか否かを判断できる。つまり、消去手段は、消去しても良い所望の異常コード(及び識別情報)を簡単な構成で識別できる。
次に、請求項2の電子制御装置は、請求項1の電子制御装置において、複数の監視項目と識別情報との関係を記憶する対応情報記憶手段を備え、異常記憶手段は、対応情報記憶手段が記憶している情報を参照し、異常検出手段により異常が検出された監視項目を表す識別情報を取得して、その取得した識別情報を異常コードと共に不揮発性メモリに記憶するようになっている。
このような請求項2の電子制御装置では、異常記憶手段は、対応情報記憶手段から所望の監視項目に対応する識別情報を取得するため、例えば識別情報を計算により算出したりする場合と比較して、処理負荷を軽減することができる。
次に、請求項3の電子制御装置は、請求項2の電子制御装置において、異常記憶手段は、異常コードと識別情報との両方の情報を含んだ1つのコード(以下、変換異常コードと言う)を不揮発性メモリに記憶するようになっている。また、対応情報記憶手段は、異常コードと変換異常コードとの関係も記憶している。
そして、外部の診断ツールからの要求に応じて異常コードをその診断ツールに出力する異常コード出力手段を備えており、この異常コード出力手段は、対応情報記憶手段が記憶している情報を参照し、不揮発性メモリに記憶されている変換異常コードから異常コードを復元して外部の診断ツールに出力するようになっている。
この請求項3の電子制御装置のように、異常コードと識別情報との両方の情報を含んだ変換異常コードを不揮発性メモリに記憶させるようにすることで、例えば異常コードと識別情報とをそれぞれ対応付けて不揮発性メモリに記憶させる場合と比較して、メモリ資源を節約することができる。例えばデータ量を抑えられるコード形式で、異常コードと識別情報とを表すことができるようになるためである。
また、対応情報記憶手段が変換異常コードと異常コードとの関係も記憶しているため、異常コード出力手段は、異常コードを外部の診断ツールからの要求に応じて出力する際、変換異常コードから容易に異常コードを復元することができる。
このため、異常コードを外部の診断ツールに出力することで異常が特定されるようにする機能(いわゆる自己診断機能)を害すことなく、不揮発性メモリのメモリ資源を節約することができるという効果を得ることができる。
ここで、識別情報は、請求項4〜6のような情報とすることができる。
まず、請求項では、識別情報は、複数の監視項目それぞれに固有の情報であることを特徴としている。
これによれば、識別情報は重複することがないため、識別情報のみから監視項目を特定することができ、ひいては所望の監視項目についての異常を表す異常コードを特定することができるようになる。
次に、請求項では、異常コードとしては、複数の監視項目に共通のものがあり、識別情報は、異常コードが共通である複数の監視項目の集まりにおいて、その監視項目それぞれに固有の情報であることを特徴としている。
つまり、異常コードが共通である複数の監視項目の集まりにおいては、識別情報が重複することがない。
このように異常コードが同じグループ内で識別情報が重複しないようにさえしておけば、異常コードが異なるグループ同士の間では共通の識別情報を利用することができるため、識別情報の種類を抑えることができ有利である。そして、請求項の場合でも、異常コードと識別情報とから監視項目を特定することができるため、所望の監視項目についての異常を表す異常コードを特定することができる。
次に、請求項では、不揮発性メモリとは別に、異常コードが記憶されるメモリを備え、更に、複数の監視項目毎に、そのメモリにおける異常コードの格納アドレスが予め定められている。そして、識別情報は、監視項目毎に予め定められた異常コードの格納アドレスの情報であることを特徴としている。
メモリとしては、例えばRAM等がある。
このような請求項の場合でも、格納アドレスの情報から監視項目が一義的に特定でき、このため、所望の監視項目についての異常を表す異常コードを特定することができるようになる。
次に、請求項の電子制御装置は、データ書換可能な不揮発性メモリと、複数の監視項目のそれぞれについて異常の有無を検出する異常検出手段と、異常検出手段により異常が検出された場合に、その異常を示す異常コードを、少なくとも不揮発性メモリに記憶する異常記憶手段とを備え、車両における制御対象を制御する電子制御装置であって、異常記憶手段は、異常検出手段により異常が検出された場合に、少なくとも不揮発性メモリに、異常が検出された監視項目を識別可能な識別情報を、異常コードと共に記憶するようになっており、不揮発性メモリとは別に、異常コードが記憶されるメモリを備え、更に、複数の監視項目毎に、そのメモリにおける異常コードの格納アドレスが予め定められており、識別情報は、監視項目毎に予め定められた異常コードの格納アドレスの情報であることを特徴としている。このような請求項の電子制御装置では、格納アドレスの情報から監視項目が一義的に特定でき、このため、所望の監視項目についての異常を表す異常コードを特定することができるようになる。
次に、請求項の電子制御装置は、請求項1〜の電子制御装置において、不揮発性メモリは、当該電子制御装置と接続する外部の装置に設けられていることを特徴としている。
外部の装置としては、他の電子制御装置が考えられる。そして、不揮発性メモリとしては、他の電子制御装置(外部の電子制御装置)に備えられているものを利用しても良い。このような構成によれば、汎用性が広がり有利である。尚、不揮発性メモリ自体が電子制御装置の外部に設けられている構成でも良い。
以下に、本発明の実施形態を図面に基づき説明する。
〈全体構成〉
図1は、車両ネットワークシステムの構成例を表す図面である。尚、以下の説明において、電子制御装置をECUと記載する。
図1に示すように、本実施形態の車両ネットワークシステム1は、車両(自動車)に搭載されてエンジンを制御するエンジンECU4を備えている。このエンジンECU4は、車両内に配設されたCANバス2(CAN:Controller Area Network)を介して、ECU5と通信可能に接続されている。尚、本例では、ECU5は、車両のトランスミッションを制御するECUであり、以下、トランスミッションECU5と記載する。
また、診断ツール6は、例えば車両のディーラーや修理工場において、車両の点検整備を行う作業者によりCANバス2に接続され、エンジンECU4やトランスミッションECU5からデータの読み出しなどを行うものである。
そして、エンジンECU4やトランスミッションECU5は、車両に搭載されるバッテリ3から電圧の供給を受けて動作する。
次に、エンジンECU4の構成について説明する。
エンジンECU4は、当該エンジンECU4の動作を司るマイコン10と、バッテリ3からの電源電圧を受けて、マイコン10をはじめとする当該エンジンECU4内の各部に動作用の電圧(例えば5V)を供給する電源回路20と、CANバス2に接続された外部の装置(例えばトランスミッションECU5や診断ツール6)と通信を行うための通信回路30と、各種センサやスイッチなどからの信号の入力及びアクチュエータを駆動するための信号の出力を行う入出力回路40と、データの書き換えが可能な不揮発性のメモリとしてのEEPROM50とを備えている。
〈マイコンの構成〉
次に、マイコン10について説明する。
マイコン10は、所定のプログラムに従って各種処理を実行するCPU11と、CPU11が実行するプログラム等が記憶されるROM12と、CPU11の演算結果等の情報を記憶するためのRAM13と、電圧が供給される間データを保持可能なスタンバイRAM(以下、SRAMと記載する)14と、異常個数カウンタ15と、正常個数カウンタ16と、全体3トリップ復帰カウンタ17と、個別3トリップ復帰カウンタ18と、入出力回路(以下、I/Oと記載する)19とを備えていると共に、それらがバス9を介して相互に接続されている。尚、通信回路30、入出力回路40、及びEEPROM50は、I/O19を介してマイコン10と接続される。
ROM12には、コード変換テーブルTaと、CPU11が実行する異常診断プログラムPrとが格納されている。このコード変換テーブルTa及び異常診断プログラムPrについて、詳細は後述する。尚、ROM12には、実際には他にも種々のプログラム等が格納されているが、ここでは説明を省略する。
CPU11は、後述の異常診断プログラムPrに基づき車両の異常の有無を検出するようになっているが、ここで、異常個数カウンタ15は、異常箇所(異常項目)の個数をカウントするカウンタであり、正常個数カウンタは、異常から正常に復帰した項目の個数をカウントするカウンタである。
また、全体3トリップ復帰カウンタ17、及び個別3トリップ復帰カウンタ18について、詳細は後述するが、簡単に説明することとすると、まず、全体3トリップ復帰カウンタ17は、異常が検出された場合に3までアップカウントし、その後、異常個数≦正常個数であるとCPU11により判断される毎に、1づつダウンカウントする。また、個別3トリップ復帰カウンタ18は、異常が検出されると3までアップカウントし、その後、その異常が検出された項目について正常復帰したとCPU11により判断される毎に、1づつダウンカウントする。
また、このようなエンジンECU4では、マイコン10は、複数の項目について異常(故障)の有無を判断すると共に、異常を検出すると、その異常の種別を示す異常コード(いわゆるダイアグコードであり、以下そのように記載する)を、SRAM14に記憶する。このダイアグコードは、前述のように異常の種別を表すものであり、従来より、異なる項目同士で同じダイアグコードが割り当てられている場合もある。尚、以下の説明において、異常の有無の検出対象である項目をダイアグ項目と記載する。
そして、エンジンECU4は、診断ツール6からダイアグコードの読み出し要求を受けると、その時点でSRAM14に記憶しているダイアグコードを診断ツール6に出力する。エンジンECU4から診断ツール6に出力されたダイアグコードは、その診断ツール6の図示しない表示装置に表示される。これにより作業者は、異常が生じた機能や箇所を予想することができる。
一方、エンジンECU4は、診断ツール6からダイアグコードを消去するための消去指令を受けると、SRAM14に記憶しているダイアグコードを消去する。このような点に鑑み、「背景技術」の欄でも説明したように、ダイアグコードを不揮発性のメモリ(本実施形態のEEPROM50に対応)にも記憶させること、また、加えて、不揮発性メモリに記憶させた情報を一定条件下で消去可能とすること、を規定する法規が新たに設けられる。
ここで、図2を用いて、本実施形態において、前述のEEPROM50にどのような情報を記憶させるのかについて説明する。
〈コード変換テーブル〉
図2は、コード変換テーブルTaを表す図面である。コード変換テーブルTaは、EEPROM50に記憶させる情報を生成するためのものである。前述のように、ダイアグコードは異なるダイアグ項目に共通の場合があるが、図2のコード変換テーブルTaを用いて生成される情報は、ダイアグ項目毎に固有の情報であり、このためその生成された情報からダイアグ項目を特定できるようになっている。尚、以下、EEPROM50への記憶用にコード変換テーブルTaに基づき生成される情報を、ダイアグ特定情報と記載する。また、本実施形態では、EEPROM50は、ダイアグ特定情報を記憶するための記憶領域を4つ有している。つまり、EEPROM50は、4種類のダイアグ特定情報を記憶できるようになっている。尚、以下、その4つの記憶領域を、記憶領域(n)と記載する。ただし、n=0,1,2,3である。
図2に示すように、コード変換テーブルTaでは、ダイアグ項目毎に、従来から使用されているダイアグコードが対応付けられている。そして、例えば、ダイアグコード「P0116」は、ダイアグ項目2〜4に共通である。
そして、コード変換テーブルTaでは、ダイアグ項目毎に、インデックスと、静的IDと、RAMアドレスとがそれぞれ対応付けられている。このインデックス、静的ID、RAMアドレスは、何れも、ダイアグ項目を一義的に特定するための情報である。
インデックスは、ダイアグコードが共通であるダイアグ項目の集まりにおいて、個々のダイアグ項目を特定するための情報である。具体的に、0から始まる数字である。例えば、ダイアグコードが「P0116」で共通であるダイアグ項目2〜4に、インデックスとして0〜2が対応付けられる。また、ダイアグコード「P0116」以外であるダイアグ項目1,5にそれぞれ、インデックスとして0が対応付けられる。尚、例えば、ダイアグ項目1の他にダイアグコードとして「P0112」が対応付けられたダイアグ項目(仮にダイアグ項目10とする)があれば、そのダイアグ項目10にはインデックスとして1が対応付けられることとなる。
このように、インデックスは、ダイアグコードが異なるダイアグ項目同士では同じになる場合もあるが、ダイアグコードが共通であるダイアグ項目同士においては重複しないようになっている。このため、ダイアグコードとインデックスとから、ダイアグ項目を一義的に特定することができる。
次に、静的IDは、全てのダイアグ項目において、各ダイアグ項目に固有の情報である。具体的には、01から始まる数字である。つまり、静的IDとして、ダイアグ項目のそれぞれに通し番号が割り当てられている。このため、静的IDにより、ダイアグ項目を一義的に特定することができる。
次に、RAMアドレスであるが、このRAMアドレスも、全てのダイアグ項目において、各ダイアグ項目に固有の情報である。この「RAMアドレス」の「RAM」は、SRAM14を指すものであり、SRAM14におけるダイアグコードの格納アドレスは、ダイアグ項目毎に予め定められている。ここでは、その格納アドレスの情報を、ダイアグ項目を特定するための情報として、各ダイアグ項目に対応付けている。このため、RAMアドレスにより、ダイアグ項目を一義的に特定することができる。
ダイアグ特定情報を生成する際は、インデックス、静的ID、RAMアドレスの何れを用いてもよく、また、その3つのうち複数(3つ共の場合も含む)を用いても良い。
本実施形態では特に、インデックスを用いるようにしている。以下説明する。
図2の〈説明〉に記載しているように、ダイアグ特定情報は、ダイアグコードにインデックスを付与したものである。
具体的に、ダイアグコードを表すデータに、1バイト=8ビットのデータをインデックスを表すためのデータとして付与する。
インデックスを表すためのデータは、1ビット目から8ビット目まで、順に、インデックスの数字の0,1,2,…7に対応する。例えばダイアグコードにインデックスとして0を付与する場合には、インデックスを表す部分の1ビット目を「1」にする。0を付与しない場合には、1ビット目を「0」にする。
このようにして、付与したい数字に対応したビット情報を「1」にすれば、所望のインデックスをダイアグコードに付与できることとなる。
例えば、ダイアグ項目2,4(インデックスはそれぞれ0,2)が異常であることを表すダイアグ特定情報は、ダイアグコード(のデータ)+1ビット目「1」,2ビット目「0」,3ビット目「1」,以下「0」…というようなデータとなる。勿論、インデックスを表すために2バイト以上のデータを用いても良い。
尚、静的IDを用いる場合は、ダイアグ項目に対応する静的IDをダイアグコードに付与すれば良い。同様に、RAMアドレスを用いる場合は、ダイアグ項目に対応するRAMアドレスをダイアグコードに付与すれば良い。
例えば、ダイアグ項目2が異常であることを表すダイアグ特定情報は、静的IDを用いた場合は「P0116+02」となり、RMAアドレスを用いた場合は「P0116+0x3ff0004」となる。つまり、ダイアグ項目2が異常の場合、静的IDを用いるならば、EEPROM50には「P0116+02」を記憶させ、RAMアドレスを用いるならば、EEPROM50には「P0116+0x3ff0004」を記憶させるようにすれば良い。
また、静的ID、或いはRAMアドレスをダイアグ特定情報としても良い。この場合、例えば、ダイアグ項目2が異常であることを表すダイアグ特定情報は、静的IDを用いた場合は「02」となり、RMAアドレスを用いた場合は「0x3ff0004」となる。
〈異常診断プログラム構造〉
次に、図3は、異常診断プログラムPrの構造(アーキテクチャ)を概念的に示した説明図である。尚、図3に示す概念は既に、本願出願人の出願に係る特許第3659017号公報で開示されているものである。
異常診断プログラムPrは、オブジェクト指向設計されたプログラムで構成される。オブジェクト指向設計とは、オブジェクト(対象)同士の相互作用としてシステムの振る舞いをとらえて、そのオブジェクトの特性やオブジェクト同士の関連を記述するものである。例えば、オブジェクト間を要求や応答といったやりとり(以下、「メッセージ」と記載する)により結合することで、一連の処理が実現される。また、オブジェクトは、データ(属性とも言われる)と、データを処理する手続き(メソッドとも言われる)とを一体化した形で記述され、オブジェクトは他のオブジェクトからの要求(メッセージ)を受信することによりメソッドを実行する。尚、オブジェクトへの仕事の依頼はメソッドを介してのみ行うことができ、オブジェクト内のデータへの直接のアクセスは禁止される。
そして、異常診断プログラムPrは、図3に示すように、異常検出オブジェクト100と、異常確定オブジェクト200と、異常時処理オブジェクト300と、異常コード格納オブジェクト400とで構成される。
異常検出オブジェクト100は、例えばセンサやスイッチからエンジンECU4に入力された情報に基づいて、正常/異常を判断するプログラムを有する。そして、この異常検出オブジェクト100は、異常検出対象(ダイアグ項目)毎にオブジェクト化される。
例えば、ダイアグ項目として水温センサ、吸気温センサ、スロットルセンサがあるとすると、水温センサの異常を検出するオブジェクト110、吸気温センサの異常を検出するオブジェクト120、スロットルセンサの異常を検出するオブジェクト130、を有するように構成される。ダイアグ項目が増えると、これに対応したオブジェクトが追加され、逆にダイアグ項目が減った場合には、これに対応したオブジェクトが削除される。
異常検出オブジェクト100により異常が検出されると、その異常検出オブジェクト100からフラグ処理要求のメッセージが異常確定オブジェクト200に発行され、また、異常確定オブジェクト200からカウント処理要求のメッセージが異常時処理オブジェクト300に発行され、さらに異常時処理オブジェクト300からダイアグコード記憶要求のメッセージが異常コード格納オブジェクト400に発行される。
そして、異常確定オブジェクト200は、異常検出オブジェクト100からのフラグ処理要求(サブルーチンコール)により起動し、例えば異常/正常を確定するための処理を実現する。
また、異常時処理オブジェクト300は、異常確定オブジェクト200からのカウント処理要求(サブルーチンコール)により起動し、例えば異常/正常個数をカウントする処理を実現する。
さらに、異常コード格納オブジェクト400は、異常時処理オブジェクト300からのダイアグコード記憶要求(サブルーチンコール)により起動し、例えばダイアグコードを記憶させる処理を実現する。
〈異常検出オブジェクト100の詳細〉
図4に、異常検出オブジェクト100のうち、水温センサの異常を検出するオブジェクト110の詳細を一例として示す。尚、オブジェクト120,130も同じ構成となっている。
図4に示すように、オブジェクト110は、フラグ格納部112と、異常検出プログラム部114と、異常情報テーブル116とで構成される。
フラグ格納部112の各フラグについて以下に説明する。
・正常判定フラグは、異常検出プログラム部114にて正常判断したときにはフラグ「1」が立つ。
・現在異常フラグは、異常検出プログラム部114にて異常判断したときにはフラグ「1」が立つ。
・ランプ点灯フラグは、異常が確定するとフラグ「1」が立つ(この際、ランプ点灯要求が出力される)。
・異常コードフラグは、異常が確定するとフラグ「1」が立つ(この際、ダイアグコード記憶要求が出力される)。
ここで、異常検出プログラム部114には、図5に示す処理を実現するためのプログラムが格納される。そして、オブジェクト110によれば、図5の処理が実現される。
図5の処理では、マイコン10(具体的には、CPU11)は、まずS110で、フラグ格納部112のフラグ情報を、過去のフラグ情報として図示しないレジスタに待避させる。
次に、S120で水温センサの検出値を読み込む。そしてS130に進み、読み込んだ検出値が所定範囲内か否かを判定する。そして、所定範囲内であれば(S130:YES)、正常と判断してS140に移行し、正常判定フラグを「1」にして、現在異常フラグを「0」にする。
一方、読み込んだ検出値が所定範囲内でなければ(S130:NO)、異常と判断してS150に移行し、正常判定フラグを「0」にして、現在異常フラグを「1」にする。
そして、S140或いはS150の後、S160に進み、フラグ処理要求を異常確定オブジェクト200に発行する。
異常確定オブジェクト200では、現在の車両の運転状態も加味して、異常と確定してよいか否かを判断する。例えば水温センサの場合、バッテリ3の電圧が低下すると、水温センサは正常であるにもかかわらず、水温センサの検出値は所定範囲外となり、この場合オブジェクト110で異常と判断されてしまう。このような場合には、異常確定オブジェクト200で異常がキャンセルされ、現在異常フラグがリセットされる。一方、異常をキャンセルすべき理由がなければ、異常を確定する。
図4に戻り、異常情報テーブル116には、診断ツール6へ出力するコード情報(ダイアグコード)、ランプを点灯させるか否かを示す情報(ランプ点灯)、複数あるランプの内でどのランプを点灯させるかを示す情報(ランプ適用)、など、各異常検出対象に関連した特有の情報が格納される。
〈メッセージ・シーケンスチャート(MIL点灯)〉
次に、図6は、異常診断プログラムPrにより実現される処理であって、特にランプ点灯(MIL点灯)処理の流れを示すメッセージ・シーケンスチャート(以下、MSCと記載する)であり、このシーケンスは、トリップ期間において例えば65ms毎に繰り返し実行される。尚、トリップ期間とは、車両のドライビングサイクル(例えばイグニションスイッチのオンから次のイグニションスイッチのオンまで)の期間のことである。
この図6のMSCでは、各オブジェクトにて実際に実行される処理が示され、矢印により、他のオブジェクトへの関数コール(メッセージ)が示されている。
図6では、マイコン10(具体的にはCPU11)は、まずステップEで、カウンタリセットを実行する。ここでは、異常個数カウンタ15、正常個数カウンタ16、及び図示はしないがランプの点灯/消灯を判断するためのカウンタをリセットする。
ステップBでは、異常検出オブジェクト100からのフラグ処理要求(図6では符号aで示しており、各メッセージでは、フラグ格納部112のフラグ情報及び異常情報テーブル116のテーブル情報がやりとりされる)に基づき、カウント判別処理を実行する。カウント判別処理では、ランプ点灯フラグ(図4)が「1」であるか否かを判定し、「1」であると判定すると、異常時処理オブジェクト300に対してカウント処理要求を発行する(b)。一方、ランプ点灯フラグが「1」でないと判定すると、そのまま当該処理を終了する。
ステップFでは、異常/正常カウント処理を実行する。異常/正常カウント処理では、異常確定オブジェクト200からのフラグ情報に基づき、異常が確定したと判定すると、異常個数カウンタ15をインクリメントする。インクリメントすると、次に、正常復帰しているか否かを判定する。具体的に、現在異常フラグ(図4)が「0」でありかつ正常判定フラグ(図4)が「1」か否かを判定し、肯定判定したならば、正常復帰したと判断して正常個数カウンタ16をインクリメントし、逆に否定判定したならば、当該処理を終了する。
ステップCでは、フラグ格納部112のフラグ状態が変化したか否かを判定し、変化したと判定したならばダイアグコードを記憶すべきと判断して、異常時処理オブジェクト300を介して異常コード格納オブジェクト400へダイアグコード記憶要求を発行する(c,f)。一方、変化していないと判定すれば、当該処理を終了する。
ステップIでは、ダイアグコード記憶処理を実行する。この処理では、SRAM14に、異常検出オブジェクト100に対応するダイアグコード、言い換えると、ダイアグ項目に対応するダイアグコードを記憶する。
ステップDでは、フラグ処理を実行する。例えば所定のフラグをリセットする。
以上で1つのダイアグ項目についての処理が終わり、これと同じ処理を他のダイアグ項目についても繰り返す(異常検出オブジェクト分繰り返す)。そして、全てのダイアグ項目についての処理が終わると、ステップGにてランプの点灯/消灯の判断を行い(ランプ点灯フラグに基づき判断する)、ランプを点灯すると判断したら、ランプ点灯要求を出してランプを点灯させる。
尚、以上の処理は、前述した特許第3659017号公報に開示されているものであり、ここでは概略を述べるに留めることとした。
ここで、本実施形態では、さらにステップHでダイアグ情報操作処理を実行するようになっている。
〈ダイアグ情報操作処理〉
図7は、ダイアグ情報操作処理の流れを表すフローチャートである。
このダイアグコード情報操作処理では、マイコン10(具体的には、CPU11)は、まずS210で、SRAM14にダイアグコードが記憶されているか否かを判定し、記憶されていないと判定すると(S210:NO)、S240に移行する。
一方、S210でSRAM14にダイアグコードが記憶されていると判定すると(S210:YES)、S220に移行する。
S220では、SRAM14に記憶されているダイアグコードを、図2のコード変換テーブルTaに基づきダイアグ特定情報に変換する。詳細は前述した通りである。この場合、どのダイアグ項目が異常であるかは、異常検出オブジェクト100(110,120,130,…)のフラグ格納部112の情報(具体的に、現在異常フラグ、ランプ点灯フラグ)に基づき判別できる。また、ダイアグコードが記憶されているアドレス(SRAM14のアドレス)に基づき判別することもできる。このため、コード変換テーブルTaに基づきダイアグコードをダイアグ特定情報に変換することが可能である。
そして次に、S230に進み、そのダイアグ特定情報をEEPROM50に記憶させる。
続くS240では、個別3トリップ復帰カウンタ処理を実行する。
ところで、〈マイコンの構成〉の欄にて、個別3トリップ復帰カウンタ18について簡単に説明したが、個別3トリップ復帰カウンタ18は、EEPROM50の記憶領域(n)毎に設けられているものである。そして、個別3トリップ復帰カウンタ18は、記憶領域(n)毎、換言すると、ダイアグ項目毎に、異常が検出されると3にセットされる(アップカウントする)と共に、正常復帰したと判定される毎に1づつダウンカウントする。尚、カウント動作は、1つのトリップ期間につき1回である。例えば、1つのトリップ期間で3までアップカウントし、また、1つのトリップ期間で1だけダウンカウントする。
また、以下、記憶領域(n)用の個別3トリップ復帰カウンタ18を、特に、個別3トリップ復帰カウンタ(n)と記載する。例えば、記憶領域(0)用の個別3トリップ復帰カウンタ18は、3トリップ復帰カウンタ(0)と記載する。
図8は、個別3トリップ復帰カウンタ処理の流れを表すフローチャートである。
図8の処理では、まずS242で、記憶領域(n)のnについて、n=0とする。つまり、処理対象を個別3トリップ復帰カウンタ(0)にするという初期設定を行う。以下、まずn=0の場合について説明する。
続くS244では、個別3トリップ復帰カウンタ(0)の値が0であるか否かを判定し、0でないと判定すると(S244:NO)、S252に移行する。
一方、S244で個別3トリップ復帰カウンタ(0)の値が0であると判定すると(S244:YES)、S246に移行し、記憶領域(0)にダイアグ特定情報が記憶されているか否かを判定する。
S246で記憶領域(0)にダイアグ特定情報が記憶されていないと判定すると(S246:NO)、S252に移行する。
一方、S246で記憶領域(0)にダイアグ特定情報が記憶されていると判定すると(S246:YES)、S248に移行し、個別3トリップ復帰カウンタ(0)を3にセットする。続いて、S250に進み、図2のコード変換テーブルTaに基づき、ダイアグ特定情報からダイアグコードを抽出して、その抽出したダイアグコードをSRAM14に記憶させる。
次にS252に進み、0に1を加算し(n+1)、新たなnとする(n←n+1)。
そして、続くS254では、S252で算出した新たなnが4以上であるか否かを判定し、nが4未満であれば(S254:NO)、再びS244に戻る。一方、S254でnが4以上であれば、そのまま当該処理を終了する。つまり、記憶領域(n)のそれぞれ(n=0,1,2,3)について、上記の処理(S244〜S254)を繰り返し実行する。
次に、図9は、トリップ期間のイニシャル時、つまり車両のドライビングサイクルが開始された際に1回だけ実行される処理の流れを表すメッセージ・シーケンスチャート(MSC)である。
図9では、マイコン10(具体的にはCPU11)は、ステップKで、カウンタリセット処理を実行する。ここで、図10は、カウンタリセット処理の流れを表すフローチャートである。
図10のカウンタリセット処理では、S310で、異常個数カウンタ15及び正常個数カウンタ16をリセットする。そしてその後、当該処理を終了する。
また、図9で、マイコン10は、異常検出オブジェクト100からのフラグ処理要求(a1)に基づき、ステップJでカウント判別処理を実行する。このカウント判別処理は、例えば図6のカウント判別処理(ステップB)と同じ内容である。
次に、マイコン10は、異常確定オブジェクト200からのカウント処理要求(j)に基づき、ステップLで、異常/正常カウント処理を実行する。ここで、図11は、異常/正常カウンタ処理の流れをフローチャートである。
図11の異常/正常カウンタ処理では、まず、S320で、異常履歴が有るか否かを、図示しない異常履歴フラグに基づき判定する。異常履歴フラグは、異常が検出されてからその後正常復帰するまでの間、セットされた状態となるものである。
S320で異常履歴がないと判定すると(S320::NO)、そのまま当該処理を終了する。
一方、S320で異常履歴があると判定すると(S320:YES)、S330に移行し、異常個数カウンタ15をインクリメントする。
次に、S340に進み、その異常履歴のあるダイアグ項目について、今回のトリップ期間よりも前のトリップ期間において正常復帰判断されたか否かを、図示しない正常履歴フラグに基づき判定する。この正常履歴フラグは、正常と判定されるとセットされるものである。
S340で正常復帰判断されていないと判定すると(S340:NO)、そのまま当該処理を終了する。
一方、S340で正常復帰判断されたと判定すると(S340:YES)、S350に移行し、正常個数カウンタ16をインクリメントする。そしてその後、当該処理を終了する。
図9に戻り、このような処理(ステップK,J,L)をダイアグ項目のそれぞれについて繰り返し実行する。
次に、ステップMでは、3トリップ復帰判定処理を実行する。
また、ステップNでは、異常情報消去処理を実行する。尚、この異常情報消去処理は、後述するS450、S478に相当する。
図12は、3トリップ復帰判定処理の流れを表すフローチャートである。
図12の3トリップ復帰判定処理では、まず、S410で、異常個数≦正常個数であるか否かを、異常個数カウンタ15及び正常個数カウンタ16に基づき判定し、異常個数≦正常個数であると判定すると(S410:YES)、S420に移行する。
S420では、全体3トリップ復帰カウンタの値が0より大きいか否かを判定し、0より大きいと判定すると(S420:YES)、S430に移行する。
S430では、全体3トリップ復帰カウンタ17をデクリメントする。
次に、S440に進み、全体3トリップ復帰カウンタ17が0か否かを判定し、0であると判定すると(S440:YES)、S450に移行する。
S450では、EEPROM50に記憶されている全てのダイアグ特定情報を消去する。そしてその後、当該処理を終了する。尚、法規によれば、例えば正常復帰判断(具体的に、異常個数≦正常個数と判断された場合であり、換言すれば、異常がすべて正常に復帰した場合)が3回続いた場合(3つのトリップ期間で判断された場合)には、EEPROM50の情報(本実施形態におけるダイアグ特定情報)を消去しても良いことになっており、このS450では、その法規に基づき消去するようにしているのである。一方、S440で全体3トリップ復帰カウンタ17の値が0でないと判定すると(S440:NO)、そのまま当該処理を終了する。
また、S410で異常個数≦正常個数でない(つまり、異常個数>正常個数)と判定した場合(S410:NO)、S420で全体3トリップ復帰カウンタ17の値が0より大きくない(つまり0である、S420:NO)と判定した場合は、S460に移行する。
S460では、個別3トリップ復帰カウンタ処理を実行する。
ところで、例えばバッテリ3の接続が遮断された場合には、SRAM14に記憶されている情報が消去されると共に、全体3トリップ復帰カウンタ17もリセットされる。このような場合、以下に説明する個別3トリップ復帰カウンタ処理が実行されることとなり、これによれば、EEPROM50に保持されている情報を用いて、SRAM14に再度ダイアグコードが記憶される。
図13は、個別3トリップ復帰カウンタ処理の流れを表すフローチャートである。
この処理では、まず、S462で、n=0とする。つまり、処理対象を個別3トリップ復帰カウンタ(0)にするという初期設定を行う。以下、まず、n=0の場合について説明する。
次に、S464に進み、記憶領域(0)にダイアグ特定情報が記憶されているか否かを判定し、記憶されていないと判定すると(S464:NO)、S480に移行する。
一方、S464で記憶領域(0)にダイアグ特定情報が記憶されていると判定すると(S464:YES)、S466に移行する。
S466では、個別3トリップ復帰カウンタ(0)の値が0か否かを判定し、0でないと判定すると(S466:NO)、S472に移行する。
一方、S466で個別3トリップ復帰カウンタ(0)の値が0であると判定すると(S466:YES)、S468に移行し、その個別3トリップ復帰カウンタ(0)を3にセットする。
そして、S470に進み、図2のコード変換テーブルTaに基づき、記憶領域(0)に記憶されているダイアグ特定情報からダイアグコードを抽出すると共に、その抽出したダイアグコードをSRAM14に記憶させる。
次に、S472に移行し、その記憶領域(0)に記憶されているダイアグ特定情報が異常であることを表すダイアグ項目について、今回のトリップよりも前のトリップにおいて正常復帰判断されたか否かを判定し、正常復帰判断されていないと判定すると(S472:NO)、S480に移行する。
一方、S472で正常復帰判断されたと判定すると(S472:YES)、S474に移行し、個別3トリップ復帰カウンタ(0)の値を1だけ減算する(デクリメントする)。
次に、S476に移行し、個別3トリップ復帰カウンタ(0)の値が0であるか否かを判定し、0でないと判定すると(S476:NO)、S480に移行する。
一方、S476で個別3トリップ復帰カウンタ(0)の値が0であると判定すると(S476:YES)、S478に移行し、記憶領域(0)に記憶されているダイアグ特定情報を消去する。これは、前述のように、例えば正常復帰判断が3回続いた場合にEEPROM50に記憶された情報(本実施形態におけるダイアグ特定情報)を消去しても良いという法規に倣ったものである。
次に、S480に移行し、0に1を加算し(n+1)、新たなnとする(n←n+1)。
そして、続くS482では、S480で算出した新たなnが4以上であるか否かを判定し、nが4未満であれば(S482:NO)、再び464に戻る。一方、S482でnが4以上であれば、そのまま当該処理を終了する。つまり、記憶領域(n)のそれぞれ(n=0,1,2,3)について、上記の処理(S464〜S482)を繰り返し実行する。
〈作用のタイムチャート〉
次に、図14及び図15を用いて、本実施形態の作用について説明する。
図14は、全体3トリップ復帰カウンタ17の動作を説明するためのタイムチャートである。
図14において、上段の数字(トリップ数)で区切った1つの期間がそれぞれ、1つのトリップ期間を表す。例えば、1と2との間を、最初(1番目)のトリップ期間とする。
また、図14では、水温センサ、吸気温センサ、スロットルセンサの3つのダイアグ項目について、異常/正常を表している。そして、最下段部分には、異常個数(異常個数カウンタ15のカウント値)、正常個数(正常個数カウンタ16のカウント値)、及び全体3トリップ復帰カウンタ17のカウント値を示している。
まず、前提を説明する。
・1番目のトリップ期間で、水温センサの異常が検出される。
・2番目のトリップ期間で、水温センサが正常復帰し、また、吸気温センサの異常が検出される。
・3番目のトリップ期間で、吸気温センサが正常復帰する。
・4番目のトリップ期間で、スロットルセンサの異常が検出される。
・5番目のトリップ期間で、スロットルセンサが正常復帰する。
次に、この場合の作用について説明する。
1番目のトリップ期間で、水温センサに関する現在異常フラグは1、正常判定フラグは0となり(図5のS150)、また、ランプ点灯フラグは1となる(異常が確定)。また、異常が検出されたため、全体3トリップ復帰カウンタ17の値は3にセットされる。
2番目のトリップ期間のイニシャル時に、水温センサ異常が要因で、図11の異常/正常カウント処理により異常個数が1増加する(S330)。尚、正常個数はそのままである(S340:NO)。この場合、異常個数(1)>正常個数(0)であるため、S410で否定判定してS460に移行する。
3番目のトリップ期間のイニシャル時に、吸気温センサ異常が要因で異常個数が1増加する(S330)。また、前回の2番目のトリップ期間で水温センサが正常復帰しているため(S340::YES)、正常個数が1増加する(S350)。この場合、異常個数(2)>正常個数(1)である。よって、S410:NO→S460となる。
4番目のトリップ期間のイニシャル時は、異常個数はそのままであり、前回の3番目のトリップ期間で吸気温センサが正常復帰しているため(S340:YES)、正常個数は1増加する(S350)。この場合、異常個数(2)=正常個数(2)である。よって、S410:YES→S420:YES→S430となり、全体3トリップ復帰カウンタ17はデクリメントされ、その値は2となる(尚、この場合S440:NO)。
また、4番目のトリップ期間でスロットルセンサの異常が検出されているため、全体3トリップ復帰カウンタ17の値は再度3にセットされる。
5番目のトリップ期間のイニシャル時は、スロットルセンサの異常が要因で異常個数が1増加し(S330)、正常個数はそのままである(S340:NO)。この場合、異常個数(3)>正常個数(2)である。
6番目のトリップ期間のイニシャル時は、異常個数はそのままであり、前回の5番目のトリップ期間でスロットルセンサが正常復帰しているため(S340::YES)、正常個数は1増加する(S350)。この場合、異常個数(3)=正常個数(3)であり、全体3トリップ復帰カウンタ17はデクリメントされる(S430)。
その後、各トリップ期間のイニシャル時に、異常個数=正常個数となって、全体3トリップ復帰カウンタ17の値は1づつ小さくなり、本例では8番目のトリップ期間のイニシャル時に0となる(S440:YES)。すると、EEPROM50に記憶されたダイアグ特定情報が全て消去される(S450)。
以上が全体3トリップ復帰カウンタ17の例であるが、本実施形態の個別3トリップ復帰カウンタ18によれば、EEPROM50に記憶されているダイアグ特定情報を個別に消去することもできる。
図15は、本発明の個別3トリップ復帰カウンタ18の動作を説明するためのタイムチャートである。
図15において、トリップ数、水温センサ、吸気温センサ、及びスロットルセンサは、図14と同趣旨である。
一方、最下段の部分には、個別3トリップ復帰カウンタ(n)を3つ(n=0,1,2)示している。また、全体3トリップ復帰カウンタ17も示している。ここでは、個別3トリップ復帰カウンタ(0)は水温センサに対応し、個別3トリップ復帰カウンタ(1)は吸気温センサに対応し、個別3トリップ復帰カウンタ(2)はスロットルセンサに対応するものとして記載している。
まず、前提を説明する。
図15の例において、1番目のトリップ期間よりも前のトリップ期間において、水温センサの異常が検出されたとする。このため、現在異常フラグは1、正常判定フラグは0、ランプ点灯フラグは1、全体3トリップ復帰カウンタ17の値は3である。その後、2,3,4番目のトリップ期間でそれぞれ、水温センサの正常復帰判断がなされたものとする。
また、1番目のトリップ期間で、ダイアグコードを消去するための消去指令が、診断ツール6(図1参照)から、エンジンECU4に入力されたとする。
次に、この場合の作用について説明する。
まず、水温センサの異常が検出されると、図6のステップIで、水温センサの異常を表すダイアグコードがSRAM14に記憶される。
また、ステップH(特にS230)で、その水温センサの異常を表すダイアグ特定情報が、EEPROM50に記憶される。
一方、診断ツール6からエンジンECU4のマイコン10に消去指令が入力されると、SRAM14に記憶されたダイアグコードが消去されると共に、ランプ点灯フラグ及び現在異常フラグもリセットされる。また、全体3トリップ復帰カウンタ17もリセットされる。尚、このように診断ツール6からの消去指令によりダイアグコードが消去される、或いは所定のフラグがリセットされる、という処理は、従来より行われている。
これに対し、本実施形態によれば、EEPROM50の記憶領域(n)にダイアグ特定情報が記憶されているため、そのダイアグ特定情報からダイアグコードを抽出して、再度SRAM14にダイアグコードを記憶させておくことが可能である(S464〜S470)。つまり、EEPROM50は、SRAM14のバックアップとしての機能を果たし、これにより、例えばSRAM14に記憶されたダイアグコードが意図しないで、或いは不正に消去されたような場合に対応できる。
一方、本実施形態の個別3トリップ復帰カウンタ18によれば、ダイアグ特定情報を個別に消去することができる。
まず、1番目のトリップ期間で、最初に個別3トリップ復帰カウンタ(0)の値が0と判定され(S244:YES)、次に、EEPROM50の記憶領域(0)にダイアグ特定情報が記憶されていると判定される(S246:YES)。
すると、個別3トリップ復帰カウンタ(0)が3にセットされると共に(S248)、SRAM14に、ダイアグ特定情報に含まれるダイアグコードが記憶される(S250)。
そして、3番目のトリップ期間のイニシャル時には、全体3トリップ復帰カウンタ17の値は0であるため(S420:NO)、S460の個別3トリップ復帰カウンタ処理に移行し、その処理で、前のトリップ期間(2番目のトリップ期間)で正常復帰判断されたと判定し(S472:YES)、個別3トリップ復帰カウンタ(0)の値を1だけ減算する(S474)。同様にして、4,5番目のトリップ期間のイニシャル時にそれぞれ、個別3トリップ復帰カウンタ(0)の値が1づつ減算され(S474)、5番目のトリップ期間では0となる。この場合、記憶領域(0)に記憶されたダイアグ特定情報は消去される(S478)。これは、前述のように、法規に倣ったものである。
以上説明したように、本実施形態によれば、法規に倣いSRAM14のバックアップとしての機能を果たすEEPROM50を設ける一方、そのEEPROM50には、ダイアグコードを特定可能(ダイアグ項目を特定可能)なダイアグ特定情報を記憶させるようにしている。このため、EEPROM50に記憶されるダイアグ特定情報のうち、正常復帰したダイアグ項目に対応する所望のダイアグ特定情報を個々に消去することができる。
ここで、本実施形態と異なり、単にダイアグコードをEEPROM50に記憶させる形態を想定することとする。この想定で、例えばダイアグ項目Aとダイアグ項目Bとでダイアグコードが共通であり、そのダイアグ項目A,Bで共に異常が検出され、その後ダイアグ項目Aのみが正常復帰したとする。すると、EEPROM50に記憶されたダイアグコードのうち、そのダイアグ項目Aに割り当てられたダイアグコードを消去しても良いか判断できなくなってしまうことが考えられる。そのダイアグコードは、ダイアグ項目Bに割り当てられたものでもあるからである。或いは、ダイアグ項目Bが正常復帰していないにも関わらす、ダイアグ項目Bに割り当てられているダイアグコード(ダイアグ項目Aと共通のダイアグコード)を消去してしまう可能性もある。前者の場合はEEPROM50の記憶領域の有効利用を図ることができず、後者の場合は法規に違反してしまうこととなる。
これに対し、本実施形態によれば、ダイアグコードを、ダイアグ項目に固有のダイアグ特定情報に変換してそのダイアグ特定情報をEEPROM50に記憶させているため、ダイアグ項目毎にダイアグ特定情報を個々に消去できるようになる。従って、EEPROM50の有効利用を図ることができると共に、法規に違反することのない機能が得られることとなる。
尚、本実施形態において、異常検出オブジェクト100が異常検出手段に相当し、S230の処理が異常記憶手段に相当し、S478の処理が消去手段に相当し、個別3トリップ復帰カウンタが請求項3のカウンタに相当し、コード変換テーブルTaが対応情報記憶手段に相当している。
ところで、本実施形態では、以下のような参考形態が考えられる。
[参考形態]
図16は、参考形態として、リプログラム時の動作を表す図面である。
リプログラムとは、エンジンECU4がツール(例えば診断ツール6や図示しない書換ツール)と通信を行って、プログラムの書き換え(リプログラム)を行うものである。以下、ツールが診断ツール6であるとして説明する。また、前処理とは、エンジンECU4のマイコン10がリプログラム前に実行する処理であり、後処理とは、そのマイコン10がリプログラム後に実行する処理である。
そして、図16(a)は、前処理及び後処理の流れを表すフローチャートであり、図16(b)は、前処理、リプログラム、及び後処理の関係を模式的に表す図面である。
図16(a)に示すように、前処理では、まず、S510で、診断ツール6からダイアグコードを要求する要求指令が入力されたか否かを判定し、入力されていないと判定すると(S510:NO)、そのまま当該処理を終了する。
一方、S510で要求指令が入力されたと判定すると(S510:YES)、S520に移行し、SRAM14に記憶されているダイアグコードを診断ツール6に出力し、或いはSRAM14の情報が消去されている場合にはEEPROM50に記憶されているダイアグ特定情報からダイアグコードを抽出してそのダイアグコードを診断ツール6に出力すると共に、EEPROM50に記憶されているダイアグ特定情報を、他のECU(例えば、トランスミッションECU5)に送信する。この場合、他のECUとしてのトランスミッションECU5が備える例えばEEPROMに、エンジンECU4からのダイアグ特定情報が記憶されるようにすれば良い。そしてその後、当該処理を終了する。
リプログラムが実行されると、そのリプログラムにより、エンジンECU4のEEPROM50、及びマイコン10のSRAM14の記憶内容はクリアされる。
リプログラム後の後処理では、まず、S550で、S520で他のECUへ送信したダイアグ特定情報を、その送信先のECUから受信したか否かを判定し、受信していないと判定すると(S550:NO)、そのまま当該処理を終了する。尚、例えばマイコン10が、他のECUに、ダイアグ特定情報の返信要求を出す。
一方、S550でダイアグ特定情報を受信したと判定すると(S550:YES)、S560に移行する。尚、この際、その受信したダイアグ特定情報は、エンジンECU4のEEPROM50に記憶される。
S560では、EEPROM50に記憶されたダイアグ特定情報からダイアグコードを抽出し、そのダイアグコードをSRAM14に再度記憶させる。
尚、S520において、ダイアグ特定情報の送信先は、診断ツール6であってもよい。
この点について図16(b)を用いて説明する。
診断ツール6からエンジンECU4に要求指令が出力されると(S510:YES)、エンジンECU4は、ダイアグ特定情報を診断ツール6に送信する(S520)。
リプログラムが実行された後、診断ツール6は、エンジンECU4にダイアグ特定情報を返信する)。エンジンECU4は、診断ツール6からのダイアグ特定情報を受信して(S550:YES)、ダイアグ特定情報をEEPROM50に記憶すると共に、そのダイアグ特定情報が表すダイアグコードを、SRAM14に記憶させる(S560)。
尚、本参考形態において、エンジンECU4が診断ツール6にダイアグコードを出力する処理(例えばS520の処理)が、コード出力手段に相当している。
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の技術範囲内において種々の形態をとることができる。
例えば、上記実施形態において、ダイアグ項目を特定するための情報の例としてインデックス、静的ID、及びRAMアドレスについて説明したが、ダイアグ項目を特定できる情報であれば、どのような情報を用いてもよい。
また、上記実施形態において、コード変換テーブルTaに代えて、ダイアグコードをダイアグ特定情報に変換するための所定の計算式を記憶しておき、マイコン10がその計算式に従ってダイアグ特定情報を作成するようにしても良い。
また、不揮発性メモリとしてのEEPROM50が複数設けられている場合でも、本発明を適用することができる。
また、上記実施形態では、全体3トリップ復帰カウンタ17、及び個別3トリップ復帰カウンタ18は、異常が生じると3にセットされるようになっているが、例えば4以上の値にセットされるようにしても良い。つまり、全体3トリップ復帰カウンタ17を用いた例で、異常個数≦正常個数の状態が4回以上連続で続いた場合にEEPROM50の情報を全て消去する構成でもよい。また、個別3トリップ復帰カウンタ18を用いた例で、異常が生じたダイアグ項目について、4回以上連続で正常復帰判断がなされた場合に、そのダイアグ項目についてEEPROM50に記憶されたダイアグ特定情報を消去する構成でもよい。
車両ネットワークシステムの構成図である。 ダイアグ特定情報についての説明図である。 異常診断プログラムの構造を説明する図面である。 異常検出オブジェクト100を説明する図面である。 異常検出プログラム部114に格納されるプログラムにより実現される処理を表すフローチャートである。 MIL点灯処理を示すMSCである。 ダイアグ情報操作処理を表すフローチャートである。 個別3トリップ復帰カウンタ処理を表すフローチャートである。 トリップ期間のイニシャル時の処理を示すMSCである。 カウンタリセット処理を表すフローチャートである。 異常/正常カウント処理を表すフローチャートである。 3トリップ復帰判定処理を表すフローチャートである。 個別3トリップ復帰カウンタ処理を表すフローチャートである。 全体3トリップ復帰カウンタの動作を説明するタイムチャートである。 個別3トリップ復帰カウンタの動作を説明するタイムチャートである。 参考形態の説明図である。
符号の説明
1…車両ネットワークシステム、2…CANバス、3…バッテリ、6…診断ツール、9…バス、10…マイコン、11…CPU、12…ROM、13…RAM、14…SRAM、15…異常個数カウンタ、16…正常個数カウンタ、17…全体3トリップ復帰カウンタ、18…個別3トリップ復帰カウンタ、20…電源回路、30…通信回路、40…入出力回路、50…EEPROM、100…異常検出オブジェクト、112…フラグ格納部、114…異常検出プログラム部、116…異常情報テーブル、200…異常確定オブジェクト、300…異常時処理オブジェクト、400…異常コード格納オブジェクト、Pr…異常診断プログラム、Ta…コード変換テーブル。

Claims (8)

  1. データ書換可能な不揮発性メモリと、
    複数の監視項目のそれぞれについて異常の有無を検出する異常検出手段と、
    前記異常検出手段により異常が検出された場合に、その異常を示す異常コードを、少なくとも前記不揮発性メモリに記憶する異常記憶手段とを備え、車両における制御対象を制御する電子制御装置であって、
    前記異常検出手段は、車両のドライビングサイクルの期間であるトリップ期間において、前記複数の監視項目のそれぞれについて異常の有無を検出するようになっており、
    前記異常記憶手段は、前記異常検出手段により異常が検出された場合に、少なくとも前記不揮発性メモリに、異常が検出された監視項目を識別可能な識別情報を、前記異常コードと共に記憶するようになっており、
    前記異常検出手段により異常が検出された場合、及びその異常検出手段により異常無しと判断された場合にカウント動作すると共に、そのカウント方向は前者の場合と後者の場合とで逆であり、さらに、カウント動作は1つの前記トリップ期間につき1回であるカウンタを、前記監視項目毎に備え、
    前記カウンタを監視して、前記カウンタのうち、前記異常検出手段により異常が検出された監視項目用のカウンタが、異常無しと判断された場合のカウント方向(以下、正常カウント方向と言う)に所定数だけ連続してカウント動作したと判断すると、前記不揮発性メモリに記憶された前記異常コード及び前記識別情報のうち、前記正常カウント方向に前記所定数だけ連続してカウント動作したカウンタに対応する監視項目を表す異常コード及び識別情報を、その識別情報から特定して消去する消去手段を備えていることを特徴とする電子制御装置。
  2. 請求項1に記載の電子制御装置において、
    前記複数の監視項目と前記識別情報との関係を記憶する対応情報記憶手段を備え、
    前記異常記憶手段は、前記対応情報記憶手段が記憶している情報を参照し、前記異常検出手段により異常が検出された監視項目を表す識別情報を取得して、その取得した識別情
    報を前記異常コードと共に前記不揮発性メモリに記憶するようになっていることを特徴とする電子制御装置。
  3. 請求項2に記載の電子制御装置において、
    前記異常記憶手段は、前記異常コードと前記識別情報との両方の情報を含んだ1つのコード(以下、変換異常コードと言う)を前記不揮発性メモリに記憶するようになっており、
    前記対応情報記憶手段は、前記異常コードと前記変換異常コードとの関係も記憶しており、
    外部の診断ツールからの要求に応じて前記異常コードをその診断ツールに出力する異常コード出力手段を備え、該異常コード出力手段は、前記対応情報記憶手段が記憶している情報を参照し、前記不揮発性メモリにされている前記変換異常コードから前記異常コードを復元して前記外部の診断ツールに出力するようになっていることを特徴とする電子制御装置。
  4. 請求項1ないし請求項3の何れか1項に記載の電子制御装置において、
    前記識別情報は、前記複数の監視項目それぞれに固有の情報であることを特徴とする電子制御装置。
  5. 請求項1ないし請求項4の何れか1項に記載の電子制御装置において、
    前記異常コードとしては、複数の監視項目に共通のものがあり、
    前記識別情報は、前記異常コードが共通である複数の監視項目の集まりにおいて、その監視項目それぞれに固有の情報であることを特徴とする電子制御装置。
  6. 請求項1ないし請求項5の何れか1項に記載の電子制御装置において、
    前記不揮発性メモリとは別に、前記異常コードが記憶されるメモリを備え、更に、前記複数の監視項目毎に、そのメモリにおける異常コードの格納アドレスが予め定められており、
    前記識別情報は、前記監視項目毎に予め定められた前記異常コードの格納アドレスの情報であることを特徴とする電子制御装置。
  7. データ書換可能な不揮発性メモリと、
    複数の監視項目のそれぞれについて異常の有無を検出する異常検出手段と、
    前記異常検出手段により異常が検出された場合に、その異常を示す異常コードを、少なくとも前記不揮発性メモリに記憶する異常記憶手段とを備え、車両における制御対象を制御する電子制御装置であって、
    前記異常記憶手段は、前記異常検出手段により異常が検出された場合に、少なくとも不揮発性メモリに、異常が検出された監視項目を識別可能な識別情報を、前記異常コードと共に記憶するようになっており、
    前記不揮発性メモリとは別に、前記異常コードが記憶されるメモリを備え、更に、複数の監視項目毎に、そのメモリにおける異常コードの格納アドレスが予め定められており、
    前記識別情報は、前記監視項目毎に予め定められた前記異常コードの格納アドレスの情報であることを特徴とする電子制御装置。
  8. 請求項1ないし請求項7の何れか1項に記載の電子制御装置において、
    前記不揮発性メモリは、当該電子制御装置と接続する外部の装置に設けられていることを特徴とする電子制御装置。
JP2007036385A 2007-02-16 2007-02-16 電子制御装置 Active JP4442617B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007036385A JP4442617B2 (ja) 2007-02-16 2007-02-16 電子制御装置
US12/068,537 US8095257B2 (en) 2007-02-16 2008-02-07 Electronic control apparatus having self-diagnosis function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007036385A JP4442617B2 (ja) 2007-02-16 2007-02-16 電子制御装置

Publications (2)

Publication Number Publication Date
JP2008201160A JP2008201160A (ja) 2008-09-04
JP4442617B2 true JP4442617B2 (ja) 2010-03-31

Family

ID=39707371

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007036385A Active JP4442617B2 (ja) 2007-02-16 2007-02-16 電子制御装置

Country Status (2)

Country Link
US (1) US8095257B2 (ja)
JP (1) JP4442617B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4623189B2 (ja) * 2008-09-26 2011-02-02 株式会社デンソー 異常判定装置、異常判定プログラム及び異常判定方法
JP5109938B2 (ja) * 2008-11-12 2012-12-26 三菱自動車工業株式会社 電気自動車の充電制御装置
JP5155916B2 (ja) * 2009-03-24 2013-03-06 トヨタ自動車株式会社 電動車両
US20100262431A1 (en) * 2009-04-10 2010-10-14 Gilbert Harry M Support for Preemptive Symptoms
JP4706778B2 (ja) * 2009-05-20 2011-06-22 株式会社デンソー 電子制御装置、及び車両制御システム
JP5208872B2 (ja) * 2009-07-15 2013-06-12 日立オートモティブシステムズ株式会社 車両搭載機器の制御装置のメモリ診断装置
JP5949417B2 (ja) * 2012-10-09 2016-07-06 株式会社デンソー 中継装置
JP6180462B2 (ja) * 2015-05-22 2017-08-16 三菱電機株式会社 車載用の電子制御装置
JP6443299B2 (ja) * 2015-10-21 2018-12-26 株式会社デンソー 電子制御装置
JP7042096B2 (ja) * 2018-02-01 2022-03-25 日立Astemo株式会社 車両用電子制御装置
JP7065409B2 (ja) * 2018-09-25 2022-05-12 パナソニックIpマネジメント株式会社 処理システム、センサシステム、移動体、異常判定方法、及びプログラム
JP7172748B2 (ja) * 2019-03-06 2022-11-16 株式会社デンソー 電子制御装置及び検査システム
JP2021030939A (ja) * 2019-08-27 2021-03-01 株式会社ケーヒン 電子制御装置及び故障コード管理方法

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS603732A (ja) * 1983-06-21 1985-01-10 Honda Motor Co Ltd 入出力装置の異常検出方法
JPS6388422A (ja) 1986-10-02 1988-04-19 Mazda Motor Corp 車両の故障検出装置
JP2542351B2 (ja) 1990-02-07 1996-10-09 株式会社ゼクセル 故障情報記憶装置
JP3231048B2 (ja) 1991-05-02 2001-11-19 三井化学株式会社 電気分解によって水酸化第四アンモニウムを製造するための炭酸水素テトラメチルアンモニウム水溶液の製造方法
JP2589617B2 (ja) 1991-12-25 1997-03-12 本田技研工業株式会社 車両用故障診断装置
US5491631A (en) * 1991-12-25 1996-02-13 Honda Giken Kogyo Kabushiki Kaisha Fault diagnostic system for vehicles using identification and program codes
JP3309437B2 (ja) * 1992-08-19 2002-07-29 株式会社デンソー 車両の自己診断装置
JP3505760B2 (ja) * 1993-02-18 2004-03-15 株式会社デンソー 車両の自己診断装置
DE4425388B4 (de) * 1994-07-19 2005-07-21 Robert Bosch Gmbh Steuergerät
US5745864A (en) * 1994-10-04 1998-04-28 Nippondenso Co., Ltd. Vehicular information storage device and power outage-resistant storage system and method for the same
JP3752022B2 (ja) * 1995-08-25 2006-03-08 株式会社デンソー 故障診断機能付き電子制御装置
JPH09230929A (ja) * 1996-02-20 1997-09-05 Komatsu Ltd 車載コントローラの故障診断方法及び装置
JP3166634B2 (ja) * 1996-11-07 2001-05-14 日産自動車株式会社 車両用制御装置の故障記憶装置
JP4061694B2 (ja) * 1998-02-19 2008-03-19 株式会社デンソー 電子制御装置及び制御システム
JP3659017B2 (ja) 1998-09-18 2005-06-15 株式会社デンソー 自己診断装置を備えた車両用制御装置
JP3338679B2 (ja) * 1999-12-09 2002-10-28 本田技研工業株式会社 車両の診断装置
JP4008197B2 (ja) * 2000-01-14 2007-11-14 株式会社デンソー ダイアグノーシス機能を有する車両用制御装置及び記録媒体
US6553289B2 (en) * 2000-04-28 2003-04-22 Denso Corporation Control apparatus having object-oriented self-diagnosis program
JP4267173B2 (ja) * 2000-05-01 2009-05-27 トヨタ自動車株式会社 異常診断システム
JP2002002419A (ja) 2000-06-20 2002-01-09 Keihin Corp 車両用電子制御ユニット
JP3692932B2 (ja) * 2000-12-13 2005-09-07 株式会社デンソー 情報提供機能を備えた車両用制御装置及び記録媒体
CN100339859C (zh) * 2001-08-10 2007-09-26 株式会社智卡平 采集车辆数据并诊断车辆的系统和方法
JP2004214027A (ja) 2002-12-27 2004-07-29 Sanyo Electric Co Ltd 保守システム
JP2005059671A (ja) 2003-08-08 2005-03-10 Mitsubishi Fuso Truck & Bus Corp 故障診断装置
JP4076165B2 (ja) 2004-02-05 2008-04-16 インターナショナル・ビジネス・マシーンズ・コーポレーション 管理装置、収納カセット、現金自動預け払い機、情報処理システム、管理方法、及び制御方法
JP4066381B2 (ja) * 2005-03-01 2008-03-26 三菱電機株式会社 車載電子制御装置
JP4677876B2 (ja) * 2005-10-11 2011-04-27 株式会社デンソー 車両診断装置

Also Published As

Publication number Publication date
JP2008201160A (ja) 2008-09-04
US20080201035A1 (en) 2008-08-21
US8095257B2 (en) 2012-01-10

Similar Documents

Publication Publication Date Title
JP4442617B2 (ja) 電子制御装置
JP5272507B2 (ja) 電子制御装置
JP4618314B2 (ja) 電子制御装置、及び車両制御システム
JP2009264828A (ja) 電子制御装置
US6415210B2 (en) Vehicle information communication system and method capable of communicating with external management station
JP4677876B2 (ja) 車両診断装置
US8095263B2 (en) Electronic control unit and vehicle control system
JP4539757B2 (ja) 電子制御装置
JP2011255862A (ja) 電子制御装置及び情報管理システム
JP4552982B2 (ja) 電子制御装置
JP4706778B2 (ja) 電子制御装置、及び車両制御システム
JP2007198939A (ja) 車両用故障診断装置
JP2007168463A (ja) 車両用電子制御システム及びデータ変換装置
JP5177109B2 (ja) 電子制御装置
JP4475345B2 (ja) 電子制御装置
JP4487007B2 (ja) 車載プログラムの書き換え制御システム
JP5617901B2 (ja) 電子制御装置
JP6435880B2 (ja) 電子制御装置
JP4281808B2 (ja) 車両の制御装置およびその制御方法
US7729825B2 (en) System and method of intelligent agent management using an agent interface for use in vehicle diagnostics
WO2011077519A1 (ja) 情報管理装置、及び情報管理方法
JP2018120265A (ja) 車両の制御装置
JP5152230B2 (ja) 電子制御装置
JP2009193395A (ja) 通信データ収集装置
JP5177079B2 (ja) 車載制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080820

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090309

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090721

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090910

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: 20091222

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100104

R151 Written notification of patent or utility model registration

Ref document number: 4442617

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140122

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250