(57)【要約】【課題】ソフトウェアによる処理を効率的に行うことで、マイクロコンピュータのみで制御を行うことができるアクチュエータ駆動装置を提供する。【解決手段】トリガＡ／Ｄ変換機能を有するマイコン２により、ソレノイド１１に駆動電流を通電するためのＮチャネルＭＯＳＦＥＴ１２に対して、駆動周期毎にパルス状の駆動信号を複数回出力する際に、マイコン２は、駆動信号のエッジをトリガとして電流検出抵抗１６により検出された駆動電流をＡ／Ｄ変換して読み込むと、それを履歴データとして保持する。そして、前記履歴データに基づいて駆動信号を補正する演算を行うと、補正した駆動信号を次の駆動周期に出力する。【選択図】図１
2014240638.tif 000002
【特許請求の範囲】
【請求項１】
トリガＡ／Ｄ変換機能を有し、アクチュエータ（１１）に駆動電流を通電するための駆動用スイッチング素子（１２）に対して、駆動周期毎にパルス状の駆動信号を複数回出力するマイクロコンピュータ（２）と、
前記駆動電流を検出する電流検出手段（１６）とを備え、
前記マイクロコンピュータは、前記駆動信号の二値レベルが変化するエッジをトリガとして、前記電流検出手段により検出された駆動電流をＡ／Ｄ変換して読み込むと、前記駆動電流の履歴データとして保持し、
前記履歴データに基づいて前記駆動信号を補正する演算を行い、補正した駆動信号を次の駆動周期に出力することを特徴とするアクチュエータ駆動装置。
【請求項２】
前記マイクロコンピュータは、前記駆動信号を所定時間だけ遅延させた信号を、前記Ａ／Ｄ変換のトリガとすることを特徴とする請求項１記載のアクチュエータ駆動装置。
【請求項３】
前記マイクロコンピュータは、前記駆動周期において、前記駆動電流の電流値に影響を及ぼす物理量パラメータを読み込み、読み込んだ物理量パラメータを、前記駆動信号を補正する演算に使用することを特徴とする請求項１又は２記載のアクチュエータ駆動装置。
【請求項４】
前記マイクロコンピュータは、前記物理量パラメータとしての駆動電源電圧をＡ／Ｄ変換して読み込むことを特徴とする請求項３記載のアクチュエータ駆動装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アクチュエータに駆動電流を通電するための駆動用スイッチング素子に対して、駆動周期毎にパルス状の駆動信号を複数回出力する駆動装置に関する。
【背景技術】
【０００２】
エンジン制御における燃料噴射用インジェクタや燃料圧送用ポンプ，減圧弁開閉用のアクチュエータ等を駆動するため電流制御を行う制御回路については、一般に高速な応答性が要求される。そこで、制御回路としては、マイクロコンピュータ（マイコン）を介して特定用途向け集積回路であるＡＳＩＣ（Application Specific Integrated Circuit）を制御し、駆動信号を出力する構成が採用されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−１０７７８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
近年、マイコンの処理性能が向上しており、また、部品を削減してコストダウンを図るという要請から、ＡＳＩＣを使用することなく、制御回路をマイコンのみで構成できれば望ましい。しかしながら、マイコンの処理性能が向上しているといっても、ＡＳＩＣのハードウェアによる極めて高速な処理を、単純にソフトウェアによる処理に置き換えて実現することは困難であった。
【０００５】
本発明は上記事情に鑑みてなされたものであり、その目的は、ソフトウェアによる処理を効率的に行うことで、マイクロコンピュータのみで制御を行うことができるアクチュエータ駆動装置を提供することにある。
【課題を解決するための手段】
【０００６】
請求項１記載のアクチュエータ駆動装置によれば、トリガＡ／Ｄ変換機能を有するマイクロコンピュータにより、アクチュエータに駆動電流を通電するための駆動用スイッチング素子に対して、駆動周期毎にパルス状の駆動信号を複数回出力する。前記マイクロコンピュータは、駆動信号のエッジをトリガとして電流検出手段により検出された駆動電流をＡ／Ｄ変換して読み込むと、駆動電流の履歴データとして保持する。そして、前記履歴データに基づいて駆動信号を補正する演算を行うと、補正した駆動信号を次の駆動周期に出力する。
【０００７】
このように構成すれば、マイクロコンピュータは、ある駆動周期で読み込んだ駆動電流の履歴データに基づいて駆動信号を補正するために行う演算を、次の駆動周期が開始されるまでに完了させれば良い。したがって、マイクロコンピュータが補正演算を行う時間余裕が確保されるようになり、ＡＳＩＣを併用することなく、マイクロコンピュータのソフトウェア処理のみでアクチュエータの駆動制御を行うことが可能になる。これにより、アクチュエータ駆動装置のコストを低下させると共に小型化を図ることができる。
【０００８】
請求項２記載のアクチュエータ駆動装置によれば、マイクロコンピュータは、駆動信号を所定時間だけ遅延させた信号をＡ／Ｄ変換のトリガとする。すなわち、マイクロコンピュータが駆動信号を出力してから実際に駆動電流が変化するまでには、若干の応答遅れがあるので、駆動信号を遅延させた信号をトリガとすることで、駆動電流が変化するポイントに合わせてＡ／Ｄ変換を行うことができるようになる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態であり、アクチュエータを駆動制御するＥＣＵの構成を示す機能ブロック図
【図２】処理内容を示すタイミングチャート
【図３】マイコンによる処理内容を示すフローチャート（その１）
【図４】同フローチャート（その２）
【図５】同フローチャート（その３）
【図６】比較のため、従来マイコンとＡＳＩＣとの組み合わせで行った処理を、そのままマイコンによるソフトウェア処理のみで実行させた場合を示す図２相当図
【図７】マイコンによる処理内容を示すフローチャート
【発明を実施するための形態】
【００１０】
図１において、ＥＣＵ１（Electronic Control Unit，アクチュエータ駆動装置）は、マイクロコンピュータ（マイコン）２と、マイコン２に外付けされる複数の駆動スイッチング素子等からなるドライバ部３とで構成されている。マイコン２は、ＣＰＵ４，ＲＡＭ５，タイマ６，Ａ／Ｄ変換器７，ＤＭＡＣ（Direct Memory Access Controller）８等を備えている。ＣＰＵ４は、図示しないＲＯＭに記憶されている制御プログラムに従い処理を行い、タイマ６を介してドライバ部３に駆動信号を出力する。ＣＰＵ４の動作周波数（システムクロック周波数）は、例えば２００ＭＨｚ程度である。
【００１１】
ドライバ部３は、電源ＶＢと、ソレノイド１１ａ，１１ｂ（アクチュエータ）の一端側との間に共通に接続されるＮチャネルＭＯＳＦＥＴ１２，及びソレノイド１１ａ，１１ｂの他端側グランドとの間にそれぞれ接続されるＮチャネルＭＯＳＦＥＴ１３ａ，１３ｂを有している。ＮチャネルＭＯＳＦＥＴ１２のソースとソレノイド１１ａ，１１ｂの一端側との間には順方向のダイオード１４が挿入されており、ダイオード１４のカソードとグランドとの間には、逆方向のダイオード１５（還流用）が接続されている。また、共通に接続されているＮチャネルＭＯＳＦＥＴ１３ａ，１３ｂのソースとグランドとの間には、電流検出抵抗１６（電流検出手段）が接続されている。
【００１２】
ソレノイド１１ａ，１１ｂは、例えば車両用のエンジン内に燃料を噴射するためのインジェクタを構成するもので、通常はエンジンの気筒数に合わせて４つ，或いは８つ等が設けられるが、図示の都合上２つのみ示している。尚、電源ＶＢの電圧を昇圧したものを駆動用電圧としてソレノイド１１に印加可能とするためのＮチャネルＭＯＳＦＥＴを、ハイサイドに別途配置しても良い。
【００１３】
マイコン２のタイマ６は、ハイサイドのＮチャネルＭＯＳＦＥＴ１２のゲートにパルス状の駆動信号ＴＭＯＳを出力し、ローサイドのＮチャネルＭＯＳＦＥＴ１３ａ，１３ｂのゲートには、それぞれ個別の噴射信号を出力する。マイコン２のＡ／Ｄ変換器７は、電流検出抵抗１６の端子電圧と、電源ＶＢの電圧（物理量パラメータ）とをＡ／Ｄ変換する。
Ａ／Ｄ変換器７には、上記の駆動信号ＴＭＯＳが、タイマ６の内部にある遅延回路９を介すことで、Ａ／Ｄ変換を行わせるためのトリガ信号として入力されている。すなわち、マイコン２は、いわゆるトリガＡ／Ｄ変換機能を有している。Ａ／Ｄ変換器７がＡ／Ｄ変換したデータは、ＤＭＡＣ８によりＲＡＭ５に対してＤＭＡ転送される。
【００１４】
次に、本実施形態の作用について説明する。先ず、マイコン２による処理の概略を説明する。図２（ｃ，ｄ）に示すように、マイコン２は、駆動周期毎に、駆動信号ＴＭＯＳのレベルがハイ，ロー間の二値レベルで変化することに伴うライズエッジ，フォールエッジをトリガとして駆動電流をＡ／Ｄ変換器７によりＡ／Ｄ変換して読み込む。Ａ／Ｄ変換したデータは順次ＲＡＭ５に転送し、駆動電流の履歴データとして記憶させる。そして、駆動周期が終了すると、ＲＡＭ５に記憶させた履歴データを読み出し、履歴データに基づき次の駆動周期に出力する駆動信号ＴＭＯＳを補正するための演算を行い、次の駆動周期が開始されると補正した駆動信号ＴＭＯＳを出力する。
尚、駆動周期は、エンジンの回転数に応じて変化するが凡そ１００μｓ〜３ｍｓ程度のオーダーであり、駆動信号ＴＭＯＳのパルス幅も、状況に応じて変化するが凡そ３μｓ〜１０μｓ程度のオーダーである。
【００１５】
マイコン２は、図２（ａ）に示すエンジンのクランク信号が特定のタイミングで割り込みを発生させると（（１）特定クランク割り込み）、図３に示す処理を実行する。先ず、前回の駆動周期における１段目駆動電流の履歴データ（ＡＤ値）の平均値を算出する（Ｓ１）。ここで、図２（ｄ）に示すように、駆動周期の前半から中盤にかけて、駆動電流波形の振幅を比較的高いレベルに維持させる期間が「１段目」であり、駆動周期の終盤に、駆動電流波形の振幅を比較的低いレベルに維持させる期間が「２段目」となる。
【００１６】
次に、マイコン２は、ステップＳ１で得た平均値と１段目駆動電流の目標値との差分を算出すると（Ｓ２）、その差分を例えばＰＩＤ（Proportional Integral Differential）制御演算するなどして１段目駆動電流の目標値（１段目目標値）を更新する（Ｓ３）。尚、ステップＳ２，Ｓ３で用いた平均値に替えて、例えば駆動電流のリップル幅や１段目の最小値を指標として用いても良い。
【００１７】
次に、マイコン２は、電源ＶＢの電圧（駆動電源電圧）をＡ／Ｄ変換して読み込むと（Ｓ４）、その電圧データに基づいて、ステップＳ３で得た１段目目標値を補正する演算を行う（Ｓ５）。例えば電圧が低い場合は１段目目標値をより高くするように補正する。それから、１段目目標値を、１段目の駆動信号のＰＷＭ周期（パルス出力周期）に変換する（Ｓ６）。すなわち、目標値の高さに応じて周期を短くするように変換する。
尚、ここでは、ＰＷＭ信号のキャリア周期を変化させることを想定しているが、これに替えて、キャリア周期は一定としてＰＷＭ信号のデューティを変化させるように変換しても良い。続くステップＳ７〜Ｓ１２については、駆動周期における２段目駆動電流の履歴データについて、ステップＳ１〜Ｓ６と同様の処理を行う。
【００１８】
次に、図２（ａ，ｂ）に示すように、（１）特定クランク割り込みより所定時間が経過して（２）噴射信号ＯＮ割り込みが発生すると、マイコン２は、対応するＮチャネルＭＯＳＦＥＴ１３ａ，１３ｂの何れか一方に噴射信号を出力する。そして、図４に示すように、１段目，２段目それぞれのＰＷＭ周期をタイマ６にセットする（Ｓ２１，Ｓ２２）。続いて、Ａ／Ｄ変換器７にトリガ信号を出力するタイミングを調整するため、遅延回路９における遅延時間をセットすると共に、Ａ／Ｄ変換器７からＲＡＭ５にデータを転送させるためＤＭＡＣ８に転送パラメータをセットする（Ｓ２３）。尚、前記遅延時間は、駆動信号ＴＭＯＳの出力に対して実際にソレノイド１１に通電が行われ、駆動電流が変化するのに応答遅れがあるので、駆動電流を最適なタイミングでＡ／Ｄ変換するために設定する。
【００１９】
次に、図２（ａ，ｂ）に示すように、（２）噴射信号ＯＮ割り込みより所定時間が経過して（３）特定時間後割り込みが発生すると、マイコン２は図５に示すように、ステップＳ３１〜Ｓ３３において、ステップＳ１０〜Ｓ１２と同様の処理を再度行う。そして、ステップＳ２２と同様に、２段目のＰＷＭ周期をタイマ６に再度セットする（Ｓ３４）。図５に示す処理は、図３に示す処理を実行した段階から電源ＶＢの電圧が変動している可能性もあるので、２段目の駆動電流については、目標値の補正及び設定を再度行うようにしている。
【００２０】
図２において、（１）特定クランク割り込みは、前回の駆動周期の終了時点から次回の駆動周期の開始時点までの間に発生する。この間隔も変動するが、例えば少なくとも１００μｓ以上ある。したがって、マイコン２は、図３に示す目標値の補正演算を、次回の駆動周期が開始するまでの間に余裕を以て行うことができる。
【００２１】
ここで、比較のため、従来のようにマイコンとＡＳＩＣとの組み合わせによって行われていた処理を、そのままマイコンによるソフトウェア処理のみで実行させることを想定すると、どのようになるかを示す。すなわち、図６（ｂ）に実線で示すように、ＡＳＩＣでは、１段目，２段目の駆動電流について、それぞれ上側の閾値（上側スレッシュ）と下側の閾値（下側スレッシュ）とを設定している。そして、１段目，２段目の駆動電流が、対応する閾値の幅内に収まるように、各駆動周期毎に駆動電流をリアルタイムでＡ／Ｄ変換して読み込み、閾値と比較する。
【００２２】
上記の処理をそのまま、マイコンのソフトウェア処理のみで実行させると、図６（ｂ）に破線で示すように応答遅れが生じる。すなわち、図７に示すように、マイコンは、噴射信号のＯＮに同期して、ハイサイドＮチャネルＭＯＳＦＥＴのゲートに出力するパルスをＯＮにすると（Ｓ４１）、１段目の駆動電流値をＡ／Ｄ変換して読み込む（Ｓ４２）。そして、読み込んだＡＤ値を１段目の上側の閾値と比較し（Ｓ４３）、ＡＤ値が閾値以下であれば（ＮＯ）ステップＳ４２に戻る。一方、ＡＤ値が閾値を超えていれば（ＹＥＳ）、ゲートに出力するパルスをＯＦＦさせる（Ｓ４４）。
【００２３】
続いて、再び１段目の駆動電流値をＡ／Ｄ変換して読み込むと（Ｓ４５）、次は読み込んだＡＤ値を１段目の下側の閾値と比較し（Ｓ４６）、ＡＤ値が閾値以上であれば（ＮＯ）ステップＳ４５に戻る。一方、ＡＤ値が閾値未満であれば（ＹＥＳ）、ゲートに出力するパルスをＯＮさせる（Ｓ４７）。
次に、噴射信号がＯＦＦしていなければ（ＮＯ）、駆動電流を２段目に切り換える時間が経過したか否かを判断し（Ｓ４９）、経過していなければ（ＮＯ）ステップＳ４２に戻る。一方、２段目に切り換える時間が経過していれば（ＹＥＳ）、続くステップＳ５０〜Ｓ５６において、２段目の駆動電流につきステップＳ４２〜Ｓ４８に対応する処理を行う。
【００２４】
このように、ＡＳＩＣで行っていた処理を、そのままマイコンのソフトウェアで処理すると、図６（ｂ）に破線で示すように、Ａ／Ｄ変換により駆動電流値を読み込む処理による遅れに、ソフトウェア処理自体の遅れも加わるため、駆動電流波形に大きなオーバーシュートが発生するようになり、実用に耐え得るとは言い難い。これに対して本実施形態のマイコン２では、駆動周期中は駆動電流をＡ／Ｄ変換して履歴データを記憶させる処理だけを実行し、補正演算等については、駆動周期の終了から次の駆動周期が開始されるまでの間に行い、その結果を次の駆動周期に反映させるように処理することで、処理時間に余裕が確保でき、マイコン２のみによる処理が可能となっている。
【００２５】
以上のように本実施形態によれば、トリガＡ／Ｄ変換機能を有するマイコン２により、ソレノイド１１に駆動電流を通電するためのＮチャネルＭＯＳＦＥＴ１２に対して、駆動周期毎にパルス状の駆動信号を複数回出力する際に、マイコン２は、駆動信号のエッジをトリガとして電流検出抵抗１６により検出された駆動電流をＡ／Ｄ変換して読み込むと、それを履歴データとして保持する。そして、前記履歴データに基づいて駆動信号を補正する演算を行うと、補正した駆動信号を次の駆動周期に出力する。
【００２６】
これにより、マイコン２は、ある駆動周期で読み込んだ駆動電流の履歴データに基づいて駆動信号を補正するために行う演算を、次の駆動周期が開始されるまでに完了させれば良いので、補正演算を行う時間余裕が確保される。したがって、ＡＳＩＣを併用することなく、マイコン２のソフトウェア処理のみでアクチュエータの駆動制御を行うことが可能になり、ＥＣＵ１のコストを低下させると共に小型化を図ることができる。
【００２７】
また、マイコン２は、駆動信号を遅延回路９により所定時間だけ遅延させた信号をＡ／Ｄ変換のトリガとする。すなわち、マイコン２が駆動信号を出力してから実際に駆動電流が変化するまでには、若干の応答遅れがあるので、駆動信号遅延させた信号をトリガとすることで、駆動電流が変化するポイントに合わせてＡ／Ｄ変換を行うことができるようになる。
【００２８】
本発明は上記した、又は図面に記載した実施形態にのみ限定されるものではなく、以下のような変形又は拡張が可能である。
ハイサイドの駆動用スイッチング素子に、ＰチャネルＭＯＳＦＥＴを用いても良い。
物理量パラメータは、電源ＶＢの電圧に限らず、駆動電流の電流値に影響を及ぼすものであれば何でも良い。
遅延回路９により付与する遅延時間は、一定であっても良い。
【００２９】
また、駆動信号の出力に対する駆動電流の遅れが問題にならなければ、遅延回路９は削除しても良い。
マイクロコンピュータの動作クロック周波数は、個別の設計に応じて適宜変更すれば良い。
アクチュエータは、その他燃料圧送用ポンプや、減圧弁開閉用のアクチュエータ等を構成するものでも良い。
【符号の説明】
【００３０】
図面中、１はＥＣＵ（アクチュエータ駆動装置）、２はマイクロコンピュータ、４はＣＰＵ、７はＡ／Ｄ変換器、９は遅延回路、１１はインダクタ（アクチュエータ）、１２及び１３はＮチャネルＭＯＳＦＥＴ（駆動用スイッチング素子）、１６は電流検出抵抗（電流検出手段）を示す。
【図１】
2014240638.tif 000003
【図２】
2014240638.tif 000004
【図３】
2014240638.tif 000005
【図４】
2014240638.tif 000006
【図５】
2014240638.tif 000007
【図６】
2014240638.tif 000008
【図７】
2014240638.tif 000009