(57)【特許請求の範囲】
【請求項１】
車両用の負荷への通電をON／OFFする駆動回路と、
正常値としての第１の値又は前記負荷への通電を停止するフェイルセーフを実行するトリガーを示す擬似異常値としての第２の値が設定されるヘッダ部と前記負荷への通電のON／OFFの指令値が設定されるデータ部とから構成される出力値を前記駆動回路へ送信する制御回路と、を備え、
前記駆動回路は、
受信レジスタを有し、
前記ヘッダ部に前記第１の値が設定されている場合、前記出力値を前記受信レジスタに格納し、前記指令値に応じて前記負荷への通電をON／OFFし、前記ヘッダ部に前記第２の値が設定されている場合、前記出力値を前記受信レジスタに格納せずに、前記負荷への通電を停止し、
前記制御回路は、
前記ヘッダ部に前記第２の値を設定したにもかかわらず、前記負荷への通電が停止されない場合、前記駆動回路が異常であると判定する
ことを特徴とするフェイルセーフ診断装置。
【請求項２】
請求項１に記載のフェイルセーフ診断装置であって、
前記制御回路は、
前記ヘッダ部に前記第１の値を設定したにもかかわらず、前記負荷への通電が停止される場合、前記駆動回路が異常であると判定する
ことを特徴とするフェイルセーフ診断装置。
【請求項３】
請求項１に記載のフェイルセーフ診断装置であって、
前記制御回路は、
連続して所定回数、前記駆動回路が異常であると判定された場合、前記駆動回路に前記フェイルセーフを実行させない
ことを特徴とするフェイルセーフ診断装置。
【請求項４】
請求項３に記載のフェイルセーフ診断装置であって、
前記データ部は、
フェイルセーフ実行フラグを含み、
前記制御回路は、
前記駆動回路が連続して所定回数、異常であると判定した場合、前記フェイルセーフ実行フラグをオフに設定し、
前記駆動回路は、
前記第２の値を含む前記出力値を受信してからの時間が所定の閾値より小さく、又は、前記フェイルセーフ実行フラグがオフに設定されている場合、前記指令値に応じて前記負荷への通電をON／OFFする
ことを特徴とするフェイルセーフ診断装置。
【請求項５】
請求項４に記載のフェイルセーフ診断装置であって、
前記駆動回路は、
前記第２の値を含む前記出力値を受信してからの時間が所定の閾値より大きく、且つ、前記フェイルセーフ実行フラグがオンに設定されている場合、前記負荷への通電を停止する
ことを特徴とするフェイルセーフ診断装置。
【請求項６】
請求項１に記載のフェイルセーフ診断装置であって、
前記制御回路は、
前記ヘッダ部に前記第１の値を設定し、かつ、通電をONする前記指令値に応じて前記負荷への通電がOFFされる場合、前記駆動回路が異常であると判定する
ことを特徴とするフェイルセーフ診断装置。
【請求項７】
請求項１に記載のフェイルセーフ診断装置であって、
前記制御回路は、
前記ヘッダ部に前記第１の値を設定し、かつ、通電をOFFする前記指令値に応じて前記負荷への通電がONされる場合、前記駆動回路が異常であると判定する
ことを特徴とするフェイルセーフ診断装置。
【請求項８】
請求項１に記載のフェイルセーフ診断装置であって、
前記駆動回路の異常を報知する報知部をさらに備え、
前記駆動回路が異常であると判定された場合、前記制御回路は報知部を作動させる
ことを特徴とするフェイルセーフ診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フェイルセーフ診断装置に関する。
【背景技術】
【０００２】
自己診断機能をチェックするためのアフターランテストを効果的に行えるようにする方法が知られている（例えば、特許文献１参照）。特許文献１には、「燃料噴射装置本体２からアイドルストップのための停止命令信号Ｓ１が出力されたときに第１乃至第３模擬故障信号ＭＫ１〜ＭＫ３を発生させ、対応する第１乃至第３故障検出手段３〜５が予定通り作動するか否かを故障判定手段６によって判定し、第１乃至第３故障検出手段３〜５のいずれかが故障している場合にはその故障内容を故障表示手段８によって表示するようにした。」と記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−３０４０２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に開示されるような技術では、フェイルセーフを実行する故障検出手段の故障を判定することができる。しかし、特許文献１では、模擬故障信号を送信する専用の制御線が設けられている。
【０００５】
一般的に、燃料噴射装置などの負荷を駆動するフェイルセーフ機能付き駆動回路と、この駆動回路を制御する制御回路との間には負荷のON／OFF指令値を送信する制御線が設けられる。
【０００６】
ここで、制御線が増えると、製造コストが増大するという問題が生じる。
【０００７】
本発明の目的は、製造コストを低減しつつ、フェイルセーフ機能付き駆動回路の異常を判定することができるフェイルセーフ診断装置を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明は、車両用の負荷への通電をON／OFFする駆動回路と、正常値としての第１の値又は前記負荷への通電を停止するフェイルセーフを実行するトリガーを示す擬似異常値としての第２の値が設定されるヘッダ部と前記負荷への通電のON／OFFの指令値が設定されるデータ部とから構成される出力値を前記駆動回路へ送信する制御回路と、を備え、前記駆動回路は、受信レジスタを有し、前記ヘッダ部に前記第１の値が設定されている場合、前記出力値を前記受信レジスタに格納し、前記指令値に応じて前記負荷への通電をON／OFFし、前記ヘッダ部に前記第２の値が設定されている場合、前記出力値を前記受信レジスタに格納せずに、前記負荷への通電を停止し、前記制御回路は、前記ヘッダ部に前記第２の値を設定したにもかかわらず、前記負荷への通電が停止されない場合、前記駆動回路が異常であると判定するようにしたものである。
【発明の効果】
【０００９】
本発明によれば、製造コストを低減しつつ、フェイルセーフ機能付き駆動回路の異常を判定することができる。上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態によるフェイルセーフ診断装置を含む車両制御システムの構成図である。
【図２】図１に示すECUの処理を示す制御フローチャートである(1/3)。
【図３】図２に示す制御フローチャートの続きである(2/3)。
【図４】図３に示す制御フローチャートの続きである(3/3)。
【図５】図１に示す送信レジスタAの出力値の一例を示す図である。
【図６】図１に示す送信レジスタBの出力値の一例を示す図である。
【図７】図１に示す車両制御システムが正常時のタイミングチャートである。
【図８】図１に示すNGタイマが異常時（0固着）のタイミングチャートを示す。
【図９】図１に示すNGタイマがクリア異常時のタイミングチャートを示す。
【発明を実施するための形態】
【００１１】
以下、図面を用いて本発明の一実施形態によるフェイルセーフ診断装置を含む車両制御システムの構成及び動作を説明する。なお、各図において、同一符号は同一部分を表す。
【００１２】
最初に、図１を用いて、車両制御システムの構成を説明する。図１は、本発明の一実施形態によるフェイルセーフ診断装置を含む車両制御システムの構成図である。
【００１３】
車両制御システムは、フェイルセーフ診断装置としてのECU１（エンジンコントロールユニット）、IGNSW２(イグニッションスイッチ)、車両用の負荷３、電源７、報知部としての警告灯１２を備える。
【００１４】
ECU１は複数個（本実施例では３つ）の負荷３のON/OFFスイッチングをする。また、ECU１は、警告灯１２の消灯／点灯を制御する。前記ECU1には、運転者が手動でON/OFFするIGNSW２が備わっている。前記負荷３は電源７から電力供給を受ける。ここで、負荷３の例として、内燃機関に燃料を供給する燃料噴射弁、内燃機関の点火用のコイル、排気ガスセンサ用のヒータなどが挙げられる。
【００１５】
前記ECU１は、内部に制御回路４と駆動回路５とを備える。前記駆動回路５は前記制御回路４からの指令に基づき、負荷３のON/OFFスイッチングをする。前記駆動回路５と前記制御回路４は、制御回路４から駆動回路５の方向の通信に用いるシリアル通信線１３と駆動回路５から制御回路４の方向の通信に用いるシリアル通信線１４を備える。
【００１６】
制御回路４は、負荷ON/OFF指令演算部６、ヘッダ演算部８、送信レジスタA９、受信レジスタA１０、駆動回路フェイルセーフ診断部１１を備える。
【００１７】
負荷ON/OFF指令演算部６は、前記負荷３のON/OFF指令フラグ（Fsw[n](n=0,1,2)）を算出する。本実施例では負荷３は３つのため、負荷ON/OFF指令演算部６は、Fsw[0]、Fsw[1] 、Fsw[2]の３つのフラグを算出する。なお、Fsw[n]は、負荷への通電のON／OFFの指令値である。
【００１８】
ここで、Fsw[n]は前記ECU１の外部からのセンサ情報（例えば、エンジン冷却水温度、エンジン回転数、エンジン流入空気量）と駆動回路フェイルセーフ診断部１１からの駆動回路フェイルセーフアクティブ診断実行フラグ(Factiv)から算出される。なお、詳細は、図２を用いて後述する（S103,S104）。
【００１９】
ヘッダ演算部８は、送信レジスタA９にて駆動回路５に出力されるデータのヘッダ(hedr)を算出する。前記ヘッダ(hedr)は前記駆動回路フェイルセーフアクティブ診断実行フラグ(Factiv)を基に算出される。なお、詳細は、図３を用いて後述する（S103〜S108）。
【００２０】
前記送信レジスタA９は、前記ヘッダ(hedr)と、駆動回路フェイルセーフ診断部１１にて算出されるフェイルセーフ実行フラグ(Fpmt)と、前記Fsw[n]を記憶し、所定周期毎に前記駆動回路５に出力する。この所定出力周期は、制御回路内部演算の周期よりも早い周期である。ここで出力されるデータの例を図５に示す。受信レジスタA１０は、送信レジスタB１５の出力値を記憶する。
【００２１】
駆動回路５は、制御回路異常判定部１８、負荷駆動禁止部２３、負荷ドライバ２１、送信レジスタB１５、受信レジスタB１６を備える。
【００２２】
制御回路異常判定部１８は、前記送信レジスタA９出力値の異常有無を確認（判定）する。なお、後述するように、主に制御回路４の異常により、前記送信レジスタA９出力値が異常となる。
【００２３】
制御回路異常判定部１８は、前記異常有無を、制御回路NGフラグ(Fngc)として、送信レジスタB１５と負荷駆動禁止部２３と受信レジスタB１６に出力する。異常無しの場合、受信レジスタB１６は、前記送信レジスタA９の出力値（Fsw[n]とFpmt）を受信し、更新する。
【００２４】
前記負荷駆動禁止部２３は、NGタイマ１７を使い前記制御回路NGフラグ(Fngc)がNGしきい値以上の時間継続してNG判定（Fngc=1）され続け、かつ、フェイルセーフ実行フラグが実行許可(Fpmt=1)の場合、負荷駆動禁止(負荷駆動許可フラグ(Fok=0))とするフェイルセーフを実行する。
【００２５】
前記負荷３毎に備えられる負荷ドライバ２１は、前記負荷３のON/OFF指令フラグ（Fsw[n]）と前記負荷駆動禁止部２３から算出される前記負荷駆動許可フラグ(Fok)により、負荷ON/OFFスイッチ２０を切換える。前記負荷３は前記負荷ON/OFFスイッチ２０により、ON/OFFする。
【００２６】
また、前記負荷ON/OFFスイッチ２０の指令値は、スイッチ状態フラグ(Fdrv[n])として、送信レジスタB１５に送信される。本実施例では、負荷３は３つのため、負荷ドライバ２１は、Fdrv[0]、Fdrv[1] 、Fdrv[2]の３つのフラグを算出する。
【００２７】
前記送信レジスタB１５は、前記スイッチ状態フラグ(Fdrv[n])と前記制御回路NGフラグ(Fngc)を記憶し、所定周期毎に前記制御回路４に出力する。ここで出力されるデータの一例を図６に示す。受信レジスタA１０は、送信レジスタB１５の出力値を受信し、前記Fdrv[n]と前記Fngcを更新する。
【００２８】
前記駆動回路フェイルセーフ診断部１１は、前記Fsw[n]と前記Fdrv[n]と前記Fngcから、前記駆動回路５の診断を実行し、診断結果に応じて警告灯１２と前記フェイルセーフ実行フラグ(Fpmt)を制御する。なお、詳細は、図４を用いて後述する。
【００２９】
次に、図２〜図４及び図７を用いて、ECU1（フェイルセーフ診断装置）の制御詳細を説明する。図２〜図４は、ECU1の処理を示すフローチャートである。図７は、車両制御システムが正常時のタイミングチャートである。
【００３０】
制御回路４は、Ｓ１００で、イグニッションスイッチ(IGNSW)がONか判定する。IGNSWがONの場合、Ｓ１０１に進む。
【００３１】
制御回路４は、Ｓ１０１で、IGNSWがON直後（OFFからONに切り替わったタイミング）か判定する。ON直後の場合、S１０２に進む。
【００３２】
制御回路４は、Ｓ１０２で、パラメータの初期化を行う。詳細には、制御回路４は、後述する診断のNGカウンタ関連パラメータであるＳcntとNGcntをクリア（０を設定）する。制御回路４は、駆動回路フェイルセーフアクティブ診断実行フラグであるFactivを1（アクティブ診断許可）とする。制御回路４は、フェイルセーフ実行フラグであるFpmtを1（実行許可）とする。制御回路４は、駆動回路フェイルセーフNGフラグを０（駆動回路５のフェイルセーフ機能が正常）とする。
【００３３】
ここで駆動回路フェイルセーフアクティブ診断とは、擬似異常を発生させてフェイルセーフが正常に動作するか確認する診断である。また、フェイルセーフ実行フラグとは、駆動回路のフェイルセーフを実行するか否かの選択フラグである。
【００３４】
駆動回路内のNGタイマは、Ｓ１０２で、駆動開始する。制御回路４は、ON/OFF指令フラグを、全てON(Fsw[n]←1)にする。制御回路４は、Ｓ１０３で、駆動回路フェイルセーフアクティブ診断が実行中か判定する。実行中の場合（Factiv=1）は、Ｓ１０６に進み、それ以外はＳ１０４に進む。
【００３５】
制御回路４は、Ｓ１０６で、IGNSW ON直後の場合、ヘッダ（hedr）に正常値（０１１ｂ）を入れ（Ｓ１０７）、ON直後以外の場合、ヘッダ（hedr）に擬似異常値（０００ｂ）を入れる（Ｓ１０８）。なお、本実施形態では、一例として、正常値に０１１ｂ（ｂ：２進数を表す）、疑似異常値に０００ｂを設定しているが、これらに限定されない。疑似異常値は、負荷３への通電を停止するフェイルセーフを実行するトリガーを示す。
【００３６】
ここで、ヘッダに擬似異常値を代入すると、駆動回路５がデータを異常と判定するため、初期値（Fsw[n] , Fpmt）を設定できない。そのため、IGNSW ON直後だけヘッダに正常値を入れて駆動回路に初期値を設定する（Ｓ１０６；ＹＥＳ、Ｓ１０７）。
【００３７】
制御回路４は、Ｓ１０４で、ON/OFF指令フラグ(Fsw[n])の算出をする。制御回路４は、各種センサにて検出した運転状態（例えば、エンジン冷却水温度、エンジン回転数、エンジン流入空気量）に基づいてFsw[n]を算出する。
【００３８】
制御回路４は、Ｓ１０９で、送信レジスタAに入っているhedrとFpmtとFsw[n]から構成される出力値を駆動回路５の制御回路異常判定部１８に送信する。図５に出力値の例を示す。
【００３９】
図３に示すように、駆動回路５（制御回路異常判定部１８）は、Ｓ１２０で、にてＳ１０９で送信されたデータの内容について、正常・異常を判定する。ここでは、駆動回路５は、送信値のヘッダ(hedr)を見て正常・異常を判定する。正常判定時(hedr＝011b)はＳ１２１に進み、異常判定時(hedr≠011b)はＳ１２３に進む。
【００４０】
駆動回路５は、Ｓ１２１で、制御回路NGフラグをOK(Fngc←0)とし、常時カウントアップしているＮＧタイマをクリアする。駆動回路５は、Ｓ１２２で、Ｓ１０９にて制御回路異常判定部１８に送信された送信レジスタAの出力値を受信レジスタBに格納する。
【００４１】
駆動回路５は、Ｓ１２３で、制御回路NGフラグをNG(Fngc←1)とする。この場合、前記NGタイマはクリアされず、カウントアップし続け、かつ送信レジスタAからの送信値は受信レジスタBに格納されない。
【００４２】
駆動回路５は、Ｓ１２４で、フェイルセーフが実行禁止(Fpmt=0)されている、もしくはNGタイマがNGしきい値未満の場合Ｓ１２５に進み、それ以外の場合Ｓ１２６に進む。
【００４３】
駆動回路５は、Ｓ１２５で、負荷駆動を許可し(Fok=1)、Ｓ１２６で、負荷駆動を禁止する(Fok=0)。
【００４４】
駆動回路５は、Ｓ１２７からＳ１３３の処理を繰り返す。ここでは負荷３が３つあるので、３回繰り返す。
【００４５】
駆動回路５は、Ｓ１２８で、ON/OFF指令フラグがON(Fsw[i]=1)であり、かつ負荷駆動許可（Fok=1)の場合に、スイッチ状態フラグをON(Fdrv[i]=1)とする。
【００４６】
駆動回路５は、Ｓ１２９で、Fdrv[i]が1の場合Ｓ１３０（負荷をON）に進み、それ以外の場合、Ｓ１３１（負荷をOFF）に進む。
【００４７】
駆動回路５は、Ｓ１３２で、送信レジスタBにFdrv[i]を格納する。
【００４８】
駆動回路５は、Ｓ１３３で、すべてのインデックスiについてＳ１２８からＳ１３２の処理が終了した場合、ループを抜ける。つまり、Ｓ１３３は、繰り返しの終了を示す。
【００４９】
制御回路４は、Ｓ１３４で、送信レジスタBの値を受信レジスタAに格納する。
【００５０】
制御回路４は、Ｓ１３５で、受信レジスタAの値を駆動回路フェイルセーフ診断部１１に送信する。
【００５１】
Ｓ１４０以降は、駆動回路フェイルセーフ診断部１１の内部演算となる。
【００５２】
図４に示すように、駆動回路フェイルセーフ診断部１１は、Ｓ１４０で、駆動回路フェイルセーフアクティブ診断実行中か否かを判定する。実行中(Factiv=1)の場合、Ｓ１４４に進み、それ以外はＳ１４１に進む。
【００５３】
駆動回路フェイルセーフ診断部１１は、Ｓ１４１で、制御回路NGフラグがOKの場合(Fngc=0)Ｓ１４３に進み、それ以外はＳ１４２に進む。
【００５４】
駆動回路フェイルセーフ診断部１１は、Ｓ１４２で、制御回路４が故障のため、処理を終了とする。
【００５５】
駆動回路フェイルセーフ診断部１１は、Ｓ１４３で、スイッチ状態フラグ(Fdrv[n])とON/OFF指令フラグ(Fsw[n])が全て同じか確認する。駆動回路フェイルセーフアクティブ診断を実行しておらず（Factiv=0）、かつシステムが正常であれば、ON/OFF指令フラグ(Fsw[n])とスイッチ状態フラグ(Fdrv[n])は同一である。駆動回路フェイルセーフ診断部１１は、同一であればＳ１４７に進み、それ以外はＳ１４８に進む。
【００５６】
駆動回路フェイルセーフ診断部１１は、駆動回路フェイルセーフアクティブ診断実行中の場合（S140；YES）、Ｓ１４４で、診断回数カウンタ（Scnt)を”1”加算する。
【００５７】
駆動回路フェイルセーフ診断部１１は、制御回路異常判定部１８にて異常判定された場合(Fngc=1)、Ｓ１４５で、Ｓ１４６に進み、それ以外はＳ１４８に進む。
【００５８】
駆動回路フェイルセーフ診断部１１は、Ｓ１４６で、スイッチ状態フラグが全てOFF(Fdrv[n]=0)か確認する。ここで、負荷駆動禁止部２３が正しく働いていれば、スイッチ状態フラグは全てOFFとなる。全てOFFであればＳ１４７に進み、それ以外はＳ１４８に進む。
【００５９】
駆動回路フェイルセーフ診断部１１は、診断結果が正常の場合（S146;YES）、Ｓ１４７で、NGフラグ(Fng2)とNGカウンタ(NGcnt)をクリアする。
【００６０】
駆動回路フェイルセーフ診断部１１は、診断結果がNGの場合（S146;NO）、Ｓ１４８で、NGフラグ(Fng2)をセット（１を設定）し、NGカウンタ(NGcnt)を”1”加算する。
【００６１】
駆動回路フェイルセーフ診断部１１は、Ｓ１４９で、駆動回路フェイルセーフアクティブ診断を実行していない(Factiv=0)、もしくは、診断回数カウンタが５回以上(Scnt≧5)の場合のいずれかが成立し、更にNGカウンタが３回以上(NGcnt≧3)の場合、Ｓ１５０に進み、それ以外の場合は処理を終了する。
【００６２】
Ｓ１５０は、駆動回路フェイルセーフ診断異常確定時の処理について示す。駆動回路フェイルセーフ診断部１１は、駆動回路フェイルセーフ機能が異常のため駆動回路フェイルセーフNGフラグをセット(Fng←1)し、警告灯を点灯（作動）し、フェイルセーフ実行フラグを実行禁止(Fpmt←0)とし、フェイルセーフ機能を無効化する。
【００６３】
そして、駆動回路フェイルセーフ診断部１１は、駆動回路フェイルセーフアクティブ診断を終了(Factiv←0)する。また、次回の診断に備えて、NGカウンタ関連パラメータをクリア（Scnt←0、NGcnt←0)する。ただし、処理終了の部分は、実際にはフローチャートの結合子Ｃ３（図４）にてフローチャートの先頭に戻り、IGNSWのON中は処理が継続される。
【００６４】
次にタイミングチャートを用いて、本実施例を説明する。図７は車両制御システムが正常時のタイミングチャートを示す。
【００６５】
一例として、Ｔ２００で、IGNSWがOFF→ONされる。それに伴い、NGカウンタ関連パラメータがクリア（Scnt←0、NGcnt←0)され、駆動回路フェイルセーフアクティブ診断許可(Factiv←1)となり、フェイルセーフ実行許可(Fpmt←1)となる。NGタイマは駆動開始する。
【００６６】
また、Fsw[0]〜Fsw[2]に1がセットされる。なお、図７のタイミングチャート上では、代表してFsw[0]のみ載せてある。また、ヘッダ(hedr)には正常値が代入されるため、Fdrv[0]〜Fdrv[2]に1がセットされる。なお、図７のタイミングチャート上では、代表してFdrv[0]のみ載せてある。
【００６７】
診断回数カウンタ（Scnt)では、駆動回路フェイルセーフアクティブ診断許可(Factiv=1)のため、カウントアップが開始される。
【００６８】
Ｔ２０１で、ヘッダ(hedr)に擬似異常（０００ｂ）が代入される。その結果、制御回路NGフラグ(Fngc)が1（NG）となる。また、このときに、Fdrv[0]〜Fdrv[2]は1のため、NGフラグ(Fng2)もセットされる（Fng2=1）。NGカウンタ(NGcnt)では、カウントアップが開始される。
【００６９】
Ｔ２０２で、NGタイマがNGしきい値（所定のしきい値）に到達し、負荷駆動が禁止される(Fok←0)。その結果、Fdrv[0]〜Fdrv[2]がクリアされ、負荷がOFFされる。NGフラグ(Fng2)は、Fdrv[0]〜Fdrv[2]が0のためクリアされる。NGカウンタ(NGcnt)もクリアされる。
【００７０】
Ｔ２０３は、診断回数カウンタ（Scnt)が5回に到達した時点を示す。ここでNGカウンタ(NGcnt)はNGしきい値の3回未満のため、駆動回路フェイルセーフアクティブ診断はok（Fng←0）で診断終了となる(Factiv←0)。
【００７１】
図８に、NGタイマ異常時（0固着）のタイミングチャートを示す。本タイミングチャートでは図７に対しNGタイマが異常で動作していないケースを示す。NGタイマの駆動以外は、Ｔ３００は図７のＴ２００と、Ｔ３０１は図７のＴ２０１と同じ動きをする。
【００７２】
Ｔ３０２は、診断回数カウンタ（Scnt)が5回に到達した時点を示す。NGカウンタ(NGcnt)はNGしきい値の3回以上のため、駆動回路フェイルセーフアクティブ診断はNG（Fng←1）で終了となる(Factiv←0)。ここで、駆動回路フェイルセーフ機能は機能失陥しているため、フェイルセーフ実行フラグを実行禁止(Fpmt←0)し、フェイルセーフ機能を無効化する。
【００７３】
図９は、NGタイマクリア異常時のタイミングチャートを示す。Ｔ４００〜Ｔ４０３は、図７のＴ２００〜Ｔ２０３と同じ動きをする。
【００７４】
一例として、Ｔ４０４に、NGタイマクリア異常が発生したものとする。Ｔ４０５で、NGタイマがNGしきい値に到達し、負荷駆動が禁止される(Fok←0)。その結果、Fdrv[0]〜Fdrv[2]もクリアされ、負荷がOFFされる。その時に、Fsw[0]が制御回路４からの指令により1の場合、Fsw[0]≠Fdrv[0]となりNGフラグがセットされる(Fng2←1)。NGカウンタ(NGcnt)では、カウントアップが開始される。
【００７５】
Ｔ４０６は、NGcntがNGしきい値（3回）に到達した時点を示す。ここで、駆動回路フェイルセーフ診断はNG（Fng←1）となる。ここで、駆動回路フェイルセーフ機能は機能失陥しているため、フェイルセーフ実行フラグを実行禁止(Fpmt←0)し、フェイルセーフ機能を無効化する。
【００７６】
その結果、Fdrv[0]はNGタイマクリア異常時において、フェイルセーフ機能異常にて誤って負荷駆動禁止されても、その後、駆動することが可能となる。
【００７７】
以上説明したように、本実施形態によれば、疑似異常値専用の制御線を設ける必要がない。このため、製造コストを低減しつつ、フェイルセーフ機能付き駆動回路の異常を判定することができる。
【００７８】
以上、本発明の一実施形態について記述したが、本発明は、前記の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の精神を逸脱しない範囲で、種々の設計変更を行なうことができるものである。
【００７９】
例えば、上記実施形態では、２本のシリアル通信線１３、１４を用いているが、１本のシリアル通信線でもよい。
【００８０】
上記した実施形態は本発明を分かりやすく説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることも可能であり、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることも可能である。
【００８１】
例えば、上記実施形態では、複数のパラメータを用いて、異常を判定しているが、以下のように単純化してもよい。
【００８２】
（１）駆動回路５は、ヘッダに疑似異常値が設定されていない場合、指令値Fsw[i]に応じて負荷３への通電をON／OFFし、ヘッダに疑似異常値が設定されている場合、負荷３への通電を停止する（フェイルセーフ）。制御回路５は、ヘッダに疑似異常値を設定したにもかかわらず、負荷３への通電が停止されない場合、駆動回路４が異常であると判定する。
【００８３】
これにより、ヘッダの疑似異常値を設定している場合に、駆動回路５（フェイルセーフ機能）の異常を判定できる。
【００８４】
（２）ヘッダに疑似異常値を設定していないにもかかわらず、負荷３への通電が停止される場合、駆動回路５が異常であると判定する。
【００８５】
これにより、ヘッダに疑似異常値を設定していない場合に、駆動回路５（フェイルセーフ機能以外）の異常を判定することができる。
【００８６】
（３）制御回路４は、連続して所定回数（1以上の自然数）、駆動回路５が異常であると判定された場合、駆動回路５にフェイルセーフを実行させない（Fpmt=0）。
【００８７】
これにより、連続して所定回数、駆動回路５が異常である場合、駆動回路５のフェイルセーフ機能を無効化することができる。
【００８８】
（４）駆動回路５は、フェイルセーフの実行を禁止することを示すフラグが設定されている場合（Fpmt=0）、指令値Fsw[i]に応じて負荷３への通電をON／OFFする。
【００８９】
これにより、駆動回路５が異常と判定されても、負荷３を駆動することができる。
【００９０】
（５）駆動回路５は、疑似異常値を含むデータを受信してからの時間が所定のしきい値（NGしきい値）より大きい場合、前記負荷への通電を停止する。
【００９１】
これにより、S121を経由せずS123を経由する場合だけでなく、制御回路４から駆動回路５へのデータの送信が切断された場合にも前記負荷への通電が停止される。
【００９２】
（６）制御回路４は、ヘッダに疑似異常値を設定せず、かつ、通電をONする指令値Fsw[i]=1に応じて負荷３への通電がOFFされる場合、駆動回路５が異常であると判定する。
【００９３】
これにより、駆動回路５の誤作動による異常を判定することができる。
【００９４】
（７）制御回路４は、ヘッダに疑似異常値を設定せず、かつ、通電をOFFする指令値Fsw[i]=0に応じて負荷３への通電がONされる場合、駆動回路５が異常であると判定する。
【００９５】
これにより、駆動回路５の誤作動による異常を判定することができる。
【符号の説明】
【００９６】
1…ECU
2…IGNSW(イグニッションスイッチ)
3…負荷
4…制御回路
5…駆動回路
6…負荷ON/OFF指令演算部
7…電源
8…ヘッダ演算部
9…送信レジスタA
10…受信レジスタA
11…駆動回路フェイルセーフ診断部
12…警告灯
13…シリアル通信線(制御回路→駆動回路)
14…シリアル通信線(駆動回路→制御回路)
15…送信レジスタB
16…受信レジスタB
17…ＮＧタイマ
18…制御回路異常判定部
20…負荷ON/OFFスイッチ
21…負荷ドライバ
23…負荷駆動禁止部
【図１】
0006270708.tif 000002
【図２】
0006270708.tif 000003
【図３】
0006270708.tif 000004
【図４】
0006270708.tif 000005
【図５】
0006270708.tif 000006
【図６】
0006270708.tif 000007
【図７】
0006270708.tif 000008
【図８】
0006270708.tif 000009
【図９】
0006270708.tif 000010