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