(57)【要約】  【課題】  アクチュエータを駆動するドライバの自己診断モニタ端子から出力されるモニタ信号に基づいて異常の種類を判別できるようにする。  【解決手段】  ドライバ１２が正常に動作しているときには、ドライバ１２の自己診断モニタ端子ＤＧから出力されるモニタ信号のレベルがローレベルに維持されるが、ローレベル側の異常（断線、グランドショート）が発生すると、モニタ信号のレベルがローレベルからハイレベルに反転する。制御部１１は、モニタ信号のレベルがローレベルからハイレベルに反転した時にドライバ１２の異常と仮判定する。この後、制御部１１は、ドライバ１２に出力する制御信号（ドライバ１２の入力レベル）を一時的にローレベルに固定した状態で、モニタ信号のレベルがローレベルかハイレベルかを判定することで、ハイレベル側の異常（電源ショート）かローレベル側の異常（断線、グランドショート）かを判別する。  【選択図】  図１
2005163706.tif 000002
【特許請求の範囲】
【請求項１】
制御部から制御信号をドライバに出力して、このドライバによりアクチュエータを駆動するものにおいて、
前記ドライバは、自己診断機能を内蔵し、その自己診断の結果に応じた信号を自己診断モニタ端子から前記制御部に出力し、
前記制御部は、前記ドライバの自己診断モニタ端子の信号レベルに基づいて該ドライバの異常／正常を仮判定する第１の判定手段と、この第１の判定手段で異常と仮判定された場合に前記ドライバに出力する制御信号を一時的にローレベル又はハイレベルに固定した状態で前記ドライバの自己診断モニタ端子の信号レベルに基づいて前記ドライバの異常の種類を判定する第２の判定手段とを備えていることを特徴とするアクチュエータ駆動系の異常診断装置。
【請求項２】
前記制御部は、前記第２の判定手段で前記ドライバの異常の種類を仮判定した後、前記制御信号のレベルを元のレベルに戻した状態で前記ドライバの自己診断モニタ端子の信号レベルと前記第２の判定手段の判定結果との組み合わせに基づいて前記ドライバの異常の種類を確定診断する第３の判定手段を備えていることを特徴とする請求項１に記載のアクチュエータ駆動系の異常診断装置。
【請求項３】
前記第２の判定手段は、前記第１の判定手段で異常と仮判定された場合に前記ドライバに出力する制御信号を一時的にローレベル又はハイレベルに固定した状態で前記ドライバの自己診断モニタ端子の信号レベルとその時点の前記アクチュエータの動作状態との組み合わせに基づいて前記ドライバの異常の種類を判定することを特徴とする請求項１又は２に記載のアクチュエータ駆動系の異常診断装置。
【請求項４】
前記制御部は、前記各判定手段により異常を所定回数連続して検出したときに最終的に異常の判定を確定することを特徴とする請求項１乃至３のいずれかに記載のアクチュエータ駆動系の異常診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アクチュエータを駆動するドライバに自己診断機能を内蔵させたアクチュエータ駆動系の異常診断装置に関するものである。
【背景技術】
【０００２】
近年、例えば特許文献１（特開２００２−６７８３３号公報）に記載されているように、アクチュエータ（例えばモータ、ソレノイド等）を駆動するドライバとして、自己診断機能付きのドライバを用いるようにしたものがある。この種のシステムでは、ドライバの自己診断モニタ端子から制御部に出力されるモニタ信号のレベルによって制御部がドライバの異常／正常を確認できるようになっている。
【特許文献１】特開２００２−６７８３３号公報（第１頁等）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、ドライバの自己診断モニタ端子から制御部に出力されるモニタ信号のみでは、制御部は、ドライバの異常／正常を検出できるだけであり、ドライバの異常を検出しても、ハイレベル側の異常（電源ショート等）かローレベル側の異常（断線、グランドショート等）かを判別することができない。
【０００４】
本発明はこのような事情を考慮してなされたものであり、従ってその目的は、ドライバの異常の種類を判別することができるアクチュエータ駆動系の異常診断装置を提供することにある。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明の請求項１のアクチュエータ駆動系の異常診断装置は、制御部から制御信号を自己診断機能付きのドライバに出力して、このドライバによりアクチュエータを駆動するものにおいて、前記ドライバの自己診断モニタ端子の信号レベルに基づいて該ドライバの異常／正常を仮判定する第１の判定手段と、この第１の判定手段で異常と仮判定された場合に前記ドライバに出力する制御信号を一時的にローレベル又はハイレベルに固定した状態で前記ドライバの自己診断モニタ端子の信号レベルに基づいて前記ドライバの異常の種類を判定する第２の判定手段としての機能を制御部に持たせるようにしたものである。このようにすれば、信号線の本数を増やすことなく、ドライバの自己診断モニタ端子の信号レベルのみに基づいてドライバの異常の種類を判別することができる。
【０００６】
この場合、請求項２のように、制御部は、第２の判定手段でドライバの異常の種類を仮判定した後、制御信号のレベルを元のレベルに戻した状態でドライバの自己診断モニタ端子の信号レベルと第２の判定手段の判定結果との組み合わせに基づいてドライバの異常の種類を確定診断する第３の判定手段を備えるようにしても良い。このようにすれば、ドライバの動作状態が一時的に異常になっても、その後、正常な状態に復帰すれば、異常の仮判定結果を取り消すことができ、異常診断の信頼性を向上させることができる。
【０００７】
また、請求項３のように、第１の判定手段で異常と仮判定された場合にドライバに出力する制御信号を一時的にローレベル又はハイレベルに固定した状態で、ドライバの自己診断モニタ端子の信号レベルとその時点のアクチュエータの動作状態との組み合わせに基づいてドライバの異常の種類を判定するようにしても良い。このようにすれば、ローレベル側の異常のうちの断線とグランドショートとを区別して判定することができる。
【０００８】
更に、請求項４のように、異常を所定回数連続して検出したときに最終的に異常の判定を確定するようにしても良い。このようにすれば、ノイズ等による異常の誤判定を防止することができ、異常判定の信頼性を更に向上させることができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明を実施するための最良の形態を具体化した３つの実施例１〜３を説明する。
【実施例１】
【００１０】
本発明の実施例１を図１乃至図４に基づいて説明する。まず、図１に基づいてシステム全体の構成を説明する。制御部１１は、ＣＰＵ、ＲＯＭ、ＲＡＭ、入出力インターフェース等から構成され、ドライバ１２にデューティ制御の制御信号を出力し、このドライバ１２によりアクチュエータ１３（例えばモータ、ソレノイド等）をデューティ駆動する。ドライバ１２は、自己診断機能付きの汎用ドライバが用いられている。このドライバ１２の自己診断機能は、図２に示すように、ドライバ１２の入力レベルと出力レベルとを比較して自己診断を行い、その自己診断の結果に応じたレベルのモニタ信号を自己診断モニタ端子ＤＧから制御部１に出力する。本実施例１では、ドライバ１２の入力レベルと出力レベルとが異なる場合に正常と診断されて、自己診断モニタ端子ＤＧの出力信号であるモニタ信号のレベルが例えばローレベル（Ｌ）となり、ドライバ１２の入力レベルと出力レベルとが一致する場合に異常と診断されて、モニタ信号のレベルが例えばハイレベル（Ｈ）に反転する。
【００１１】
しかし、ドライバ１２の自己診断モニタ端子ＤＧから制御部１１に出力されるモニタ信号のみでは、制御部１１は、ドライバ１２の異常／正常を検出できるだけであり、ドライバ１２の異常を検出しても、ハイレベル側の異常（電源ショート）かローレベル側の異常（断線、グランドショート）かを判別することができない。
【００１２】
そこで、本実施例１では、制御部１１は、図３の異常診断プログラムを実行することで、モニタ信号のレベルに基づいてドライバ１２の異常を検出したときに、ドライバ１２に出力する制御信号（ドライバ１２の入力レベル）を一時的に例えばローレベルに固定し、この状態でドライバ１２の自己診断モニタ端子ＤＧから出力されるモニタ信号のレベルに基づいてハイレベル側の異常（電源ショート）かローレベル側の異常（断線、グランドショート）かを判別する。
【００１３】
図４は、ローレベル側の異常（断線、グランドショート）が発生した場合の制御例を示すタイムチャートである。ドライバ１２が正常に動作しているときには、ドライバ１２の自己診断モニタ端子ＤＧから出力されるモニタ信号のレベルがローレベルに維持されるが、ローレベル側の異常（断線、グランドショート）が発生すると、モニタ信号のレベルがローレベルからハイレベルに反転する。制御部１１は、モニタ信号のレベルを監視し、モニタ信号のレベルがローレベルからハイレベルに反転したときに、ドライバ１２の異常と仮判定する（この機能が第１の判定手段に相当する）。この後、制御部１１は、ドライバ１２に出力する制御信号（ドライバ１２の入力レベル）を一時的にローレベルに固定し、この状態で、モニタ信号のレベルがローレベルかハイレベルかを判定することで、ハイレベル側の異常（電源ショート）かローレベル側の異常（断線、グランドショート）かを判別する（この機能が第２の判定手段に相当する）。
【００１４】
つまり、ハイレベル側の異常（電源ショート）が発生すると、ドライバ１２の出力レベルが常時ハイレベルとなるため、制御信号（ドライバ１２の入力レベル）をローレベルに固定すると、実際にはハイレベル側の異常（電源ショート）であるにも拘らず、ドライバ１２の入レベルと出力レベルとの関係が正常時と同じ状態となり、モニタ信号のレベルがローレベルに反転する（図２参照）。
【００１５】
これに対して、ローレベル側の異常（断線、グランドショート）が発生すると、ドライバ１２の出力レベルが常時ローレベルとなるため、制御信号（ドライバ１２の入力レベル）をローレベルに固定しても、ドライバ１２の入レベルと出力レベルとの関係は異常時と同じ状態となり、モニタ信号のレベルがハイレベルに維持される（図２参照）。この関係から、制御信号（ドライバ１２の入力レベル）を一時的にローレベルに固定した状態で、モニタ信号のレベルがローレベルかハイレベルかを判定することで、ハイレベル側の異常（電源ショート）かローレベル側の異常（断線、グランドショート）かを判別することができる。
【００１６】
以下、この異常診断処理を実行する図３の異常診断プログラムの処理内容を説明する。本プログラムは、所定周期で実行される。本プログラムが起動されると、まずステップ１０１で、ドライバ１２の自己診断モニタ端子ＤＧから出力されるモニタ信号のレベルがハイレベル（異常）であるか否かを判定し、モニタ信号のレベルがローレベル（正常）であれば、ステップ１０６に進み、正常と判定して、ローレベル側異常フラグとハイレベル側異常フラグを共にＯＦＦに維持（又はリセット）する。
【００１７】
一方、ステップ１０１で、モニタ信号のレベルがハイレベル（異常）であると判定されれば、ステップ１０２に進み、ドライバ１２に出力する制御信号（ドライバ１２の入力レベル）を一時的にローレベルに固定する。この後、ステップ１０３に進み、その時点のモニタ信号のレベルがハイレベル（異常）であるか否かを判定し、モニタ信号のレベルがハイレベル（異常）であれば、ステップ１０４に進み、ローレベル側の異常（断線、グランドショート）と判定して、ローレベル側異常フラグをＯＮにセットする。また、ステップ１０３で、モニタ信号のレベルがローレベル（正常）と判定されれば、ステップ１０５に進み、ハイレベル側の異常（電源ショート）と判定して、ハイレベル側異常フラグをＯＮにセットする。
【００１８】
尚、ステップ１０１の処理が特許請求の範囲でいう第１の判定手段としての役割を果たし、ステップ１０２〜１０５の処理が特許請求の範囲でいう第２の判定手段としての役割を果たす。
【００１９】
以上説明した本実施例１では、ドライバ１２の自己診断モニタ端子ＤＧから制御部１１に出力されるモニタ信号のレベルに基づいてドライバ１２の異常を検出した場合に、ドライバ１２に出力する制御信号（ドライバ１２の入力レベル）を一時的に例えばローレベルに固定した状態で、モニタ信号のレベルがローレベルかハイレベルかを判定することで、ハイレベル側の異常（電源ショート）かローレベル側の異常（断線、グランドショート）かを判別するようにしたので、信号線の本数を増やすことなく、ドライバ１２の自己診断モニタ端子ＤＧから出力されるモニタ信号のみに基づいてハイレベル側の異常（電源ショート）とローレベル側の異常（断線、グランドショート）とを区別して検出することができる。
【００２０】
尚、本実施例１では、モニタ信号のレベルに基づいてドライバ１２の異常を検出した場合に、制御信号（ドライバ１２の入力レベル）を一時的にローレベルに固定するようにしたが、これをハイレベルに固定するようにしても良い。この場合、制御信号（ドライバ１２の入力レベル）を一時的にハイレベルに固定した状態で、モニタ信号のレベルがローレベルに反転すれば、ローレベル側の異常（断線、グランドショート）と判定し、モニタ信号のレベルがハイレベルのままであれば、ハイレベル側の異常（電源ショート）と判定する。
【００２１】
また、本実施例１において、異常を所定回数連続して検出したときに最終的に異常の判定を確定するようにしても良い。このようにすれば、ノイズ等による異常の誤判定を防止することができ、異常判定の信頼性を向上できる。
【実施例２】
【００２２】
次に、本発明の実施例２を図５及び図６に基づいて説明する。本実施例２も、図１のシステム構成に適用する実施例である。
【００２３】
図６は、ローレベル側の異常（断線、グランドショート）が発生した場合の本実施例２の制御例を示すタイムチャートである。ドライバ１２が正常に動作しているときには、ドライバ１２の自己診断モニタ端子ＤＧから出力されるモニタ信号のレベルがローレベルに維持されるが、ローレベル側の異常（断線、グランドショート）が発生すると、モニタ信号のレベルがローレベルからハイレベルに反転する。制御部１１は、モニタ信号のレベルを監視し、モニタ信号のレベルがローレベルからハイレベルに反転したときに、ドライバ１２の異常と仮判定する。この後、制御部１１は、ドライバ１２に出力する制御信号（ドライバ１２の入力レベル）を一時的にローレベルに固定し、この状態で、モニタ信号のレベルがローレベルかハイレベルかを判定することで、ハイレベル側の異常（電源ショート）かローレベル側の異常（断線、グランドショート）かを仮判定する。
【００２４】
この後、制御部１１は、ドライバ１２に出力する制御信号（ドライバ１２の入力レベル）を元のレベル（ハイレベル）に戻して、この状態で、モニタ信号のレベルがローレベル（正常）に反転したか否かを判定し、もし、モニタ信号のレベルがローレベル（正常）に反転していれば、ドライバ１２の動作状態が正常な状態に復帰したものと判断するが、モニタ信号のレベルがハイレベル（異常）のままであれば、上述したハイレベル側／ローレベル側の異常の仮判定結果をそのまま最終的な判定結果として確定する。この機能が特許請求の範囲で言う第３の判定手段に相当する。
【００２５】
以下、本実施例２の異常診断処理を実行する図５の異常診断プログラムの処理内容を説明する。本プログラムは、所定周期で実行される。本プログラムが起動されると、まずステップ２０１で、ドライバ１２の自己診断モニタ端子ＤＧから出力されるモニタ信号のレベルがハイレベル（異常）であるか否かを判定し、モニタ信号のレベルがローレベル（正常）であれば、ステップ２０６に進み、正常と判定して、ローレベル側異常フラグとハイレベル側異常フラグを共にＯＦＦに維持（又はリセット）する。
【００２６】
一方、ステップ２０１で、モニタ信号のレベルがハイレベル（異常）であると判定されれば、ステップ２０２に進み、ドライバ１２に出力する制御信号（ドライバ１２の入力レベル）を一時的にローレベルに固定する。この後、ステップ２０３に進み、その時点のモニタ信号のレベルがハイレベル（異常）であるか否かを判定し、モニタ信号のレベルがハイレベル（異常）であれば、ステップ２０４に進み、ローレベル側の異常（断線、グランドショート）と仮判定する。また、ステップ２０３で、モニタ信号のレベルがローレベル（正常）と判定されれば、ステップ２０５に進み、ハイレベル側の異常（電源ショート）と仮判定する。
【００２７】
そして、次のステップ２０７で、制御信号（ドライバ１２の入力レベル）を元のレベル（ハイレベル）に戻して、ステップ２０８に進み、その時点のモニタ信号のレベルがハイレベル（異常）であるか否かを判定する。その結果、モニタ信号のレベルがローレベル（正常）に反転していると判定されれば、ドライバ１２の動作状態が正常な状態に復帰したものと判断して、ステップ２０６に進み、正常と判定して、ローレベル側異常フラグとハイレベル側異常フラグを共にＯＦＦに維持（又はリセット）する。
【００２８】
これに対して、上記ステップ２０８で、モニタ信号のレベルがハイレベル（異常）であると判定されれば、ステップ２０９に進み、前記ステップ２０３〜２０５でローレベル側の異常（断線、グランドショート）が仮判定されているか否かを判定し、ローレベル側の異常（断線、グランドショート）が仮判定されていれば、ステップ２１０に進み、ローレベル側の異常（断線、グランドショート）の判定を確定し、ローレベル側異常フラグをＯＮにセットする。また、前記ステップ２０３〜２０５でハイレベル側の異常（電源ショート）と仮判定されていれば、ステップ２１１に進み、ハイレベル側の異常（電源ショート）の判定を確定して、ハイレベル側異常フラグをＯＮにセットする。
【００２９】
以上説明した本実施例２では、モニタ信号のレベルに基づいてドライバ１２の異常を検出した場合に、ドライバ１２に出力する制御信号（ドライバ１２の入力レベル）を一時的にローレベルに固定して、モニタ信号のレベルに基づいてハイレベル側の異常（電源ショート）かローレベル側の異常（断線、グランドショート）かを仮判定した後、制御信号（ドライバ１２の入力レベル）を元のレベル（ハイレベル）に戻して、この状態で、モニタ信号のレベルに基づいて異常の判定を確認するようにしたので、ドライバ１２の動作状態が一時的に異常になっても、その後、正常な状態に復帰すれば、異常の仮判定結果を取り消すことができ、異常診断の信頼性を向上させることができる。
【００３０】
尚、本実施例２においても、異常を所定回数連続して検出したときに最終的に異常の判定を確定するようにしても良い。このようにすれば、ノイズ等による異常の誤判定を防止することができ、異常判定の信頼性を向上できる。
【実施例３】
【００３１】
本発明の実施例３を図７乃至図１０に基づいて説明する。本実施例３のシステムは、図７に示すように、アクチュエータ１３の動作状態に応じた信号（以下「動作信号」という）を制御部１１に送信するようにしている。その他のシステム構成は、前記実施例１と同じである。本実施例３は、ドライバ１２の異常検出時に、モニタ信号とアクチュエータ１３の動作信号との組み合わせに基づいて電源ショート（ハイレベル側の異常）の他に、ローレベル側の異常のうちの断線とグランドショートとを区別して検出できるようにしたところに特徴がある。
【００３２】
図９は、グランドショートが発生した場合の本実施例３の制御例を示すタイムチャートであり、図１０は、グランドショートが発生した場合の本実施例３の制御例を示すタイムチャートである。ドライバ１２が正常に動作しているときには、ドライバ１２の自己診断モニタ端子ＤＧから出力されるモニタ信号のレベルがローレベルに維持されるが、グランドショート又は断線が発生すると、モニタ信号のレベルがローレベルからハイレベルに反転する。制御部１１は、モニタ信号のレベルを監視し、モニタ信号のレベルがローレベルからハイレベルに反転したときに、ドライバ１２の異常と仮判定する。この後、制御部１１は、ドライバ１２に出力する制御信号（ドライバ１２の入力レベル）を一時的にローレベルに固定し、この状態で、モニタ信号のレベルとアクチュエータ１３の動作信号との組み合わせに基づいて電源ショート、断線、グランドショートとを区別して検出する。
【００３３】
つまり、断線が発生すると、アクチュエータ１３を駆動できなくなり、動作信号がＯＦＦ状態となるが（図１０参照）、グランドショートが発生しても、アクチュエータ１３を駆動できるため、動作信号がＯＮ状態を維持する（図９参照）。従って、アクチュエータ１３の動作信号がＯＦＦ状態かＯＮ状態かを判定することで、断線とグランドショートとを判別することができる。
【００３４】
以下、本実施例３の異常診断処理を実行する図８の異常診断プログラムの処理内容を説明する。本プログラムは、所定周期で実行される。本プログラムが起動されると、まずステップ３０１で、ドライバ１２の自己診断モニタ端子ＤＧから出力されるモニタ信号のレベルがハイレベル（異常）であるか否かを判定し、モニタ信号のレベルがローレベル（正常）であれば、ステップ３０５に進み、正常と判定し、電源ショートフラグ、断線フラグ、グランドショートフラグを全てＯＦＦに維持（又はリセット）する。
【００３５】
一方、ステップ３０１で、モニタ信号のレベルがハイレベル（異常）であると判定されれば、ステップ３０２に進み、ドライバ１２に出力する制御信号（ドライバ１２の入力レベル）を一時的にローレベルに固定する。この後、ステップ３０３に進み、その時点のモニタ信号のレベルがハイレベル（異常）であるか否かを判定し、モニタ信号のレベルがローレベル（正常）と判定されれば、ステップ３０６に進み、電源ショート（ハイレベル側の異常）と判定して、電源ショートフラグをＯＮにセットする。
【００３６】
これに対して、ステップ３０３で、モニタ信号のレベルがハイレベル（異常）であると判定されれば、ステップ３０４に進み、アクチュエータ１３の動作信号がＯＮであるか否かを判定し、アクチュエータ１３の動作信号がＯＮであれば、ステップ３０７に進み、グランドショートと判定してグランドショートフラグをＯＮにセットするが、アクチュエータ１３の動作信号がＯＦＦであれば、ステップ３０８に進み、断線と判定して断線フラグをＯＮにセットする。
【００３７】
以上説明した本実施例３では、モニタ信号のレベルとアクチュエータ１３の動作信号との組み合わせに基づいて電源ショート、断線、グランドショートとを区別して検出することができる利点がある。
【００３８】
尚、本実施例３においても、異常を所定回数連続して検出したときに最終的に異常の判定を確定するようにしても良い。
【００３９】
以上説明した各実施例１〜３は、自動車に搭載された各種のアクチュエータ駆動制御システムに適用可能であり、勿論、自動車以外の装置に搭載された各種のアクチュエータ駆動制御システムにも適用可能であることは言うまでもない。
【００４０】
また、エンジンの可変バルブタイミングシステムにおいては、グランドショートが発生すると、カム軸位相が進角し、断線や電源ショートが発生すると、カム軸位相が遅角するという特徴がある。この場合は、アクチュエータの動作信号としてカム軸位相の信号を用い、ドライバのモニタ信号に基づいてドライバの異常を検出した時に、カム軸位相が進角側のしきい値を越えていれば、グランドショートと判定し、カム軸位相が遅角側のしきい値を越えていれば、断線／電源ショートと判定するようにしても良い。この際、断線と電源ショートとの判別は、前記各実施例１〜３のいずれかの方法で行えば良い。
【図面の簡単な説明】
【００４１】
【図１】実施例１のアクチュエータ駆動制御システムの構成を示すブロック図である。
【図２】ドライバの自己診断機能の異常判定方法を説明する図である。
【図３】実施例１の異常診断プログラムの処理の流れを示すフローチャートである。
【図４】実施例１の制御例を説明するタイムチャートである。
【図５】実施例２の異常診断プログラムの処理の流れを示すフローチャートである。
【図６】実施例２の制御例を説明するタイムチャートである。
【図７】実施例３のアクチュエータ駆動制御システムの構成を示すブロック図である。
【図８】実施例３の異常診断プログラムの処理の流れを示すフローチャートである。
【図９】実施例３のグランドショート発生時の制御例を説明するタイムチャートである。
【図１０】実施例３の断線発生時の制御例を説明するタイムチャートである。
【符号の説明】
【００４２】
１１…制御部（第１の判定手段，第２の判定手段，第３の判定手段）、１２…ドライバ、１３…アクチュエータ。
【図１】
2005163706.tif 000003
【図２】
2005163706.tif 000004
【図３】
2005163706.tif 000005
【図４】
2005163706.tif 000006
【図５】
2005163706.tif 000007
【図６】
2005163706.tif 000008
【図７】
2005163706.tif 000009
【図８】
2005163706.tif 000010
【図９】
2005163706.tif 000011
【図１０】
2005163706.tif 000012