(57)【特許請求の範囲】
【請求項１】
複数の電気負荷にそれぞれ対応して設けられ、通電を示す論理レベルと非通電を示す論理レベルとに切り替えられる制御信号に応じて、当該制御信号が通電を示す論理レベルの時に自己に対応する電気負荷に電流を流す複数の出力手段と、
前記各出力手段へ前記制御信号をそれぞれ出力すると共に、その各制御信号の論理レベルを切り替えることにより、前記各電気負荷の通電状態を制御する制御手段と、
前記各出力手段による前記各電気負荷の実際の通電状態を示すモニタ信号をそれぞれ生成する複数のモニタ信号生成手段と、
前記制御手段から出力された前記各制御信号に対応して、前記複数のモニタ信号生成手段によりそれぞれ生成される前記各モニタ信号を、対応する前記制御信号に対して所定遅延時間分だけそれぞれ遅延させる複数の遅延手段と、
前記制御手段から出力された前記各制御信号と前記複数の遅延手段により遅延された前記各モニタ信号とに基づいて、前記各電気負荷の電流経路の異常の有無を検出するための異常検出信号を生成する検出信号生成手段と、
前記制御手段から出力された前記制御信号の変化状態と、前記検出信号生成手段により生成された異常検出信号とに基づいて、前記各電気負荷毎にその電流供給経路の異常の有無を判定する判定手段とを備えたことを特徴とする電気負荷の通電制御装置。
【請求項２】
請求項１に記載の電気負荷の通電制御装置において、前記制御手段は、前記各出力手段へ出力する制御信号の論理レベルを、予め定められた順序パターンで切り替えるように構成されており、
前記検出信号生成手段は、前記複数の遅延手段により遅延された前記各モニタ信号のうち、前記制御手段で切り替えられる前記順序パターンに対応して、前記各モニタ信号の重複するものをマスクする信号マスク手段を備え、各モニタ信号のうち重複しないものと前記各制御信号とに基づいて前記異常検出信号を生成することを特徴とする電気負荷の通電制御装置。
【請求項３】
請求項１または請求項２に記載の電気負荷の通電制御装置において、
前記検出信号生成手段は、前記制御手段から出力された前記制御信号の変化状態に応じて、前記各電気負荷の電流経路の少なくともいずれか１つの異常が継続しているときは前記異常検出信号の論理レベルを固定する論理レベル固定手段を備えたことを特徴とする電気負荷の通電制御装置。
【請求項４】
請求項１〜３のいずれか１項に記載の電気負荷の通電制御装置において、
前記遅延手段は、シフトレジスタを備えて構成されることを特徴とする電気負荷の通電制御装置。
【請求項５】
請求項１〜３のいずれか１項に記載の電気負荷の通電制御装置において、
前記遅延手段は、抵抗器とコンデンサとから成る時定数回路を備えて構成されることを特徴とする電気負荷の通電制御装置。
【請求項６】
請求項１〜５のいずれか１項に記載の電気負荷の通電制御装置において、
前記複数の電気負荷は、ステップモータの各励磁コイルであることを特徴とする電気負荷の通電制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は電気負荷の通電制御装置に係り、詳しくは、複数の電気負荷の通電状態を制御する際に、各電気負荷の電流供給経路に生じた異常を検出する機能を備えた電気負荷の通電制御装置に関するものである。
【０００２】
【従来の技術】
従来より、例えば自動車において、通電制御装置により通電状態（通電／非通電）が制御される電気負荷は、その一端が車載バッテリのプラス端子またはマイナス端子（接地端子）に接続され、他端が通電制御装置の出力端子に接続されている。
【０００３】
また、通電制御装置内には、バッテリのプラス端子またはマイナス端子と通電制御装置の出力端子との間に直列に接続された駆動用トランジスタが備えられ、その駆動用トランジスタはマイクロコンピュータからの制御信号に応じてオン・オフが制御されるようになっている。尚、電気負荷の一端がバッテリのプラス端子に接続されている場合、駆動用トランジスタはバッテリのマイナス端子と通電制御装置の出力端子との間に直列に接続される。また、電気負荷の一端がバッテリのマイナス端子に接続されている場合、駆動用トランジスタはバッテリのプラス端子と通電制御装置の出力端子との間に直列に接続される。
【０００４】
そして、マイクロコンピュータからの制御信号が電気負荷の通電を示す論理レベルのとき、駆動用トランジスタがオンして、その駆動用トランジスタにより電気負荷に電流が流れる。また、マイクロコンピュータからの制御信号が電気負荷の非通電を示す論理レベルのとき、駆動用トランジスタがオフして、電気負荷への通電が停止される。このように、マイクロコンピュータは、駆動用トランジスタへ出力する制御信号の論理レベルを切り替えることにより、電気負荷の通電状態を制御している。
【０００５】
さらに、このように構成された電気負荷の通電制御装置には、各電気負荷の電流供給経路に生じた異常を検出する機能が備えられている。
すなわち、電気負荷の抵抗値よりも非常に大きな抵抗値を有する抵抗器が、駆動用トランジスタに対して並列に接続されている。そして、抵抗器における通電制御装置の出力端子側の電圧が、電気負荷の実際の通電状態を示すモニタ信号としてマイクロコンピュータに入力されるようになっている。マイクロコンピュータは、駆動用トランジスタへ出力した制御信号とモニタ信号とを照合することにより、各電気負荷の電流供給経路に生じた異常の有無を判定する。
【０００６】
例えば、電気負荷の一端がバッテリのプラス端子と接続されている場合、駆動用トランジスタはバッテリのマイナス端子と通電制御装置の出力端子との間に直列に接続される。この場合、駆動用トランジスタと並列に接続された抵抗器も、バッテリのマイナス端子と通電制御装置の出力端子との間に直列に接続される。
【０００７】
そのため、電気負荷の電流供給経路に異常が無い場合、駆動用トランジスタのオフ時にはモニタ信号がハイレベル（ほぼバッテリ電圧）となり、駆動用トランジスタのオン時にはモニタ信号がロウレベル（ほぼ接地電圧）となる。
よって、マイクロコンピュータは、駆動用トランジスタへ非通電を示す論理レベルの制御信号を出力しているにもかかわらずモニタ信号がロウレベルの場合、電気負荷と通電制御装置の出力端子とを結ぶ配線の断線故障、電気負荷自身の断線故障、出力端子がバッテリのマイナス端子側にショートするショート故障のいずれかの故障が起こっていることを判定できる。
【０００８】
また、マイクロコンピュータは、駆動用トランジスタへ通電を示す論理レベルの制御信号を出力しているにもかかわらずモニタ信号がハイレベルの場合、駆動用トランジスタがオフしたままになるオープン故障、通電制御装置の出力端子がバッテリのプラス端子側にショートするショート故障のいずれかの故障が起こっていることを判定できる。
【０００９】
【発明が解決しようとする課題】
上記のように構成された電気負荷の通電制御装置では、通電状態を制御すべき電気負荷が複数個（Ｎ個）ある場合、その各電気負荷にそれぞれ対応して、駆動用トランジスタとモニタ信号発生用の抵抗器とをＮ個ずつ備えることとなる。そして、マイクロコンピュータからは各駆動用トランジスタへＮ個の制御信号が出力され、Ｎ個のモニタ信号がマイクロコンピュータへ入力されることとなる。よって、マイクロコンピュータが入出力すべき信号の数は、電気負荷の数の２倍となり、電気負荷の数に比例して増大することになる。
【００１０】
しかし、マイクロコンピュータの入出力ポートの数は限られているため、電気負荷の数が増えて入出力すべき信号の数が多くなると、入出力ポートが不足する上に、入出力信号の配線本数が増えて部品の実装に支障をきたすおそれがある。また、電気負荷の数が増えてモニタ信号の数が多くなると、前記異常判定処理がマイクロコンピュータの動作に対して大きな負荷となり、マイクロコンピュータによる電気負荷の通電制御に支障をきたすおそれもある。
【００１１】
ところで、複数の電気負荷がステップモータの４相の励磁コイルである場合、特開平７−９９７９６号公報に開示されるように、４相の励磁コイルの各駆動用トランジスタの制御信号を２相ずつ論理和演算を行った後に、各論理和演算結果の排他的論理和演算を行い、その排他的論理和演算結果に基づいて各励磁コイルの断線を検出する技術が提案されている。
【００１２】
ここで、例えば、自動車のエンジンの吸入空気量を調節するための電子スロットルに用いられるスロットル制御弁の開度をステップモータで制御する場合、スロットル制御弁の開度によってスプリングの反発力が変化するため、その反発力に抗してスロットル制御弁を微妙な位置に保持するようにして、スロットル制御弁の開度を精密に制御するには、ステップモータの通電方式として、トルクの大きな２相励磁と、トルクの小さな１−２相励磁とを組み合わせる必要がある。
【００１３】
しかし、上記公報に記載の技術は２相励磁に限定されるものであり、１−２相励磁に適用することはできない。そのため、上記公報に記載の技術は、例えば、自動車のスロットル制御弁の開度制御用のステップモータの通電制御装置に使用することができないという問題があった。
【００１４】
しかも、上記公報に記載の技術では、４相の励磁コイルの内のいずれかの励磁コイルの断線を判定できるだけであり、４相の励磁コイルの内のどの励磁コイルが断線しているかを特定することはできない。そのため、各励磁コイルについて断線の有無を別々に調べなければならず、多大な手間を要するという問題があった。
【００１５】
本発明は上記問題点を解決するためになされたものであって、その目的は、複数の電気負荷の通電状態を制御する際に、各電気負荷の電流供給経路に生じた異常を各電気負荷毎に確実に検出することが可能な電気負荷の通電制御装置を提供することにある。
【００１６】
【課題を解決するための手段】
かかる目的を達成するためになされた請求項１に記載の発明は、出力手段、制御手段、モニタ信号生成手段、遅延手段、検出信号生成手段、判定手段を備えている。複数の出力手段は、複数の電気負荷にそれぞれ対応して設けられ、通電を示す論理レベルと非通電を示す論理レベルとに切り替えられる制御信号に応じて、当該制御信号が通電を示す論理レベルの時に自己に対応する電気負荷に電流を流す。制御手段は、前記各出力手段へ前記制御信号をそれぞれ出力すると共に、その各制御信号の論理レベルを切り替えることにより、前記各電気負荷の通電状態を制御する。複数のモニタ信号生成手段は、前記各出力手段による前記各電気負荷の実際の通電状態を示すモニタ信号をそれぞれ生成する。複数の遅延手段は、前記制御手段から出力された前記各制御信号に対応して、前記複数のモニタ信号生成手段によりそれぞれ生成される前記各モニタ信号を、対応する前記制御信号に対して所定遅延時間分だけそれぞれ遅延させる。検出信号生成手段は、前記制御手段から出力された前記各制御信号と前記複数の遅延手段により遅延された前記各モニタ信号とに基づいて、前記各電気負荷の電流経路の異常の有無を検出するための異常検出信号を生成する。判定手段は、前記制御手段から出力された前記制御信号の変化状態と、前記検出信号生成手段により生成された異常検出信号とに基づいて、前記各電気負荷毎にその電流供給経路の異常の有無を判定する。
【００１７】
従って、本発明によれば、前記遅延手段の前記遅延時間を適宜設定することにより、前記各電気負荷の電流経路に異常がある場合は、前記検出信号生成手段の生成する異常検出信号の論理レベルが、前記制御信号の変化状態に応じた時間だけ固定になるため、前記判定手段により前記各電気負荷の電流経路の異常の有無を判定することができる。また、前記各電気負荷の電流経路に異常がある場合は、前記判定手段により前記制御手段から出力された前記制御信号の変化状態に基づいて、前記各電気負荷毎にその電流供給経路の異常の有無を検出することができる。そして、複数の電気負荷に対して１つの異常検出信号が生成され、判定手段にはその１つの異常検出信号が入力されるだけであるため、各電気負荷毎に異常検出信号を生成する場合に比べて全体の構成を単純化することができる。
【００１８】
次に、請求項２に記載の発明は、請求項１に記載の電気負荷の通電制御装置において、前記制御手段は、前記各出力手段へ出力する制御信号の論理レベルを、予め定められた順序パターンで切り替えるように構成されており、前記検出信号生成手段は、前記複数の遅延手段により遅延された前記各モニタ信号のうち、前記制御手段で切り替えられる前記順序パターンに対応して、前記各モニタ信号の重複するものをマスクする信号マスク手段を備え、各モニタ信号のうち重複しないものと前記各制御信号とに基づいて前記異常検出信号を生成する。
【００１９】
従って、本発明によれば、例えば、前記電気負荷としてステップモータの各励磁コイルの通電を制御する場合、ステップモータの通電方式として１−２相励磁と２相励磁とを切り替える際に、前記制御手段により、前記各出力手段へ出力する制御信号の論理レベルを、当該通電方式にて予め定められた順序パターンで切り替えることができる。そして、２相励磁の場合は、前記各モニタ信号のうち重複するものがあるためそれを信号マスク手段によりマスクし、前記各モニタ信号のうち重複しないものと前記各制御信号とに基づいて前記異常検出信号を生成する。
【００２０】
次に、請求項３に記載の発明は、請求項１または請求項２に記載の電気負荷の通電制御装置において、前記検出信号生成手段は、前記制御手段から出力された前記制御信号の変化状態に応じて、前記各電気負荷の電流経路の少なくともいずれか１つの異常が継続しているときは前記異常検出信号の論理レベルを固定する論理レベル固定手段を備えている。
【００２１】
従って、本発明によれば、論理レベル固定手段により、前記各電気負荷の電流経路の少なくともいずれか１つの異常が継続しているときは前記異常検出信号の論理レベルが固定される。そのため、請求項１に記載の発明のように前記制御信号の変化状態に応じた時間だけ前期異常検出信号の論理レベルが固定になる場合に比べて、本発明では、前期異常検出信号の論理レベルが固定になる時間が長くなることから、前記各電気負荷の電流経路の少なくともいずれか１つの異常の有無をより確実に判定することができる。
【００２２】
ところで、請求項４に記載の発明のように、請求項１〜３のいずれか１項に記載の電気負荷の通電制御装置において、前記遅延手段は、シフトレジスタを備えて構成されるようにしてもよい。このようにすれば、シフトレジスタを構成するＤフリップフロップの数（シフトレジスタの段数）を変更することにより、前記遅延手段の遅延時間を任意の値に設定することが可能であり、コンデンサを用いないため、通電制御装置をＩＣ化する場合に適している。
【００２３】
また、請求項５に記載の発明のように、請求項１〜３のいずれか１項に記載の電気負荷の通電制御装置において、前記遅延手段は、抵抗器とコンデンサとから成る時定数回路を備えて構成されるようにしてもよい。このようにすれば、抵抗器およびコンデンサの値を変更することにより、前記遅延手段の遅延時間を任意の値に簡単に設定することが可能であるため、通電制御装置をディスクリート構成により具体化する場合に適している。
【００２４】
また、請求項６に記載の発明のように、請求項１〜５のいずれか１項に記載の電気負荷の通電制御装置において、前記複数の電気負荷は、ステップモータの各励磁コイルとしてもよい。
尚、以下に述べる発明の実施の形態において、特許請求の範囲または課題を解決するための手段に記載の「電気負荷」はステップモータ２の各励磁コイル５〜８に相当し、同じく「出力手段」は出力回路１１〜１４に相当し、同じく「制御手段」はＣＰＵ９に相当し、同じく「モニタ信号」は出力信号ＡＯ１，Ａ／Ｏ１，ＢＯ１，Ｂ／Ｏ１に相当し、同じく「モニタ信号生成手段」はプルダウン抵抗器Ｒ１１，Ｒ２１，Ｒ３１，Ｒ４１およびバッファＢＦ１〜ＢＦ４から構成され、同じく「遅延手段」は、第１実施形態ではシフトレジスタＳＲ１〜ＳＲ４に相当し、第２，第３実施形態では抵抗器ＲＴ１〜ＲＴ４およびコンデンサＣ１〜Ｃ４から成る時定数回路に相当し、同じく「検出信号生成手段」は、第１，第２実施形態では排他的論理和回路ＥＸＯＲ１〜ＥＸＯＲ４および否定論理和回路ＮＯＲ１から構成され、第３実施形態では論理和回路ＯＲ１〜ＯＲ４および否定論理和回路ＮＯＲ１から構成され、同じく「判定手段」はＣＰＵ９のＳ２００〜Ｓ２１４，Ｓ３００〜Ｓ３２４の処理に相当し、同じく「信号マスク手段」は論理積回路ＡＮＤ１〜ＡＮＤ４に相当し、同じく「論理レベル固定手段」はＲＳフリップフロップＲＳ１１〜ＲＳ４２に相当する。
【００２５】
【発明の実施の形態】
（第１実施形態）
以下、本発明を具体化した第１実施形態を図面と共に説明する。
図１は、第１実施形態の自動車用電子制御装置（ＥＣＵ）１の構成を示す回路図である。
【００２６】
本第１実施形態のＥＣＵ１は、自動車の電子スロットルに用いられるスロットル制御弁（図示略）の開度を制御するためのステップモータ２の通電制御装置であり、各種センサ（図示略）からのセンサ信号により検出されるエンジン（図示略）の運転状態に応じてステップモータ２を制御するものである。尚、スロットル制御弁の開度によってスプリングの反発力が変化するため、その反発力に抗してスロットル制御弁を微妙な位置に保持するようにして、スロットル制御弁の開度を精密に制御するには、ステップモータ２の通電方式として、トルクの大きな２相励磁と、トルクの小さな１−２相励磁とを組み合わせる必要がある。そのため、ＥＣＵ１は、制御状態によって２相励磁と１−２相励磁とを切り替えるようになっている。
【００２７】
ステップモータには各種形式が存在するが、低速での振動を低減し、分解能を高めるために、４つの励磁コイルを備えた４相ステップモータが実用化されており、本第１実施形態においても４相ステップモータ２を用いている。
図１に示す４相ステップモータ２は、円筒形の永久磁石から成るロータ３が、円筒形のステータ４に嵌合されて構成されている。ステータ４の内面には９０゜間隔に４つの極（図示略）が設けられ、各極にそれぞれ巻回された巻線により４相の励磁コイル５〜８が形成されている。
【００２８】
Ａ相励磁コイル５とＢ相励磁コイル６とは直列に接続され、その接続点は車載バッテリ（図示略）のプラス端子（図示略）に接続されてバッテリ電圧＋Ｂが印加されている。また、Ａバー相励磁コイル７とＢバー相励磁コイル８とは直列に接続され、その接続点にはバッテリ電圧＋Ｂが印加されている。
【００２９】
尚、以下の説明文中および図面中では、Ａバーを「Ａ／」と表記し、Ｂバーを「Ｂ／」と表記する。
各励磁コイル５〜８において、バッテリ電圧＋Ｂが印加されている側とは反対側の端部はそれぞれ、自動車内の配線（ワイヤーハーネス）を介して、ＥＣＵ１の各出力端子Ｏ１，Ｏ３，Ｏ２，Ｏ４に接続されている。
【００３０】
ＥＣＵ１内において、接地ラインは車載バッテリのマイナス端子（図示略）に接続されている。
出力端子Ｏ１は、抵抗器Ｒ１１を介して接地されると共に、抵抗器Ｒ１２を介してバッファＢＦ１のプラス入力端子に接続されている。出力端子Ｏ２は、抵抗器Ｒ２１を介して接地されると共に、抵抗器Ｒ２２を介してバッファＢＦ２のプラス入力端子に接続されている。出力端子Ｏ３は、抵抗器Ｒ３１を介して接地されると共に、抵抗器Ｒ３２を介してバッファＢＦ３のプラス入力端子に接続されている。出力端子Ｏ４は、抵抗器Ｒ４１を介して接地されると共に、抵抗器Ｒ４２を介してバッファＢＦ４のプラス入力端子に接続されている。
【００３１】
バッファＢＦ１の出力信号は、４つのＤフリップフロップＦＦ１１，ＦＦ１２，ＦＦ１３，ＦＦ１４が直列に接続されて構成されたシフトレジスタＳＲ１に入力される。バッファＢＦ２の出力信号は、４つのＤフリップフロップＦＦ２１，ＦＦ２２，ＦＦ２３，ＦＦ２４が直列に接続されて構成されたシフトレジスタＳＲ２に入力される。バッファＢＦ３の出力信号は、４つのＤフリップフロップＦＦ３１，ＦＦ３２，ＦＦ３３，ＦＦ３４が直列に接続されて構成されたシフトレジスタＳＲ３に入力される。バッファＢＦ４の出力信号は、４つのＤフリップフロップＦＦ４１，ＦＦ４２，ＦＦ４３，ＦＦ４４が直列に接続されて構成されたシフトレジスタＳＲ４に入力される。
【００３２】
ＥＣＵ１には、マイクロコンピュータ（ＣＰＵ）９が設けられている。
ＣＰＵ９は、各種センサからのセンサ信号に基づいてエンジンの運転状態を検出すると共に、その検出結果に応じて、ステップモータ２の各励磁コイル５〜８の通電状態を制御するための各制御信号ＡＩ，ＢＩ，Ａ／Ｉ，Ｂ／Ｉを、非通電を示すハイレベルと通電を示すロウレベルとに切り替えて出力する。
【００３３】
ＣＰＵ９からの制御信号ＡＩはＤフリップフロップＦＦ１５に入力され、制御信号Ａ／ＩはＤフリップフロップＦＦ２５に入力され、制御信号ＢＩはＤフリップフロップＦＦ３５に入力され、制御信号Ｂ／ＩはＤフリップフロップＦＦ４５に入力される。
【００３４】
排他的論理和回路ＥＸＯＲ１は、ＤフリップフロップＦＦ１５の出力信号と、ＤフリップフロップＦＦ１３の出力信号ＡＯ１との排他的論理和演算を行い、その演算結果である出力信号ＡＦＡＩＬを生成する。
論理積回路ＡＮＤ１は、排他的論理和回路ＥＸＯＲ１の出力信号ＡＦＡＩＬと、ＤフリップフロップＦＦ２４の出力信号Ａ／Ｏ２との論理積演算を行い、その演算結果である出力信号ＡＭＯＮＩを生成する。
【００３５】
排他的論理和回路ＥＸＯＲ２は、ＤフリップフロップＦＦ２５の出力信号と、ＤフリップフロップＦＦ２３の出力信号Ａ／Ｏ１との排他的論理和演算を行い、その演算結果である出力信号Ａ／ＦＡＩＬを生成する。
論理積回路ＡＮＤ２は、排他的論理和回路ＥＸＯＲ２の出力信号Ａ／ＦＡＩＬと、ＤフリップフロップＦＦ１４の出力信号ＡＯ２との論理積演算を行い、その演算結果である出力信号Ａ／ＭＯＮＩを生成する。
【００３６】
排他的論理和回路ＥＸＯＲ３は、ＤフリップフロップＦＦ３５の出力信号と、ＤフリップフロップＦＦ３３の出力信号ＢＯ１との排他的論理和演算を行い、その演算結果である出力信号ＢＦＡＩＬを生成する。
論理積回路ＡＮＤ３は、排他的論理和回路ＥＸＯＲ３の出力信号ＢＦＡＩＬと、ＤフリップフロップＦＦ４４の出力信号Ｂ／Ｏ２との論理積演算を行い、その演算結果である出力信号ＢＭＯＮＩを生成する。
【００３７】
排他的論理和回路ＥＸＯＲ４は、ＤフリップフロップＦＦ４５の出力信号と、ＤフリップフロップＦＦ４３の出力信号Ｂ／Ｏ１との排他的論理和演算を行い、その演算結果である出力信号Ｂ／ＦＡＩＬを生成する。
論理積回路ＡＮＤ４は、排他的論理和回路ＥＸＯＲ４の出力信号Ｂ／ＦＡＩＬと、ＤフリップフロップＦＦ３４の出力信号ＢＯ２との論理積演算を行い、その演算結果である出力信号Ｂ／ＭＯＮＩを生成する。
【００３８】
否定論理和回路ＮＯＲ１は、各論理積回路ＡＮＤ１〜ＡＮＤ４の各出力信号ＡＭＯＮＩ，Ａ／ＭＯＮＩ，ＢＭＯＮＩ，Ｂ／ＭＯＮＩの否定論理和演算を行い、その演算結果である異常検出信号ＭＯＮＩを生成する。
ＣＰＵ９は、否定論理和回路ＮＯＲ１の異常検出信号ＭＯＮＩを入力ポートから入力し、その異常検出信号ＭＯＮＩに基づいて、後述するように、各励磁コイル５〜８の電流供給経路に生じた異常の有無を判定する。
【００３９】
ＥＣＵ１内には、クロックＣＬを生成するクロック発生回路１０が設けられている。そして、各シフトレジスタＳＲ１〜ＳＲ４を構成する各Ｄフリップフロップおよび各フリップフロップＦＦ１５，ＦＦ２５，ＦＦ３５，ＦＦ４５のクロック入力端子には、クロック発生回路１０からのクロックＣＬが入力されている。そのため、各Ｄフリップフロップは、クロックＣＬが立ち上がったときの入力を記憶して出力する。
【００４０】
ＥＣＵ１内において、各出力端子Ｏ１〜Ｏ４にはそれぞれ各出力回路１１〜１４が接続されている。尚、図１においては、図面が煩雑になるのを防ぐため、各出力回路１１〜１４における各トランジスタＴ１〜Ｔ４，Ｔ５〜Ｔ８の他の構成部材については図示を省略してある。
【００４１】
図２は、各出力回路１１〜１４の詳細な構成を示す回路図である。
ここでは、Ａ相励磁コイル５用の出力回路１１を代表にして説明する。
出力回路１１は、ＮＭＯＳトランジスタＴ１、ＰＭＯＳトランジスタＴ５、各抵抗器Ｒ１〜Ｒ４、各ダイオードＤ１，Ｄ２、ツェナーダイオードＤ３から構成されている。
【００４２】
トランジスタＴ１のドレインは出力端子Ｏ１とツェナーダイオードＤ３のカソードとダイオードＤ１のカソードとに接続され、トランジスタＴ１のソースは接地されると共にダイオードＤ１のアノードに接続され、トランジスタＴ１のゲートは抵抗器Ｒ１およびダイオードＤ２のカソードに接続され、各ダイオードＤ２，Ｄ３のアノードが接続されている。
【００４３】
また、トランジスタＴ５のソースはＥＣＵ用電源（図示略）に接続されて電圧ＶＣが印加されると共に各抵抗器Ｒ２，Ｒ３を介してトランジスタＴ５のゲートに接続され、トランジスタＴ５のドレインは抵抗器Ｒ４を介して接地されると共に抵抗器Ｒ１を介してトランジスタＴ１のゲートに接続されている。
【００４４】
そして、各抵抗器Ｒ２，Ｒ３の接続点はＣＰＵ９の出力ポートに接続され、制御信号ＡＩが入力されている。
このように構成されたＡ相励磁コイル５用の出力回路１１において、ＣＰＵ９からの制御信号ＡＩがロウレベル（Ａ相励磁コイル５の通電を示す論理レベル）のときは、初段トランジスタＴ５がオン状態となるため、駆動用トランジスタＴ１もオン状態となり、出力端子Ｏ１の電圧ＡＯがロウレベル（ほぼ接地電圧）になる結果、駆動用トランジスタＴ１を介してＡ相励磁コイル５から接地側へ電流が引き込まれて流れる。また、ＣＰＵ９からの制御信号ＡＩがハイレベル（Ａ相励磁コイル５の非通電を示す論理レベル）のときは、初段トランジスタＴ５がオフ状態となるため、駆動用トランジスタＴ１もオフ状態となり、出力端子Ｏ１の電圧ＡＯがハイレベル（ほぼバッテリ電圧＋Ｂ）になる結果、Ａ相励磁コイル５への通電が停止する。
【００４５】
ここで、ダイオードＤ１は、Ａ相励磁コイル５に生じた負のサージ電圧を吸収するためのフライホイールダイオードとして機能する。また、各ダイオードＤ２，Ｄ３は、Ａ相励磁コイル５に生じた正のサージ電圧を吸収するためのフライホイールダイオードとして機能する。そして、各抵抗器Ｒ２，Ｒ４は各トランジスタＴ１，Ｔ５に所定のバイアスを印加するためのバイアス用抵抗器として機能し、各抵抗器Ｒ１，Ｒ３は各トランジスタＴ１，Ｔ５のゲートに過大な電圧が印加されるのを防止して保護するための保護用抵抗器として機能する。
【００４６】
尚、各出力回路１２〜１４において、出力回路１１の構成と異なるのは以下の点である。
（１−１）出力端子Ｏ１が、各出力回路１２〜１４に対応する出力端子Ｏ２〜Ｏ４に変更される。
【００４７】
（１−２）ＣＰＵ９からの制御信号ＡＩが、各出力回路１２〜１４に対応する制御信号Ａ／Ｉ，ＢＩ，Ｂ／Ｉに変更される。
（１−３）ＮＭＯＳトランジスタＴ１が、各出力回路１２〜１４に対応するＮＭＯＳトランジスタＴ２〜Ｔ４に変更される。
【００４８】
（１−４）ＰＭＯＳトランジスタＴ５が、各出力回路１２〜１４に対応するＰＭＯＳトランジスタＴ６〜Ｔ８に変更される。
従って、各出力回路１２〜１４においても、出力回路１１と同様に、ＣＰＵ９からの制御信号Ａ／Ｉ，ＢＩ，Ｂ／Ｉに従って、各出力端子Ｏ２〜Ｏ４の電圧Ａ／Ｏ，ＢＯ，Ｂ／Ｏが制御されることにより、各励磁コイル７，６，８への通電が制御される。
【００４９】
次に、上記のように構成された本第１実施形態の動作について説明する。
各出力端子Ｏ１〜Ｏ４と接地間において、各駆動用トランジスタＴ１〜Ｔ４に対して並列に接続される各抵抗器（プルダウン抵抗器）Ｒ１１，Ｒ２１，Ｒ３１，Ｒ４１の抵抗値はそれぞれ、各励磁コイル５〜８の抵抗値よりも非常に大きな値に設定されている。
【００５０】
各バッファＢＦ１〜ＢＦ４はコンパレータにより構成され、ＥＣＵ用電源に接続されて電源として電圧ＶＣが供給され、接地ラインに接続されて片電源動作を行い、マイナス入力端子にはバッテリ電圧＋Ｂの１／２の電圧＋Ｂ／２が印加されている。そして、各バッファＢＦ１〜ＢＦ４は、各出力端子Ｏ１〜Ｏ４の電圧（ＥＣＵ１の出力信号）ＡＯ，Ａ／Ｏ，ＢＯ，Ｂ／Ｏを各抵抗器Ｒ１２，Ｒ２２，Ｒ３２，Ｒ４２を介してプラス入力端子から入力し、その電圧ＡＯ，Ａ／Ｏ，ＢＯ，Ｂ／Ｏが、マイナス入力端子に印加される電圧＋Ｂ／２よりも高い場合はハイレベル（電圧ＶＣ）の出力信号を生成し、電圧＋Ｂ／２よりも低い場合はロウレベル（接地電圧）の出力信号を生成する。尚、各バッファＢＦ１〜ＢＦ４のマイナス入力端子に印加される電圧＋Ｂ／２は各バッファＢＦ１〜ＢＦ４のしきい値電圧であり、当該しきい値電圧は電圧＋Ｂ／２に限らず実験的に求めた最適値に設定すればよい。
【００５１】
各シフトレジスタＳＲ１〜ＳＲ４において、各Ｄフリップフロップの出力信号は、ＥＣＵ１の出力信号ＡＯ，Ａ／Ｏ，ＢＯ，Ｂ／Ｏに対して、クロック発生回路１０の生成するクロックＣＬの周期に、当該Ｄフリップフロップまでに直列接続されているＤフリップフロップの個数を乗算して得られた時間分の遅延時間が生じる。
【００５２】
例えば、シフトレジスタＳＲ１において、ＤフリップフロップＦＦ１３の出力信号ＡＯ１は、出力信号ＡＯに対して、クロックＣＬの周期に、各ＤフリップフロップＦＦ１１〜ＦＦ１３の個数（＝３個）を乗算して得られた時間分の遅延時間ＴDLが生じる。ここで、ＣＰＵ９からの制御信号ＡＩと出力信号ＡＯとはほぼ同位相である。そのため、出力信号ＡＯ１は、出力信号ＡＯおよび制御信号ＡＩに対して、クロックＣＬの周期に「３」を乗算して得られた遅延時間ＴDLが生じることになる。
【００５３】
同様にして、シフトレジスタＳＲ２において、ＤフリップフロップＦＦ２３の出力信号Ａ／Ｏ１は、出力信号Ａ／Ｏおよび制御信号Ａ／Ｉに対して、クロックＣＬの周期に、各ＤフリップフロップＦＦ２１〜ＦＦ２３の個数（＝３個）を乗算して得られた遅延時間ＴDLが生じる。また、シフトレジスタＳＲ３において、ＤフリップフロップＦＦ３３の出力信号ＢＯ１は、出力信号ＢＯおよび制御信号ＢＩに対して、クロックＣＬの周期に、各ＤフリップフロップＦＦ３１〜ＦＦ３３の個数（＝３個）を乗算して得られた遅延時間ＴDLが生じる。また、シフトレジスタＳＲ４において、ＤフリップフロップＦＦ４３の出力信号Ｂ／Ｏ１は、出力信号Ｂ／Ｏおよび制御信号Ｂ／Ｉに対して、クロックＣＬの周期に、各ＤフリップフロップＦＦ４１〜ＦＦ４３の個数（＝３個）を乗算して得られた遅延時間ＴDLが生じる。
【００５４】
図３は、ステップモータ２の通電方式として１−２相励磁を用いた場合に、Ａ相励磁コイル５とＥＣＵ１の出力端子Ｏ１とを結ぶ配線の断線故障、Ａ相励磁コイル５自身の断線故障、出力端子Ｏ１が車載バッテリのマイナス端子側（接地側）にショートするショート故障のいずれかの故障が起こった後に、当該故障が回復して正常状態に復帰（正常復帰）したときのタイミングチャートである。
【００５５】
図４は、ステップモータ２の通電方式として２相励磁を用いた場合に、Ａ相励磁コイル５とＥＣＵ１の出力端子Ｏ１とを結ぶ配線の断線故障、Ａ相励磁コイル５自身の断線故障、出力端子Ｏ１が車載バッテリのマイナス端子側（接地側）にショートするショート故障のいずれかの故障が起こった後に、当該故障が回復して正常状態に復帰（正常復帰）したときのタイミングチャートである。
【００５６】
図５は、ステップモータ２の通電方式として１−２相励磁を用いた場合に、駆動用トランジスタＴ１がオフしたままになるオープン故障、ＥＣＵ１の出力端子Ｏ１が車載バッテリのプラス端子側（バッテリ電圧＋Ｂ側）にショートするショート故障のいずれかの故障が起こった後に、当該故障が回復して正常状態に復帰（正常復帰）したときのタイミングチャートである。
【００５７】
図６は、ステップモータ２の通電方式として２相励磁を用いた場合に、駆動用トランジスタＴ１がオフしたままになるオープン故障、ＥＣＵ１の出力端子Ｏ１が車載バッテリのプラス端子側（バッテリ電圧＋Ｂ側）にショートするショート故障のいずれかの故障が起こった後に、当該故障が回復して正常状態に復帰（正常復帰）したときのタイミングチャートである。
【００５８】
尚、図３〜図６において、各制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉおよび各出力信号ＡＯ，Ａ／Ｏ，ＢＯ，Ｂ／Ｏについては、「ＯＮ」が各励磁コイル５〜８の通電を表し、「ＯＦＦ」が各励磁コイル５〜８の非通電を表している。また、出力信号ＡＯ１，ＡＭＯＮＩおよび異常検出信号ＭＯＮＩについては、Ａ相励磁コイル５の電流供給経路に異常のある場合（故障時）を実線で図示し、異常の無い場合（正常時）を点線で図示してある。
【００５９】
ステップモータ２を１−２相励磁の通電方式で動作させる場合、各励磁コイル５〜８は、図３および図５に示すように、Ａ相励磁コイル５→Ａ相励磁コイル５およびＢ相励磁コイル６→Ｂ相励磁コイル６→Ｂ相励磁コイル６およびＡ／相励磁コイル７→Ａ／相励磁コイル７→Ａ／相励磁コイル７およびＢ／相励磁コイル８→Ｂ／相励磁コイル８→Ｂ／相励磁コイル８およびＡ相励磁コイル５という通電順序パターンで通電されることとなり、ＣＰＵ９から出力される４つの制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉのうちの２つ以上の論理レベルが同時に切り替えられることはない。つまり、各制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉは、１つずつ論理レベルが切り替えられていく。
【００６０】
また、ステップモータ２を２相励磁の通電方式で動作させる場合、各励磁コイル５〜８は、図４および図６に示すように、Ａ相励磁コイル５およびＢ相励磁コイル６→Ｂ相励磁コイル６およびＡ／相励磁コイル７→Ａ／相励磁コイル７およびＢ／相励磁コイル８→Ｂ／相励磁コイル８およびＡ相励磁コイル５という通電順序パターンで通電されることとなり、ＣＰＵ９から出力される４つの制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉのうちの２つの論理レベルが同時に互いに異なる状態に切り替えられる。つまり、制御信号ＡＩと制御信号Ａ／Ｉおよび制御信号ＢＩと制御信号Ｂ／Ｉとが、同時に互いに異なる論理レベルに切り替えられることになる。
【００６１】
各励磁コイル５〜８の電流供給経路に異常が無い場合、各出力信号ＡＭＯＮＩ，ＢＭＯＮＩ，Ａ／ＭＯＮＩ，Ｂ／ＭＯＮＩには、各制御信号ＡＩ，ＢＩ，Ａ／Ｉ，Ｂ／Ｉ（各出力信号ＡＯ，ＢＯ，Ａ／Ｏ，Ｂ／Ｏ）が変化するタイミングで前記遅延時間ＴDLの時間幅（例えば、数ｍｓ）分のパルス信号が発生する。
【００６２】
但し、２相励磁の場合は、出力信号ＡＭＯＮＩと出力信号Ａ／ＭＯＮＩまたは出力信号ＢＭＯＮＩと出力信号Ｂ／ＭＯＮＩがそれぞれ重複するため、各論理積回路ＡＮＤ１〜ＡＮＤ４を設けることにより、各制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉの立下がり時に発生するパルス信号をマスクすることで区別している。
【００６３】
図３および図４に示す故障時には、制御信号ＡＩがハイレベル（駆動用トランジスタＴ１の非通電を示す論理レベル）のとき、出力信号ＡＭＯＮＩがハイレベルに固定となり、異常検出信号ＭＯＮＩはロウレベルに固定となる。また、制御信号ＡＩがロウレベル（駆動用トランジスタＴ１の通電を示す論理レベル）のとき、異常検出信号ＭＯＮＩは正常時と同様にハイレベルとローレベルとを繰り返す。
【００６４】
一方、図５および図６に示す故障時には、制御信号ＡＩがロウレベル（駆動用トランジスタＴ１の通電を示す論理レベル）のとき、出力信号ＡＭＯＮＩがハイレベルに固定となり、異常検出信号ＭＯＮＩはロウレベルに固定となる。また、制御信号ＡＩがハイレベル（駆動用トランジスタＴ１の非通電を示す論理レベル）のとき、異常検出信号ＭＯＮＩは正常時と同様にハイレベルとローレベルとを繰り返す。
【００６５】
図３〜図６はＡ相励磁コイル５の電流供給経路に異常がある場合を示しているが、その他の各励磁コイル６〜８の電流供給経路に異常がある場合も同様に、異常検出信号ＭＯＮＩはロウレベルに固定になる。
従って、異常検出信号ＭＯＮＩをＣＰＵ９に取り込むことにより、ＣＰＵ９にて、異常検出信号ＭＯＮＩの状態に基づいて各励磁コイル５〜８の少なくともいずれか１つの電流供給経路に異常があるか否かを判定することが可能になり、各制御信号ＡＩ，ＢＩ，Ａ／Ｉ，Ｂ／Ｉの切り替え状態に基づいて各励磁コイル５〜８の電流供給経路のどこにどのような故障があるのかを判定することも可能になる。
【００６６】
次に、ＣＰＵ９の行う判定処理について説明する。
図７は、各励磁コイル５〜８の少なくともいずれか１つの電流供給経路に異常があるか否かを判定する異常判定処理を示すフローチャートである。
ＣＰＵ９が起動すると、内蔵ＲＯＭに記録されているプログラムに従い、コンピュータによる各種演算処理によって、以下の各ステップの処理を実行する。尚、前記プログラムをコンピュータで読み取り可能な記録媒体（半導体メモリ，ハードディスク，フロッピーディスク，データカード（ＩＣカード，磁気カードなど），光ディスク（ＣＤ−ＲＯＭ，ＤＶＤなど），光磁気ディスク（ＭＤなど），相変化ディスク，磁気テープなど）に記録しておき、当該プログラムを必要に応じてＣＰＵ９にロードして起動することにより用いるようにしてもよい。
【００６７】
まず、図７に示すステップ（以下、「Ｓ」と記載する）２００で各制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉを変化させたか否かを判定し、変化させた場合（Ｓ２００：ＹＥＳ）は、Ｓ２０１において、制御信号変化カウンタＣＯＣＨＧをクリアすると共に、異常検出信号ＭＯＮＩが変化していないことを示す仮フラグＸＯＬＨをセットし、変化させていない場合（Ｓ２００：ＮＯ）は、Ｓ２０２で制御信号変化カウンタＣＯＣＨＧをインクリメントする。
そして、Ｓ２０３で制御信号変化カウンタＣＯＣＨＧが所定カウント値（例えば、２ｍｓ）を越えたか否かを判定し、所定カウント値内の場合（Ｓ２０３：ＹＥＳ）は、Ｓ２０４でその所定カウント値内の異常検出信号ＭＯＮＩのロウレベルからハイレベルへの変化（Ｌ→Ｈ）を判定し、変化があった場合（Ｓ２０４：ＹＥＳ）は、Ｓ２０５において、Ｓ２０１でセットした仮フラグＸＯＬＨをクリアすると共に、どの制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉの変化で異常検出信号ＭＯＮＩの変化があったのかを、制御信号名（＝ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉ）と当該制御信号の論理レベルとに対応したフラグ（ＸＯ****）をセットする。ここで、Ｓ２０３にて制御信号変化カウンタＣＯＣＨＧが所定カウント値以下か否かを判定するのは、制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉの変化後に一定時間（例えば、１ｍｓ）だけ異常検出信号ＭＯＮＩがロウレベルになるためである。
【００６８】
Ｓ２０３で制御信号変化カウンタＣＯＣＨＧが所定カウント値を越える場合（Ｓ２０３：ＮＯ）は、Ｓ２０６でその所定カウント値以上経過後の仮フラグＸＯＬＨを判定し、仮フラグＸＯＬＨがセットされている場合（Ｓ２０６：ＹＥＳ）は、Ｓ２０７において、異常検出信号ＭＯＮＩが変化しない時間を表す異常検出信号変化無カウンタＣＤＬＨをインクリメントし、制御信号変化カウンタＣＯＣＨＧが所定カウント値以上の間に異常検出信号変化無カウンタＣＤＬＨを１カウントだけインクリメントするために、仮フラグＸＯＬＨをクリアする。
【００６９】
Ｓ２０６で仮フラグＸＯＬＨがクリアされている場合（Ｓ２０６：ＮＯ）は、Ｓ２０８において、Ｓ２０５でセットした制御信号名（＝ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉ）と当該制御信号の論理レベルとに対応したフラグ（ＸＯ****）が全てセットされているか否かを判定し、セットされている場合（Ｓ２０８：ＹＥＳ）は、Ｓ２０９で故障が回復して正常状態に復帰（正常復帰）したとして、Ｓ２０５でセットしたフラグ（ＸＯ****）を全てクリアし、異常検出信号変化無カウンタＣＤＬＨをクリアし、ステップモータ２の位置変化が無い状態が続いたときの異常で異常検出信号ＭＯＮＩがロウレベルを継続したときのための異常カウンタＣＤＭＯＮＩをクリアする。
【００７０】
そして、Ｓ２１０において、ステップモータ２の位置変化が無い状態が続いたときに異常検出信号ＭＯＮＩがロウレベルを継続したときを考慮して、異常検出信号ＭＯＮＩがロウレベルか否かを判定する。異常検出信号ＭＯＮＩがロウレベルの場合（Ｓ２１０：ＹＥＳ）は、Ｓ２１１で異常カウンタＣＤＭＯＮＩをインクリメントする。異常検出信号ＭＯＮＩがハイレベルの場合（Ｓ２１０：ＮＯ）は、Ｓ２１２において、前記正常復帰までに加算された異常カウンタＣＤＭＯＮＩが所定カウント値（例えば、５００ｍｓ）を越えたか否かを判定し、越えた場合（Ｓ２１２：ＹＥＳ）は、Ｓ２１４において、各励磁コイル５〜８の少なくともいずれか１つの電流供給経路に異常があることを表す異常フラグＸＤＭＯＮＩをセットする。
【００７１】
Ｓ２１２で否定判断された場合（Ｓ２１２：ＮＯ）は、Ｓ２１３において、前記正常復帰までに各制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉを変化させたにもかかわらず異常検出信号ＭＯＮＩが変化しない時間（回数）を表す異常信号変化無カウンタＣＤＬＨが所定カウント値（例えば、１６回）を越えたか否かを判定し、越えた場合（Ｓ２１３：ＹＥＳ）はＳ２１４で異常フラグＸＤＭＯＮＩをセットし、越えない場合（Ｓ２１３：ＮＯ）はＳ２１５で異常フラグＸＤＭＯＮＩをクリアして、以上の異常判定処理を終了する。
【００７２】
このように、異常判定処理においては、各制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉの変化に対して異常検出信号ＭＯＮＩが変化しない時間（回数）を表す異常信号変化無カウンタＣＤＬＨが所定カウント値（例えば、１６回）を越えた場合（Ｓ２１３：ＹＥＳ）と、異常検出信号ＭＯＮＩのロウレベルが継続している時間を表す異常カウンタＣＤＭＯＮＩが所定カウント値（例えば、５００ｍｓ）を越えた場合（Ｓ２１２：ＹＥＳ）との両方の場合で、各励磁コイル５〜８の少なくともいずれか１つの電流供給経路に異常があることを表す異常フラグＸＤＭＯＮＩをセットする。
【００７３】
つまり、各制御信号ＡＩ，ＢＩ，Ａ／Ｉ，Ｂ／Ｉの変化が頻繁にある場合は、異常信号変化無カウンタＣＤＬＨがいち早く所定カウント値を越えるため、異常フラグＸＤＭＯＮＩもいち早くセットされることから、各励磁コイル５〜８の少なくともいずれか１つの電流供給経路に異常があることを速やかに判定することができる。また、各制御信号ＡＩ，ＢＩ，Ａ／Ｉ，Ｂ／Ｉの変化があまり無い場合でも、異常カウンタＣＤＭＯＮＩが所定カウント値を越えれば、異常フラグＸＤＭＯＮＩがセットされることから、各励磁コイル５〜８の少なくともいずれか１つの電流供給経路に異常があることを確実に判定することができる。
【００７４】
尚、異常信号変化無カウンタＣＤＬＨの前記所定カウント値（例えば、１６回）および異常カウンタＣＤＭＯＮＩの所定カウント値（例えば、５００ｍｓ）は、実験的に求めた最適値に設定すればよい。
ここで、前記正常復帰のための異常検出信号ＭＯＮＩの変化があった場合に、Ｓ２０５にて前記フラグ（ＸＯ****）をセットする際に、ステップモータ２の通電方式が２相励磁の場合は、各制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉのうちの制御信号ＡＩと制御信号Ａ／Ｉおよび制御信号ＢＩと制御信号Ｂ／Ｉとが同時に互いに異なる状態に切り替えられるが、前記フラグ（ＸＯ****）は制御信号の論理レベルに関係なく（すなわち、通電（０Ｎ）を示す論理レベルであるロウレベルと、非通電（ＯＦＦ）を示す論理レベルであるハイレベルとの両方共に）セットすればよい。その理由は、否定論理和回路ＮＯＲ１が設けられているために、各出力信号ＡＭＯＮＩ，ＢＭＯＮＩ，Ａ／ＭＯＮＩ，Ｂ／ＭＯＮＩのいずれかが異常を表す場合は異常検出信号ＭＯＮＩがロウレベルになり、各励磁コイル５〜８の少なくともいずれか１つの電流供給経路に異常があることを確実に判定できるためである。
【００７５】
図８は、各励磁コイル５〜８の電流供給経路のどこにどのような故障があるのかを判定する異常箇所特定処理を示すフローチャートである。
ＣＰＵ９が起動すると、内蔵ＲＯＭに記録されているプログラムに従い、コンピュータによる各種演算処理によって、以下の各ステップの処理を実行する。
【００７６】
まず、Ｓ３００で異常検出信号ＭＯＮＩがロウレベルか否かを判定し、ロウレベルの場合（Ｓ３００：ＹＥＳ）は異常カウンタカウンタＣＬＥＶをインクリメントし、ハイレベルの場合（Ｓ３００：ＮＯ）は異常カウンタカウンタＣＬＥＶをクリアする。
【００７７】
そして、Ｓ３０３で異常カウンタＣＬＥＶが所定カウント値（例えば、８ｍｓ）を越えているか否かを判定し、越えている場合（Ｓ３０３：ＹＥＳ）は、各励磁コイル５〜８の少なくともいずれか１つの電流供給経路に異常があることを表す異常フラグＸＬＥＶをセットする。
【００７８】
次に、Ｓ３０５で各制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉを変化させたか否かを判定し、変化させた場合（Ｓ３０５：ＹＥＳ）は、Ｓ３０６で異常検出信号ＭＯＮＩのロウレベルからハイレベルへの変化（Ｌ→Ｈ）を判定し、変化があった場合（Ｓ３０６：ＹＥＳ）は、Ｓ３０７で異常フラグＸＬＥＶがセットされているか否かを判定し、セットされている場合（Ｓ３０７：ＹＥＳ）は、各制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉの変化により前記正常復帰が行われたとして、Ｓ３０８で異常フラグＸＬＥＶをクリアする。
【００７９】
そして、Ｓ３０９〜Ｓ３１６にて判明した制御信号ＡＩ，ＢＩ，Ａ／Ｉ，Ｂ／Ｉの変化内容に基づいて、Ｓ３１７〜Ｓ３２４にて各励磁コイル５〜８の電流供給経路のどこにどのような故障があるのかを判定する。尚、実際の処理では、Ｓ３０９〜Ｓ３１６の各ステップの処理が順番に行われて制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉの変化内容が判明するが、図８においては、図面が煩雑になるのを防ぐため、Ｓ３０９〜Ｓ３１６を並列に図示してある。
【００８０】
Ｓ３０９で制御信号ＡＩが非通電（ＯＦＦ）を示す論理レベルであるハイレベルから通電（０Ｎ）を示す論理レベルであるロウレベルに切り替えられたことが判明した場合（ＯＦＦ→ＯＮ）は、Ｓ３１７において、Ａ相励磁コイル５とＥＣＵ１の出力端子Ｏ１とを結ぶ配線の断線故障、Ａ相励磁コイル５自身の断線故障、出力端子Ｏ１が車載バッテリのマイナス端子側（接地側）にショートするショート故障（ＧＮＤショート）のいずれかの故障が起こったと判定する。
【００８１】
Ｓ３１０で制御信号Ａ／Ｉが非通電（ＯＦＦ）を示す論理レベルであるハイレベルから通電（０Ｎ）を示す論理レベルであるロウレベルに切り替えられたことが判明した場合（ＯＦＦ→ＯＮ）は、Ｓ３１８において、Ａ／相励磁コイル７とＥＣＵ１の出力端子Ｏ２とを結ぶ配線の断線故障、Ａ／相励磁コイル７自身の断線故障、出力端子Ｏ２が車載バッテリのマイナス端子側（接地側）にショートするショート故障（ＧＮＤショート）のいずれかの故障が起こったと判定する。
【００８２】
Ｓ３１１で制御信号ＢＩが非通電（ＯＦＦ）を示す論理レベルであるハイレベルから通電（０Ｎ）を示す論理レベルであるロウレベルに切り替えられたことが判明した場合（ＯＦＦ→ＯＮ）は、Ｓ３１９において、Ｂ相励磁コイル６とＥＣＵ１の出力端子Ｏ３とを結ぶ配線の断線故障、Ｂ相励磁コイル６自身の断線故障、出力端子Ｏ３が車載バッテリのマイナス端子側（接地側）にショートするショート故障（ＧＮＤショート）のいずれかの故障が起こったと判定する。
【００８３】
Ｓ３１２で制御信号Ｂ／Ｉが非通電（ＯＦＦ）を示す論理レベルであるハイレベルから通電（０Ｎ）を示す論理レベルであるロウレベルに切り替えられたことが判明した場合（ＯＦＦ→ＯＮ）は、Ｓ３２０において、Ｂ／相励磁コイル８とＥＣＵ１の出力端子Ｏ４とを結ぶ配線の断線故障、Ｂ／相励磁コイル８自身の断線故障、出力端子Ｏ４が車載バッテリのマイナス端子側（接地側）にショートするショート故障（ＧＮＤショート）のいずれかの故障が起こったと判定する。
【００８４】
Ｓ３１３で制御信号ＡＩが通電（ＯＮ）を示す論理レベルであるロウレベルから通電（０ＦＦ）を示す論理レベルであるハイレベルに切り替えられたことが判明した場合（ＯＮ→ＯＦＦ）は、Ｓ３２１において、駆動用トランジスタＴ１がオフしたままになるオープン故障、ＥＣＵ１の出力端子Ｏ１が車載バッテリのプラス端子側（バッテリ電圧＋Ｂ側）にショートするショート故障（＋Ｂショート）のいずれかの故障が起こったと判定する。
【００８５】
Ｓ３１４で制御信号Ａ／Ｉが通電（ＯＮ）を示す論理レベルであるロウレベルから通電（０ＦＦ）を示す論理レベルであるハイレベルに切り替えられたことが判明した場合（ＯＮ→ＯＦＦ）は、Ｓ３２２において、駆動用トランジスタＴ２がオフしたままになるオープン故障、ＥＣＵ１の出力端子Ｏ２が車載バッテリのプラス端子側（バッテリ電圧＋Ｂ側）にショートするショート故障（＋Ｂショート）のいずれかの故障が起こったと判定する。
【００８６】
Ｓ３１５で制御信号ＢＩが通電（ＯＮ）を示す論理レベルであるロウレベルから通電（０ＦＦ）を示す論理レベルであるハイレベルに切り替えられたことが判明した場合（ＯＮ→ＯＦＦ）は、Ｓ３２３において、駆動用トランジスタＴ３がオフしたままになるオープン故障、ＥＣＵ１の出力端子Ｏ３が車載バッテリのプラス端子側（バッテリ電圧＋Ｂ側）にショートするショート故障（＋Ｂショート）のいずれかの故障が起こったと判定する。
【００８７】
Ｓ３１６で制御信号Ａ／Ｉが通電（ＯＮ）を示す論理レベルであるロウレベルから通電（０ＦＦ）を示す論理レベルであるハイレベルに切り替えられたことが判明した場合（ＯＮ→ＯＦＦ）は、Ｓ３２４において、駆動用トランジスタＴ４がオフしたままになるオープン故障、ＥＣＵ１の出力端子Ｏ４が車載バッテリのプラス端子側（バッテリ電圧＋Ｂ側）にショートするショート故障（＋Ｂショート）のいずれかの故障が起こったと判定する。
【００８８】
このように、異常箇所特定処理においては、図３および図４に例示するように、任意の制御信号がハイレベルのときに対応する励磁コイルの電流供給経路に異常がある場合、当該制御信号がロウレベルのときは異常検出信号ＭＯＮＩが正常時と同じ状態になり、図５および図６に例示するように、任意の制御信号がロウレベルのときに対応する磁コイルの電流供給経路に異常がある場合、当該制御信号がハイレベルのときは異常検出信号ＭＯＮＩが正常時と同じ状態になることから、前記正常復帰したタイミングにおける制御信号ＡＩ，ＢＩ，Ａ／Ｉ，Ｂ／Ｉの論理レベルの変化状態に基づいて、各励磁コイル５〜８の電流供給経路のどこにどのような故障があるのかを確実に判定している。
【００８９】
上述のように、本第１実施形態においては、各励磁コイル５〜８の少なくともいずれか１つの電流供給経路に異常があるか否かを異常判定処理により確実に判定した上で、各励磁コイル５〜８の電流供給経路のどこにどのような故障があるのかを異常箇所特定処理により判定するようにしている。
【００９０】
以上詳述したように、本第１実施形態によれば、ステップモータ２の４相の各励磁コイル５〜８に対して、異常検出信号ＭＯＮＩが入力されるＣＰＵ９の入力ポートを１つ設けるだけでよいため、ＣＰＵ９に対する異常検出信号の配線本数が増えて部品の実装に支障をきたすのを防止することができる。また、ＣＰＵ９は各励磁コイル５〜８の電流供給経路のどこにどのような故障があるのかを確実に判定することが可能であり、その判定処理（異常箇所特定処理）は簡単かつ容易であるため、当該判定処理がＣＰＵ９の動作に対して大きな負荷となることはなく、ＣＰＵ９によるステップモータ２の通電制御に支障をきたすこともない。
【００９１】
そして、本第１実施形態によれば、ステップモータ２の通電方式の１−２相励磁と２相励磁との両方に適用可能であるため、自動車のエンジンの吸入空気量を調節するための電子スロットルに用いられるスロットル制御弁の開度をステップモータ２で制御する際に、トルクの大きな２相励磁と、トルクの小さな１−２相励磁とを組み合わせて、スロットル制御弁の開度を精密に制御することができる。
【００９２】
（第２実施形態）
次に、本発明を具体化した第２実施形態を図面と共に説明する。尚、本第２実施形態において、第１実施形態と同じ構成部材については符号を等しくしてその詳細な説明を省略する。
【００９３】
図９は、第２実施形態の自動車用電子制御装置（ＥＣＵ）５１の構成を示す回路図である。尚、図９においては、図面が煩雑になるのを防ぐため、Ａ相励磁コイル５に対応する構成部分のみを図示し、その他の各励磁コイル６〜８に対応する構成部分について図示を省略してある。
【００９４】
本第２実施形態のＥＣＵ５１において、第１実施形態のＥＣＵ１と異なるのは以下の点である。
（２−１）バッファＢＦ１の入力側に抵抗器ＲＴ１およびコンデンサＣ１から成る時定数回路が設けられている。すなわち、出力端子Ｏ１は、抵抗器Ｒ１１を介して接地されると共に、各抵抗器Ｒ１２，ＲＴ１を介してバッファＢＦ１のプラス入力端子に接続されている。また、各抵抗器Ｒ１２，ＲＴ１の接続点はコンデンサＣ１を介して接地されている。
【００９５】
（２−２）排他的論理和回路ＥＸＯＲ１は、ＣＰＵ９からの制御信号ＡＩと、バッファＢＦ１の出力信号ＡＯ１との排他的論理和演算を行い、その演算結果である出力信号ＡＦＡＩＬを生成する。
（２−３）バッファＢＦ１と同様に、各バッファＢＦ２〜ＢＦ４（図示略。図１参照）の入力側にはそれぞれ抵抗器ＲＴ２〜ＲＴ４（図示略）およびコンデンサＣ２〜Ｃ４（図示略）から成る時定数回路が設けられている。
【００９６】
（２−４）排他的論理和回路ＥＸＯＲ１と同様に、各排他的論理和回路ＥＸＯＲ２〜ＥＸＯＲ４（図示略。図１参照）は、ＣＰＵ９からの制御信号Ａ／Ｉ，ＢＩ，Ｂ／Ｉと、バッファＢＦ２〜ＢＦ４（図示略）の出力信号Ａ／Ｏ１，ＢＯ１，Ｂ／Ｏ１との排他的論理和演算を行い、その演算結果である出力信号Ａ／ＦＡＩＬ，ＢＦＡＩＬ，Ｂ／ＦＡＩＬを生成する。
【００９７】
（２−５）否定論理和回路ＮＯＲ１は、各排他的論理和回路ＥＸＯＲ１〜ＥＸＯＲ４の各出力信号ＡＦＡＩＬ，Ａ／ＦＡＩＬ，ＢＦＡＩＬ，Ｂ／ＦＡＩＬの否定論理和演算を行い、その演算結果である異常検出信号ＭＯＮＩを生成する。
図１０は、Ａ相励磁コイル５とＥＣＵ５１の出力端子Ｏ１とを結ぶ配線の断線故障、Ａ相励磁コイル５自身の断線故障、出力端子Ｏ１が車載バッテリのマイナス端子側（接地側）にショートするショート故障のいずれかの故障が起こった後に、当該故障が回復して正常状態に復帰（正常復帰）したときのタイミングチャートである。尚、図１０において、出力信号ＡＯについては、「ＯＮ」が各励磁コイル５の通電を表し、「ＯＦＦ」が励磁コイル５の非通電を表している。また、出力信号ＡＯ，ＡＯ１，ＡＦＡＩＬおよび異常検出信号ＭＯＮＩについては、Ａ相励磁コイル５の電流供給経路に異常のある場合（故障時）を実線で図示し、異常の無い場合（正常時）を点線で図示してある。
【００９８】
バッファＢＦ１は、出力端子Ｏ１の電圧（ＥＣＵ５１の出力信号）ＡＯを抵抗器ＲＴ１およびコンデンサＣ１から成る時定数回路と抵抗器Ｒ１２とを介してプラス入力端子から入力し、その電圧ＡＯが、マイナス入力端子に印加される前記しきい値電圧＋Ｂ／２よりも高い場合はハイレベル（電圧ＶＣ）の出力信号を生成し、前記しきい値電圧＋Ｂ／２よりも低い場合はロウレベル（接地電圧）の出力信号を生成する。
【００９９】
そのため、バッファＢＦ１の出力信号ＡＯ１は、出力信号ＡＯおよび制御信号ＡＩに対して、抵抗器ＲＴ１およびコンデンサＣ１から成る時定数回路により設定される遅延時間ｔが生じる。
従って、励磁コイル５の電流供給経路に異常が無い場合、出力信号ＡＦＡＩＬには、制御信号ＡＩ（出力信号ＡＯ）が変化するタイミングで前記遅延時間ｔの時間幅（例えば、数ｍｓ）分のパルス信号が発生する。そして、図１０に示す故障時には、制御信号ＡＩがハイレベル（駆動用トランジスタＴ１の非通電を示す論理レベル）のとき、出力信号ＡＦＡＩＬがハイレベルに固定となり、異常検出信号ＭＯＮＩはロウレベルに固定となる。また、制御信号ＡＩがロウレベル（駆動用トランジスタＴ１の通電を示す論理レベル）のとき、異常検出信号ＭＯＮＩは正常時と同様にハイレベルとローレベルとを繰り返す。
【０１００】
尚、バッファＢＦ１の出力信号ＡＯ１と同様に、各バッファＢＦ２〜ＢＦ４の出力信号Ａ／Ｏ１，ＢＯ１，Ｂ／Ｏ１についても、出力信号Ａ／Ｏ，ＢＯ，Ｂ／Ｏおよび制御信号Ａ／Ｉ，ＢＩ，Ｂ／Ｉに対して、抵抗器ＲＴ２〜ＲＴ４およびコンデンサＣ２〜Ｃ４から成る時定数回路により設定される遅延時間ｔが生じる。
【０１０１】
そのため、各励磁コイル６〜８の電流供給経路に異常が無い場合、出力信号Ａ／ＦＡＩＬ，ＢＦＡＩＬ，Ｂ／ＦＡＩＬにも、制御信号Ａ／Ｉ，ＢＩ，Ｂ／Ｉ（出力信号Ａ／Ｏ，ＢＯ，Ｂ／Ｏ）が変化するタイミングで前記遅延時間ｔの時間幅（例えば、数ｍｓ）分のパルス信号が発生する。
【０１０２】
そして、各励磁コイル６〜８の電流供給経路に前記故障が起こったときには、制御信号Ａ／Ｉ，ＢＩ，Ｂ／Ｉがハイレベル（駆動用トランジスタＴ２〜Ｔ４の非通電を示す論理レベル）のとき、出力信号Ａ／ＦＡＩＬ，ＢＦＡＩＬ，Ｂ／ＦＡＩＬがハイレベルに固定となり、異常検出信号ＭＯＮＩはロウレベルに固定となる。また、制御信号Ａ／Ｉ，ＢＩ，Ｂ／Ｉがロウレベル（駆動用トランジスタＴ２〜Ｔ４の通電を示す論理レベル）のとき、異常検出信号ＭＯＮＩは正常時と同様にハイレベルとローレベルとを繰り返す。
【０１０３】
また、各駆動用トランジスタＴ１〜Ｔ４がオフしたままになるオープン故障、ＥＣＵ５１の出力端子Ｏ１〜Ｏ４が車載バッテリのプラス端子側（バッテリ電圧＋Ｂ側）にショートするショート故障のいずれかの故障が起こったときは、制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉがロウレベル（駆動用トランジスタＴ１〜Ｔ４の通電を示す論理レベル）のとき、出力信号ＡＦＡＩＬ，Ａ／ＦＡＩＬ，ＢＦＡＩＬ，Ｂ／ＦＡＩＬがハイレベルに固定となり、異常検出信号ＭＯＮＩはロウレベルに固定となる。また、制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉがハイレベル（駆動用トランジスタＴ１〜Ｔ４の非通電を示す論理レベル）のとき、異常検出信号ＭＯＮＩは正常時と同様にハイレベルとローレベルとを繰り返す。
【０１０４】
従って、本第２実施形態においても、第１実施形態と同様に、異常検出信号ＭＯＮＩをＣＰＵ９に取り込むことにより、ＣＰＵ９における異常判定処理（図７参照）にて、異常検出信号ＭＯＮＩの状態に基づいて各励磁コイル５〜８の少なくともいずれか１つの電流供給経路に異常があるか否かを判定することができる。また、ＣＰＵ９における異常箇所特定処理（図８参照）にて、各制御信号ＡＩ，ＢＩ，Ａ／Ｉ，Ｂ／Ｉの切り替え状態に基づいて各励磁コイル５〜８の電流供給経路のどこにどのような故障があるのかを判定することができる。
【０１０５】
このように、本第２実施形態においては、抵抗器ＲＴ１〜ＲＴ４およびコンデンサＣ１〜Ｃ４から成る時定数回路により出力信号ＡＯ１，Ａ／Ｏ１，ＢＯ１，Ｂ／Ｏ１に遅延時間ｔを発生させている。それに対して、第１実施形態においては、各シフトレジスタＳＲ１〜ＳＲ４により出力信号ＡＯ１，Ａ／Ｏ１，ＢＯ１，Ｂ／Ｏ１に遅延時間ＴDLを発生させている。従って、本第２実施形態においても、第１実施形態と同様の作用・効果を得ることができる。
【０１０６】
ところで、本第２実施形態では、抵抗器ＲＴ１〜ＲＴ４およびコンデンサＣ１〜Ｃ４の値を変更することにより、遅延時間ｔを任意の値に簡単に設定することが可能であるため、ＥＣＵ５１をディスクリート構成により具体化する場合に適している。それに対して、第１実施形態では、各シフトレジスタＳＲ１〜ＳＲ４を構成するＤフリップフロップの数（各シフトレジスタＳＲ１〜ＳＲ４の段数）を変更することにより遅延時間ＴDLを設定するため、遅延時間ｔDLを簡単に変更することが難しい反面、コンデンサＣ１〜Ｃ４を用いないため、ＥＣＵ１をＩＣ化する場合に適している。
【０１０７】
（第３実施形態）
次に、本発明を具体化した第３実施形態を図面と共に説明する。尚、本第３実施形態において、第２実施形態と同じ構成部材については符号を等しくしてその詳細な説明を省略する。
【０１０８】
図１１は、第３実施形態の自動車用電子制御装置（ＥＣＵ）６１の構成を示す回路図である。尚、図１１においては、図面が煩雑になるのを防ぐため、Ａ相励磁コイル５に対応する構成部分のみを図示し、その他の各励磁コイル６〜８に対応する構成部分について図示を省略してある。
【０１０９】
本第３実施形態のＥＣＵ６１において、第２実施形態のＥＣＵ５１と異なるのは以下の点である。
（３−１）ＣＰＵ９からの制御信号ＡＩは、セット・リセット（ＲＳ）フリップフロップＲＳ１１のセット信号入力端子Ｓに入力されると共に、セット・リセット（ＲＳ）フリップフロップＲＳ１２のセット信号反転入力端子Ｓ’に入力される。
【０１１０】
（３−２）バッファＢＦ１の出力信号ＡＯ１は、ＲＳフリップフロップＲＳ１１のリセット信号入力端子Ｒに入力されると共に、ＲＳフリップフロップＲＳ１２のリセット信号反転入力端子Ｒ’に入力される。
（３−３）論理和回路ＯＲ１は、各ＲＳフリップフロップＲＳ１１，ＲＳ１２の各出力端子Ｑ，Ｑ’からの各出力信号ＡＱ，ＡＱ’の論理和演算を行い、その演算結果である出力信号ＡＦＡＩＬを生成する。
【０１１１】
（３−４）制御信号ＡＩと同様に、ＣＰＵ９からの各制御信号Ａ／Ｉ，ＢＩ／Ｂ／Ｉは、ＲＳフリップフロップＲＳ２１，ＲＳ３１，ＲＳ４１（図示略）のセット信号入力端子Ｓに入力されると共に、ＲＳフリップフロップＲＳ２２，ＲＳ３２，ＲＳ４２（図示略）のセット信号反転入力端子Ｓ’に入力される。
【０１１２】
（３−５）出力信号ＡＯ１と同様に、各バッファＢＦ２〜ＢＦ４の出力信号Ａ／Ｏ１，ＢＯ１，Ｂ／Ｏ１は、ＲＳフリップフロップＲＳ２１，ＲＳ３１，ＲＳ４１のリセット信号入力端子Ｒに入力されると共に、ＲＳフリップフロップＲＳ２２，３２，４２のリセット信号反転入力端子Ｒ’に入力される。
【０１１３】
（３−６）論理和回路ＯＲ１と同様に、論理和回路ＯＲ２（図示略）は各ＲＳフリップフロップＲＳ２１，ＲＳ２２の各出力端子Ｑ，Ｑ’からの各出力信号Ａ／Ｑ，Ａ／Ｑ’の論理和演算を行って出力信号Ａ／ＦＡＩＬを生成し、論理和回路ＯＲ３（図示略）は各ＲＳフリップフロップＲＳ３１，ＲＳ３２の各出力端子Ｑ，Ｑ’からの各出力信号ＢＱ，ＢＱ’の論理和演算を行って出力信号ＢＦＡＩＬを生成し、論理和回路ＯＲ４（図示略）は各ＲＳフリップフロップＲＳ４１，ＲＳ４２の各出力端子Ｑ，Ｑ’からの各出力信号Ｂ／Ｑ，Ｂ／Ｑ’の論理和演算を行って出力信号Ｂ／ＦＡＩＬを生成する。
【０１１４】
図１２は、Ａ相励磁コイル５とＥＣＵ６１の出力端子Ｏ１とを結ぶ配線の断線故障、Ａ相励磁コイル５自身の断線故障、出力端子Ｏ１が車載バッテリのマイナス端子側（接地側）にショートするショート故障のいずれかの故障が起こった後に、当該故障が回復して正常状態に復帰（正常復帰）したときのタイミングチャートである。尚、図１２において、出力信号ＡＯについては、「ＯＮ」が各励磁コイル５の通電を表し、「ＯＦＦ」が励磁コイル５の非通電を表している。また、出力信号ＡＯ，ＡＯ１，ＡＱ，ＡＱ’，ＡＦＡＩＬとリセット信号反転入力端子Ｒ’の入力信号および異常検出信号ＭＯＮＩについては、Ａ相励磁コイル５の電流供給経路に異常のある場合（故障時）を実線で図示し、異常の無い場合（正常時）を点線で図示してある。
【０１１５】
励磁コイル５の電流供給経路に異常が無い場合、制御信号ＡＩの立ち上がりエッジでＲＳフリップフロップＲＳ１１がセットされた後に、前記遅延時間ｔが経過すると、出力信号ＡＯ１の立ち上がりエッジでＲＳフリップフロップＲＳ１１がリセットされるため、ＲＳフリップフロップＲＳ１１の出力信号ＡＱには前記遅延時間ｔの時間幅のパルス信号が発生する。また、制御信号ＡＩの立ち下がりエッジ（セット信号反転入力端子Ｓ’の入力信号の立ち上がりエッジ）でＲＳフリップフロップＲＳ１２がセットされた後に、前記遅延時間ｔが経過すると、出力信号ＡＯ１の立ち下がりエッジ（リセット信号反転入力端子Ｒ’の入力信号の立ち上がりエッジ）でＲＳフリップフロップＲＳ１２がリセットされるため、ＲＳフリップフロップＲＳ１２の出力信号ＡＱ’には前記遅延時間ｔの時間幅のパルス信号が発生する。
【０１１６】
従って、励磁コイル５の電流供給経路に異常が無い場合、出力信号ＡＦＡＩＬには、制御信号ＡＩ（出力信号ＡＯ）が変化するタイミングで前記遅延時間ｔの時間幅分のパルス信号が発生する。
そして、図１２に示す故障時には、故障発生後に制御信号ＡＩの立ち下がりエッジでＲＳフリップフロップＲＳ１２がセットされてから、正常復帰後の出力信号ＡＯ１の立ち下がりエッジでＲＳフリップフロップＲＳ１２がリセットされるまでの間、ＲＳフリップフロップＲＳ１２の出力信号ＡＱ’がハイレベルに固定となるため、論理和回路ＯＲ１の出力信号ＡＦＡＩＬもハイレベルに固定となり、異常検出信号ＭＯＮＩはロウレベルに固定となる。
【０１１７】
尚、各励磁コイル６〜８の電流供給経路に異常が無い場合も、各論理和回路ＯＲ２〜ＯＲ４の出力信号Ａ／ＦＡＩＬ，ＢＦＡＩＬ，Ｂ／ＦＡＩＬには、制御信号Ａ／Ｉ，ＢＩ，Ｂ／Ｉ（出力信号Ａ／Ｏ，ＢＯ，Ｂ／Ｏ）が変化するタイミングで前記遅延時間ｔの時間幅分のパルス信号が発生する。
【０１１８】
そして、各励磁コイル６〜８の電流供給経路に前記故障が起こったときには、故障発生後に制御信号Ａ／Ｉ，ＢＩ，Ｂ／Ｉの立ち上がりエッジまたは立ち下がりエッジから、正常復帰後の出力信号Ａ／Ｏ１，ＢＯ１，Ｂ／Ｏ１の立ち上がりエッジまたは立ち下がりエッジまでの間、各論理和回路ＯＲ２〜ＯＲ４の出力信号Ａ／ＦＡＩＬ，ＢＦＡＩＬ，Ｂ／ＦＡＩＬもハイレベルに固定となり、異常検出信号ＭＯＮＩはロウレベルに固定となる。
【０１１９】
また、各駆動用トランジスタＴ１〜Ｔ４がオフしたままになるオープン故障、ＥＣＵ６１の出力端子Ｏ１〜Ｏ４が車載バッテリのプラス端子側（バッテリ電圧＋Ｂ側）にショートするショート故障のいずれかの故障が起こったときも、故障発生後に制御信号ＡＩ，Ａ／Ｉ，ＢＩ，Ｂ／Ｉの立ち上がりエッジまたは立ち下がりエッジから、正常復帰後の出力信号ＡＯ１，Ａ／Ｏ１，ＢＯ１，Ｂ／Ｏ１の立ち上がりエッジまたは立ち下がりエッジまでの間、各論理和回路ＯＲ１〜ＯＲ４の出力信号ＡＦＡＩＬ，Ａ／ＦＡＩＬ，ＢＦＡＩＬ，Ｂ／ＦＡＩＬはハイレベルに固定となり、異常検出信号ＭＯＮＩはロウレベルに固定となる。
【０１２０】
従って、本第３実施形態においても、第１実施形態と同様に、異常検出信号ＭＯＮＩをＣＰＵ９に取り込むことにより、ＣＰＵ９における異常判定処理（図７参照）にて、異常検出信号ＭＯＮＩの状態に基づいて各励磁コイル５〜８の少なくともいずれか１つの電流供給経路に異常があるか否かを判定することができる。また、ＣＰＵ９における異常箇所特定処理（図８参照）にて、各制御信号ＡＩ，ＢＩ，Ａ／Ｉ，Ｂ／Ｉの切り替え状態に基づいて各励磁コイル５〜８の電流供給経路のどこにどのような故障があるのかを判定することができる。
【０１２１】
このように、本第３実施形態においても、第２実施形態と同様の作用・効果を得ることができる。ところで、第２実施形態では、図１０に示すように、各励磁コイル５〜８の電流供給経路に故障が起こったときに、異常検出信号ＭＯＮＩが異常な状態と正常な状態とを交互に繰り返す。それに対して、本第３実施形態では、各ＲＳフリップフロップを設けることにより、図１２に示すように、各励磁コイル５〜８の電流供給経路に故障が起こったときに、異常検出信号ＭＯＮＩが異常な状態（ロウレベル）のまま固定となるようにしているため、異常検出信号ＭＯＮＩがロウレベルに固定される時間が長くなることから、第２実施形態よりもさらに確実に故障の有無を判定することができる。
【０１２２】
尚、本発明は上記各実施形態に限定されるものではなく、以下のように変更してもよく、その場合でも、上記各実施形態と同等もしくはそれ以上の作用・効果を得ることができる。
［１］上記各実施形態では、各励磁コイル５〜８の一端にバッテリ電圧＋Ｂが印加されており、各出力回路１１〜１４が各励磁コイル５〜８から電流を引き込む形式（一般に、ロウサイド形式と呼ばれる）をとっている。
【０１２３】
これに対して、各励磁コイル５〜８の一端を接地し、各出力回路１１〜１４から各励磁コイル５〜８へ電流を流し出す形式（一般に、ハイサイド形式と呼ばれる）をとる場合には、プルダウン抵抗器Ｒ１１，Ｒ２１，Ｒ３１，Ｒ４１に代えて、各出力端子Ｏ１〜Ｏ４と車載バッテリのプラス端子との間にそれぞれプルアップ抵抗器を設けるようにすればよい。
【０１２４】
［２］ステップモータ２の各励磁コイル５〜８の通電制御に限らず、通電状態が制御される各種電気負荷の通電制御に適用してもよい。この場合、電気負荷の数に関係なく異常検出信号ＭＯＮＩが入力されるＣＰＵ９の入力ポートを１つ設けるだけでよいため、電気負荷の数が増大するほど、本発明の効果が顕在化することになる。
【図面の簡単な説明】
【図１】本発明を具体化した第１実施形態の構成を示す回路図。
【図２】第１実施形態の出力回路の構成を示す回路図。
【図３】第１実施形態の動作を説明するためのタイミングチャート。
【図４】第１実施形態の動作を説明するためのタイミングチャート。
【図５】第１実施形態の動作を説明するためのタイミングチャート。
【図６】第１実施形態の動作を説明するためのタイミングチャート。
【図７】第１〜第３実施形態の動作を説明するためのフローチャート。
【図８】第１〜第３実施形態の動作を説明するためのフローチャート。
【図９】本発明を具体化した第２実施形態の構成を示す回路図。
【図１０】第２実施形態の動作を説明するためのタイミングチャート。
【図１１】本発明を具体化した第３実施形態の構成を示す回路図。
【図１２】第３実施形態の動作を説明するためのタイミングチャート。
【符号の説明】
１，５１，６１…自動車用電子制御装置（ＥＣＵ）
２…ステップモータ    ５〜８…励磁コイル
９…マイクロコンピュータ（ＣＰＵ）    １１〜１４…出力回路
Ｒ１１，Ｒ２１，Ｒ３１，Ｒ４１…プルダウン抵抗器
ＢＦ１〜ＢＦ４…バッファ    ＳＲ１〜ＳＲ４…シフトレジスタ
ＲＴ１〜ＲＴ４…抵抗器    Ｃ１〜Ｃ４…コンデンサ
ＥＸＯＲ１〜ＥＸＯＲ４…排他的論理和回路    ＮＯＲ１…否定論理和回路
ＯＲ１〜ＯＲ４…論理和回路    ＡＮＤ１〜ＡＮＤ４…論理積回路
ＲＳ１１〜ＲＳ４２…ＲＳフリップフロップ    Ｏ１〜Ｏ４…出力端子
Ｔ１〜Ｔ４…駆動用トランジスタ
【図１】
0004211137.tif 000002
【図２】
0004211137.tif 000003
【図３】
0004211137.tif 000004
【図４】
0004211137.tif 000005
【図５】
0004211137.tif 000006
【図６】
0004211137.tif 000007
【図７】
0004211137.tif 000008
【図８】
0004211137.tif 000009
【図９】
0004211137.tif 000010
【図１０】
0004211137.tif 000011
【図１１】
0004211137.tif 000012
【図１２】
0004211137.tif 000013