(57)【特許請求の範囲】
【請求項１】
制御対象の動作状態に対応したアナログの検出信号を発生する検出手段と、
該検出手段から出力された検出信号をデジタルデータに変換するｎビットのＡ／Ｄ変換器と、
該Ａ／Ｄ変換器にて得られたデジタルデータと前記制御対象の目標状態を表す目標データとの偏差に基づき、前記制御対象を目標状態に制御するための制御量をデジタル演算する制御量算出手段と、
前記Ａ／Ｄ変換器により得られる前記デジタルデータと前記制御対象の実際の動作状態との関係を表す補正データが予め記憶された補正データ記憶手段と、
前記制御量算出手段が前記制御量を算出するのに使用する前記デジタルデータ及び前記目標データのいずれかを、前記補正データ記憶手段に記憶された補正データに基づき補正し、各データ間で生じる前記制御対象の実際の動作状態に対するずれを相殺するデータ補正手段と、
を備えた制御装置において、前記補正データを生成するための補正データ生成方法であって、
前記制御対象を予め設定された特定動作状態で動作させた際の検出信号を前記検出手段から出力させると同時に、前記Ａ／Ｄ変換器を少なくとも２m 回以上繰り返し動作させ、該Ａ／Ｄ変換器の動作によって得られる２m 個のデジタルデータの総和を、前記制御対象の上記特定動作状態に対応した補正データとして算出し、該算出結果を前記補正データ記憶手段に格納するものであり、
前記補正データの生成には、前記Ａ／Ｄ変換器を少なくとも２m 回以上繰り返し動作させることによって得られる２m 個のデジタルデータの総和を用い、前記制御対象の制御には、前記Ａ／Ｄ変換器の動作によって得られるデジタルデータをそのまま用いることを特徴とする制御装置の補正データ生成方法。
【請求項２】
前記制御対象を予め設定された二つの特定動作状態で動作させた際の検出信号を前記検出手段からそれぞれ出力させることにより、前記補正データ記憶手段に格納する補正データとして、前記制御対象の二つの特定動作状態に対応した二つのデータを算出し、前記補正データ記憶手段には該二つのデータを格納することを特徴とする請求項１記載の制御装置の補正データ生成方法。
【請求項３】
前記制御装置において、前記検出手段は前記制御対象としてのソレノイドに流れる電流に対応したアナログの検出信号を発生し、前記制御量算出手段は、前記Ａ／Ｄ変換器にて得られたデジタルデータと前記ソレノイドに流す目標電流を表す目標データとの偏差に基づき、前記ソレノイドに流れる電流を前記目標電流に制御するための制御量をデジタル演算し、前記補正データ記憶手段には、前記Ａ／Ｄ変換器により得られる前記デジタルデータと前記ソレノイドに流れる電流との関係を表す補正データが予め記憶され、前記データ補正手段は、前記制御量算出手段が前記制御量を算出するのに使用する前記デジタルデータ及び前記目標データのいずれかを、前記補正データ記憶手段に記憶された補正データに基づき補正することで、該各データ間で生じる前記ソレノイドに流れる電流に対するずれを相殺するよう構成され、
当該補正データ生成方法にて前記補正データを生成する際には、前記ソレノイドに予め設定された基準電流を流した場合の検出信号を前記検出手段から出力させると同時に、前記Ａ／Ｄ変換器を少なくとも２m 回以上繰り返し動作させ、該Ａ／Ｄ変換器の動作によって得られる２m 個のデジタルデータの総和を、前記ソレノイドに前記基準電流を流した場合に対応した補正データとして算出することを特徴とする請求項１又は請求項２記載の制御装置の補正データ生成方法。
【請求項４】
請求項１〜請求項３何れか記載の補正データ生成方法を実現するために前記制御装置に設けられる補正データ生成装置であって、
外部から前記制御対象の特定動作状態に対応した補正データの生成指令が入力されると、前記Ａ／Ｄ変換器を少なくとも２m 回以上繰り返し動作させるＡ／Ｄ変換制御手段と、
該Ａ／Ｄ変換制御手段が前記Ａ／Ｄ変換器を動作させることにより得られる２m 個のデジタルデータの総和を算出する総和算出手段と、
該総和算出手段にて算出された２m 個のデジタルデータの総和を、前記制御対象の特定動作状態に対応した補正データとして、前記補正データ記憶手段に格納する補正データ格納手段と、
を備えたことを特徴とする制御装置の補正データ生成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、制御対象の動作状態を表すアナログの検出信号をＡ／Ｄ変換したデジタルデータを用いて制御対象の制御量をデジタル演算し制御対象を制御する制御装置において、制御対象の制御精度を向上するのに好適な補正データの生成方法及び装置に関する。
【０００２】
【従来の技術】
従来より、制御対象の動作状態をセンサ等を用いて検出し、その検出した動作状態と目標状態との偏差に基づき、制御対象を目標状態に制御するための制御量を算出し、この算出した制御量に従い制御対象を駆動制御する制御装置が知られている。また、この種の制御装置の内、制御量を、マイクロコンピュータ等を用いてデジタル演算するようにした装置では、センサからの検出信号（アナログ信号）をＡ／Ｄ変換器を用いてデジタルデータに変換するようにされている。
【０００３】
ところで、このようにＡ／Ｄ変換器を用いて検出信号をＡ／Ｄ変換する制御装置では、Ａ／Ｄ変換器による検出信号のＡ／Ｄ変換精度が制御精度に大きな影響を与えることから、Ａ／Ｄ変換器にはできるだけ分解能の高い（換言すればビット数の大きい）Ａ／Ｄ変換器を用いることが望ましい。しかし、Ａ／Ｄ変換器の分解能を上げると、その分、制御装置の製造コストが高くなってしまう。
【０００４】
また、このようにＡ／Ｄ変換器を用いて検出信号をＡ／Ｄ変換する制御装置では、Ａ／Ｄ変換後のデジタルデータが、Ａ／Ｄ変換器自体のばらつきや、検出信号を発生する検出装置からＡ／Ｄ変換器に至る信号入力系のばらつき等によって、設計時のデータ値からずれることがあるため、Ａ／Ｄ変換器による検出信号のＡ／Ｄ変換精度を高めるだけでは、制御精度が低下することもある。
【０００５】
そこで、従来では、例えば、特開平３−１５３９８０号公報に開示されているように、分解能の低いＡ／Ｄ変換器を用いて、制御精度を向上するために、Ａ／Ｄ変換すべき検出信号の電圧範囲に応じて、Ａ／Ｄ変換器のダイナミックレンジを切り替えるようにするとか、或いは、特開平９−１７２７４５号公報に開示されているように、制御装置の出荷時に、Ａ／Ｄ変換器を実際に動作させて所定の検出信号をＡ／Ｄ変換したデジタルデータを取り込み、これを補正用のデータとして、ＥＥＰ−ＲＯＭ等のメモリに記憶しておく、といったことが提案されている。
【０００６】
即ち、特開平３−１５３９８０号にて提案された装置では、一つのＡ／Ｄ変換器を用いて複数の入力信号をＡ／Ｄ変換するようにし、各入力信号の電圧変動幅に応じて、Ａ／Ｄ変換器側の基準電圧を切り替えることにより、Ａ／Ｄ変換器にてＡ／Ｄ変換可能な入力信号の電圧範囲（ダイナミックレンジ）を切り替える。この結果、各入力信号に応じて、Ａ／Ｄ変換により得られるデジタルデータ１ビット当たりの電圧変化量を切り替えることができ、Ａ／Ｄ変換器を全ての入力信号をＡ／Ｄ変換できるように一定の基準電圧で動作させた場合に比べて、電圧変動幅の小さい入力信号のＡ／Ｄ変換精度を、分解能の高いＡ／Ｄ変換器を用いてＡ／Ｄ変換した場合と同等の精度にすることが可能になる。
【０００７】
一方、特開平９−１７２７４５号にて提案された装置では、出荷時に、制御対象を予め設定された動作状態で動作させた際に得られる検出信号をＡ／Ｄ変換器を用いて実際にＡ／Ｄ変換させ、このＡ／Ｄ変換にて得られたデジタルデータを制御対象の動作状態と関連づけてメモリに記憶しておくことで、出荷後に実際に制御対象を制御する際には、このメモリに記憶された補正データを用いて、Ａ／Ｄ変換器を介して得られたデジタルデータを制御対象の実際の動作状態に対応したデータ値（設計理論値）に補正し、その補正後のデジタルデータを用いて制御量を算出することで、センサからの検出信号をＡ／Ｄ変換して取り込むＡ／Ｄ変換部分のばらつきに影響されることなく、制御対象を高精度に制御できるようにしている。
【０００８】
【発明が解決しようとする課題】
しかしながら、上記前者の装置では、Ａ／Ｄ変換器にてＡ／Ｄ変換する入力信号を切り替える度に、Ａ／Ｄ変換器の基準電圧を切り替えることから、そのための回路が必要であり、装置構成が複雑になるという問題がある。また、複数の入力信号を時分割でＡ／Ｄ変換することから、制御のために各入力信号のＡ／Ｄ変換値（デジタルデータ）を同時若しくは短時間で取り込む必要がある制御装置には、適用できないという問題がある。また更に、Ａ／Ｄ変換精度を上げることができるのは、Ａ／Ｄ変換器のダイナミックレンジを最大にしたときの入力信号の電圧範囲よりも小さい電圧変動幅で変動する入力信号だけであり、電圧変動幅の大きな入力信号のＡ／Ｄ変換精度を高めることはできないという問題もある。
【０００９】
一方、上記後者の装置では、出荷時にメモリに記憶した補正データを用いて、検出信号のＡ／Ｄ変換部分の特性のばらつきに伴う制御精度の低下を防止することはできるが、その補正データの精度は、制御装置に設けられたＡ／Ｄ変換器の精度によって一義的に定まることから、制御精度を高めるには、Ａ／Ｄ変換器に分解能の高い高価なＡ／Ｄ変換器を用いなければならないという問題がある。
【００１０】
本発明は、こうした問題に鑑みなされたものであり、検出信号をＡ／Ｄ変換したデジタルデータを用いて制御対象の制御量をデジタル演算することにより制御対象をフィードバック制御する制御装置において、検出信号のＡ／Ｄ変換に実際に使用するＡ／Ｄ変換器よりも高分解能のＡ／Ｄ変換器を用いて検出信号をＡ／Ｄ変換した場合と同じ制御精度を実現し得るようにすることを目的とする。
【００１８】
かかる目的を達成するためになされた請求項１に記載の発明は、前述の特開平９−１７２７４５号公報に開示された装置のように、検出信号をＡ／Ｄ変換器を介して取り込むＡ／Ｄ変換部分の特性のばらつきによる制御精度の低下を防止するために予め補正データ記憶手段に補正データを記憶しておき、実際に制御を行う際には、その補正データを用いてＡ／Ｄ変換器により得られたデジタルデータ又は制御目標を表す目標データを補正するようにした制御装置において、補正データ記憶手段に格納する補正データを生成する方法に関するものである。
【００１９】
即ち、まず本発明方法が適用される制御装置には、Ａ／Ｄ変換器により得られるデジタルデータと制御対象の実際の動作状態との関係を表す補正データが予め記憶された補正データ記憶手段が備えられ、データ補正手段が、制御量算出手段が制御量を算出するのに使用するデジタルデータ及び目標データのいずれかを、補正データ記憶手段に記憶された補正データに基づき補正し、各データ間で生じる制御対象の実際の動作状態に対するずれを相殺する。
【００２０】
つまり、制御量算出手段は、Ａ／Ｄ変換器にて得られたデジタルデータは制御対象の動作状態を正確に表しているものとして制御量を算出するが、制御量算出手段に取り込まれるデジタルデータは、Ａ／Ｄ変換器自体のばらつきや検出手段からＡ／Ｄ変換器に至る検出信号の入力経路のばらつきの影響を受けて、設計理論値からずれることがある。
【００２１】
そこで、この制御装置では、Ａ／Ｄ変換器により得られるデジタルデータの設計理論値からのずれによる制御精度の低下を防止するために、Ａ／Ｄ変換器により得られるデジタルデータと制御対象の実際の動作状態との関係を表す補正データを補正データ記憶手段に記憶しておき、制御対象を実際に制御する際には、データ補正手段により、制御量算出手段が制御量の演算に用いるデジタルデータ及び目標データのいずれかを、補正データ記憶素段に記憶した補正データを用いて補正することにより、デジタルデータと目標データとの間で生じる制御対象の実際の動作状態に対するずれを相殺するのである。
【００２２】
そして、このような制御装置では、補正データ記憶手段に、Ａ／Ｄ変換器を用いて実際にＡ／Ｄ変換したデジタルデータを、そのときの制御対象の動作状態に関連づけて記憶させる必要があるが、この場合、Ａ／Ｄ変換器によるＡ／Ｄ変換結果をそのまま補正データ記憶手段に格納するようにすると、補正データの精度が、Ａ／Ｄ変換器の精度によって一義的に定まり、制御対象の制御精度は、使用するＡ／Ｄ変換器の分解能にて固定されてしまう。
【００２３】
そこで、本発明方法では、補正データ記憶手段に格納する補正データを生成するに当たって、まず、制御対象を予め設定された特定動作状態で動作させた際の検出信号を前記検出手段から出力させると共に、Ａ／Ｄ変換器を少なくとも２m 回以上繰り返し動作させる。そして、このＡ／Ｄ変換器の動作によって得られる２m 個のデジタルデータの総和を、制御対象の特定動作状態に対応した補正データとして算出し、その算出結果を補正データ記憶手段に格納するのである。
【００２４】
この結果、本発明方法によれば、制御装置の補正データ記憶手段に格納される補正データの精度を、検出信号を実際にＡ／Ｄ変換するＡ／Ｄ変換器の精度よりも高くすることができ、制御装置が実際に制御対象を制御した際には、制御量算出手段が制御量の演算に用いるデジタルデータ若しくは目標データを高精度に補正することが可能になる。よって、本発明方法によれば、制御装置のＡ／Ｄ変換部分の特性のばらつきにより、Ａ／Ｄ変換器により得られたデジタルデータが設計理論値からずれていても、制御量を演算する際に用いられるデジタルデータと目標データとの間の制御対象の実際の動作状態に対するずれを高精度に相殺させることが可能になり、前述の特開平９−１７２７４５号公報に開示された従来装置に比べ、制御対象の制御精度を向上することができる。
【００２５】
尚、本発明方法により補正データを生成するには、検出手段から、制御対象を予め設定された特定動作状態で動作させた際の検出信号を出力させる必要があるが、このためには、制御対象を実際に特定動作状態で動作させて、その動作状態を検出手段に検出させるようにしてもよく、或いは、検出手段を擬似的に動作させて、検出手段から、制御対象を特定動作状態で動作させたときと同等の検出信号を擬似的に出力させるようにしてもよい。
また、補正データ記憶手段に格納する補正データとしては、請求項２に記載のように、制御対象を予め設定された二つの特定動作状態で動作させた際の検出信号を前記検出手段からそれぞれ出力させることにより、制御対象の二つの特定動作状態に対応した二つのデータを算出するようにすればよい。
また、請求項３に記載のように、制御装置による制御対象がソレノイドであり、制御装置がソレノイドに流れる電流を目標電流に制御するよう構成されている場合には、前記ソレノイドに予め設定された基準電流を流した場合の検出信号を前記検出手段から出力させると同時に、前記Ａ／Ｄ変換器を少なくとも２m 回以上繰り返し動作させ、該Ａ／Ｄ変換器の動作によって得られる２m 個のデジタルデータの総和を、前記ソレノイドに前記基準電流を流した場合に対応した補正データとして算出するようにすればよい。
【００２６】
次に、請求項４に記載の発明は、請求項１〜請求項３何れかに記載の補正データ生成方法を実現するために、上述の制御装置に設けられる補正データ生成装置に関するものである。そして、この補正データ生成装置においては、外部から制御対象の特定動作状態に対応した補正データの生成指令が入力されると、Ａ／Ｄ変換制御手段が、Ａ／Ｄ変換器を少なくとも２m 回以上繰り返し動作させ、総和算出手段が、Ａ／Ｄ変換器の動作によって得られる２m 個のデジタルデータの総和を算出し、補正データ格納手段が、その算出された２m 個のデジタルデータの総和を、制御対象の特定動作状態に対応した補正データとして補正データ記憶手段に格納する。
【００２７】
このため、請求項４に記載の補正データ生成装置によれば、制御対象を実際に動作させるか、或いは検出手段を擬似的に動作させることにより、検出手段から制御対象を予め設定された特定動作状態で動作させた際の検出信号を出力させた状態で、Ａ／Ｄ変換制御手段に対して、補正データの生成指令を入力するようにすれば、本発明の補正データ生成方法に従い、補正データが自動で生成されて、制御装置の補正データ記憶手段に格納されることになり、制御装置の制御精度を向上することが可能になる。
【００２８】
そして、Ａ／Ｄ変換装置が設けられる制御装置が、制御量の演算のためにマイクロコンピュータを備えている場合には、当該補正データ生成装置を構成するＡ／Ｄ変換制御手段，総和算出手段，及び補正データ格納手段についても、このマイクロコンピュータが実行するプログラムにて簡単に実現することができることから、制御装置に極めて簡単に組み込むことができることになり、制御精度を向上するために、制御装置の構成が複雑になってコストアップを招く、といったこともない。
【００２９】
【発明の実施の形態】
以下に、本発明の実施例を図面と共に説明する。
図１は、本発明が適用された自動車用電子制御装置（以下ＥＣＵという）２の概略構成を表す構成図である。
【００３０】
ＥＣＵ２は、自動車に搭載された自動変速機の変速段やロックアップ等を制御する自動変速機制御（ＡＴ制御）用の制御装置であり、ＡＴ制御のための各種演算処理を実行する制御回路１０として、ＣＰＵ，ＲＯＭ，ＲＡＭ等からなるマイクロコンピュータを備えている。この制御回路１０には、図示しない車速センサ，シフト位置センサ等の各種センサからの検出信号やエンジン制御装置からのエンジン状態信号（回転数，スロットル開度等を表す信号）等が入力される。そして、制御回路１０は、予めＲＯＭに記憶された制御プログラムに従い、これら入力信号に基づきＡＴ制御のための各種演算処理を実行し、その演算結果に基づき自動変速機に設けられたソレノイド等の各種アクチュエータをフィードバック制御する。
【００３１】
そこで、本実施例では、制御回路１０が実行するフィードバック制御の一例として、自動変速機のライン圧（油圧）制御のために、ライン圧制御用ソレノイド（以下単にソレノイドという）１２に流れるソレノイド電流Ｉｃをフィードバック制御する場合について説明する。
【００３２】
図１に示す如く、制御対象であるソレノイド１２の一端には、バッテリ電圧ＶBTが印加されており、ＥＣＵ２には、ソレノイド１２の他端をグランドラインに接地するか否かを切り換えるスイッチング用のトランジスタ１４が設けられ、更に、トランジスタ１４からグランドラインに至る電流経路には、検出手段として、ソレノイド電流Ｉｃを電圧値として検出するための検出抵抗Ｒ０が設けられている。
【００３３】
そして、この検出抵抗Ｒ０の両端は、夫々、抵抗Ｒ１，Ｒ２を介して、オペアンプ１６の非反転入力端子（＋）及び反転入力端子（−）に接続されている。オペアンプ１６は、非反転入力端子（＋）と出力端子とを抵抗Ｒ３を介して接続することにより、差動増幅器として動作するよう構成されており、検出抵抗Ｒ０の両端電圧（つまりソレノイド電流Ｉｃの検出信号）は、オペアンプ１６にて増幅される。そして、オペアンプ１６で増幅された検出信号は、抵抗Ｒ４と一端がグランドラインに接地されたコンデンサＣ４とからなる平滑回路（換言すれば積分回路）１８にて平滑された後、抵抗Ｒ５を介して、制御回路１０に入力される。
【００３４】
尚、トランジスタ１４は、コレクタがソレノイド１２に接続され、エミッタが検出抵抗Ｒ０を介してグランドラインに接地されたＮＰＮトランジスタにて構成されている。また、実際には、トランジスタ１４及び検出抵抗Ｒ０が設けられるソレノイド１２の通電経路には、トランジスタ１４がターンオフした際にソレノイド１２に蓄積されたエネルギにより発生する高電圧をバッテリ側に戻し、ソレノイド１２に電流を流し続けるためのダイオードや、このときソレノイド１２に流れる電流を検出してオペアンプ１６に入力するための電流検出用抵抗等も設けられるが、こうした駆動系の構成は従来より周知であり、また本発明の主要部でもないので、本実施例では、説明を簡単にするために、駆動系の構成は図１に示す如くなっているものとする。
【００３５】
一方、制御回路１０は、抵抗Ｒ５を介して入力される検出信号（アナログ電圧信号）をＡ／Ｄ変換するＡ／Ｄ変換器２０を内蔵しており、Ａ／Ｄ変換器２０を介して入力されたデジタルデータ（以下単に検出電圧という）Ｖｍからソレノイド電流Ｉｃを検知して、このソレノイド電流Ｉｃがライン圧制御に必要な目標電流Ｉtgとなるように、トランジスタ１４をオン・オフさせる。
【００３６】
即ち、制御回路１０には、トランジスタ１４を、デューティ比を制御したパルス幅変調信号（ＰＷＭ信号）にて周期的にオン・オフさせることにより、ソレノイド電流Ｉｃを制御するために、ＰＷＭ信号出力回路２２が設けられている。そして、制御回路１０は、図２に示す如く、ＰＷＭ信号出力回路２２から出力されるＰＷＭ信号のデューティ比（換言すればパルス幅）を、ソレノイド電流Ｉｃを表す検出電圧Ｖｍと、自動変速機のライン圧を目標油圧に制御するのに必要な目標電流Ｉtgから設定した目標電圧Ｖtgとの偏差に応じて増・減させることにより、ソレノイド電流Ｉｃを目標電流Ｉtgに制御する。
【００３７】
また、ＥＣＵ２には、制御回路１０が目標電流Ｉtgから目標電圧Ｖtgを設定する際に、この目標電圧Ｖtgとソレノイド電流Ｉｃとの対応関係が、Ａ／Ｄ変換器２０を介して得られる検出電圧Ｖｍとソレノイド電流Ｉｃとの対応関係と一致し、検出電圧Ｖｍと目標電圧Ｖtgとの偏差（本実施例ではその大小関係）から、ＰＷＭ信号のデューティ比（換言すればソレノイド電流Ｉｃ）を正確に制御できるようにするための電圧データが予め格納されたＥＥＰ−ＲＯＭ２４が設けられている。尚、このＥＥＰ−ＲＯＭ２４は、特許請求の範囲に記載の補正データ記憶手段に相当し、内部に格納された電圧データは、本発明の補正データに相当する。
【００３８】
以下、このようにソレノイド電流Ｉｃを制御するために制御回路１０において実行される制御量演算処理を説明する。
この制御量演算処理は、例えば、ＰＷＭ信号出力回路２２がＰＷＭ信号を出力する周期に同期して、一定時間毎に実行される処理であり、図３に示す如く、この処理が開始されると、まずＳ１１０（Ｓはステップを表す）にて、図示しないセンサから入力された自動車の運転状態に基づき、自動変速機のライン圧の目標油圧Ｐtgを算出する。そして、続くＳ１２０では、この目標油圧Ｐtgから、図４に例示する目標電流算出用マップを用いて、ソレノイド１２に流す目標電流Ｉtgを算出し、続くＳ１３０にて、この算出した目標電流Ｉtgから、Ａ／Ｄ変換器２０を介して得られる検出電圧Ｖｍに対応した目標電圧Ｖtgを算出する。
【００３９】
目標電圧Ｖtgの算出には、ＥＥＰ−ＲＯＭ２４に格納された電圧データが使用されるが、ソレノイド電流Ｉｃと検出電圧Ｖｍとは比例し、目標電流Ｉtgから目標電圧Ｖtgを設定する際にも、目標電流Ｉtgに比例するように目標電圧Ｖtgを設定すればよいため、ＥＥＰ−ＲＯＭ３４には、電圧データとして、図５に示す如く、検出抵抗Ｒ０に第１基準電流Ｉst1 を流したときにＡ／Ｄ変換器２０を介して得られたデジタルデータ（第１基準電圧ＶST1 ）と、検出抵抗Ｒ０に第２基準電流Ｉst2 を流したときにＡ／Ｄ変換器２０を介して得られたデジタルデータ（第２基準電圧ＶST2 ）との、２種類の基準電圧Ｖst1 ，ＶST2 が格納されている。
【００４０】
そして、Ｓ１３０では、この第１及び第２基準電圧Ｖst1 ，ＶST2 と第１及び第２基準電流Ｉst1 ，ＩST2 とから得られるソレノイド電流Ｉｃと検出電圧Ｖｍとの相対関係から、目標電流Ｉtgに対応した目標電圧Ｖtgを求める。具体的には、図５に示す各検出点Ｐ１，Ｐ２を結ぶ直線を表す一次関数を演算式（Ｖtg＝ａ×Ｉtg＋ｂ）として設定し、この演算式に目標電流Ｉtgを代入することにより、目標電圧Ｖtgを算出するとか、或いは、図５に示す各検出点Ｐ１，Ｐ２から目標電流Itgに対応する点を補間計算することにより、目標電流Ｉtgに対応する目標電圧Ｖtgを算出する、といった手順で、目標電圧Ｖtgを求める。尚、本実施例では、このＳ１３０の処理が、特許請求の範囲に記載のデータ補正手段に相当する。
【００４１】
次に、このように目標電圧Ｖtgが算出されると、今度は、Ｓ１４０に移行して、Ａ／Ｄ変換器２０を介して読み込んだ検出電圧Ｖｍが目標電圧Ｖtgよりも大きいか否かを判断し、検出電圧Ｖｍが目標電圧Ｖtgよりも大きい場合には、ソレノイド電流Ｉｃを減少させるべく、Ｓ１５０に移行して、ＰＷＭ信号出力回路２２から出力されるＰＷＭ信号のパルス幅（換言すればデューティ比）を予め設定された所定時間幅△ｔだけ減少させて、当該処理を一旦終了する。
【００４２】
一方、Ｓ１４０にて、検出電圧Ｖｍは目標電圧Ｖtgよりも大きくないと判断されると、Ｓ１６０に移行して、今度は、検出電圧Ｖｍが目標電圧Ｖtgよりも小さいか否かを判断する。そして、検出電圧Ｖｍが目標電圧Ｖtgよりも小さい場合には、ソレノイド電流Ｉｃを増加させるべく、Ｓ１７０に移行して、ＰＷＭ信号出力回路２２から出力されるＰＷＭ信号のパルス幅を予め設定された所定時間幅△ｔだけ増加させて、当該処理を一旦終了する。
【００４３】
また、逆に、Ｓ１６０にて、検出電圧Ｖｍは目標電圧Ｖtgよりも小さくないと判断された場合（つまり、検出電圧Ｖｍと目標電圧Ｖtgとが一致している場合）には、ソレノイド電流Ｉｃを増・減する必要はないので、Ｓ１８０にて、ＰＷＭ信号出力回路２２から出力されるＰＷＭ信号のパルス幅を現在のパルス幅に保持させ、当該処理を一旦終了する。尚、本実施例では、Ｓ１４０〜Ｓ１８０の処理が、特許請求の範囲に記載の制御量算出手段に相当する。
【００４４】
このように、本実施例では、ソレノイド１２に流す目標電流Ｉtgから目標電圧Ｖtgを設定する際に、予めＥＥＰ−ＲＯＭ２４内に格納された電圧データを使用することから、検出抵抗Ｒ０からＡ／Ｄ変換器２０に至る電流検出系の回路素子のばらつきにより、ソレノイド電流Ｉｃと検出電圧Ｖｍとの関係が、図６に一点鎖線で示す制御系設計時のＩｃ−Ｖｍ理論特性からずれたとしても、目標電圧Ｖtgを、図６に実線で示す実際のＩｃ−Ｖｍ特性に対応して設定できるようになり、目標電圧ＶtgをＩｃ−Ｖｍ理論特性に従い設定するようにした場合に比べて、ソレノイド電流Ｉｃを目標電流Ｉtgに精度よく制御することが可能になる。
【００４５】
つまり、Ｉｃ−Ｖｍ特性の理論特性からのずれのうち、傾きのずれに関しては、電流検出を行う検出抵抗Ｒ０、及び、検出信号を増幅する際のゲインを決定する抵抗Ｒ１，Ｒ２，Ｒ３のばらつき（設計値に対する誤差）によるものが大きく、オフセットのずれに関しては、オペアンプ１６のオフセット電圧の誤差によるものが大きい。従って、Ｉｃ−Ｖｍ特性の理論特性からのずれは、電流検出系の製造上のばらつきによる初期特性誤差によるものが殆どであり、温度特性や経年変化によるものは、初期特性誤差に比べるとほとんど無視できるレベルである。このため、ＥＣＵ２の製造直後に、実際のＩｃ−Ｖｍ特性を測定して、これを電圧データ（換言すれば補正データ）としてＥＥＰ−ＲＯＭ２４に格納しておき、ソレノイド電流Ｉｃを実際にフィードバック制御する際には、本実施例のように、ＥＥＰ−ＲＯＭ２４に記憶された電圧データを用いて目標電圧Ｖtgを設定するようにすれば、ソレノイド電流Ｉｃを常に精度よく制御することが可能になる。
【００４６】
ところで、ＥＥＰ−ＲＯＭ２４にＩｃ−Ｖｍ特性を表すデータとして格納する電圧データとしては、前述したように、検出抵抗Ｒ０に、ソレノイド電流Ｉｃとして第１基準電流Ｉst1 及び第２基準電流Ｉst2 を流し、そのときＡ／Ｄ変換器２０を介して得られる２種類の検出電圧Ｖｍを測定し、各電圧値を、第１基準電圧Ｖst1 及び第２基準電圧Ｖst2 として、ＥＥＰ−ＲＯＭ２４に格納すればよいのであるが、これら各基準電圧Ｖst1 及びＶst2 をＡ／Ｄ変換器２０を介して取り込む際のＡ／Ｄ変換精度が低いと、その後、制御の際に設定される目標電圧Ｖtgが、アナログ信号状態でのＩｃ−Ｖｍ特性からずれてしまい、制御誤差が生じることになる。
【００４７】
つまり、Ａ／Ｄ変換器２０により得られるデジタルデータ（検出電圧Ｖｍ）は、Ａ／Ｄ変換器２０に実際に入力された検出信号（アナログ電圧信号）に対し、最小ビット（ＬＳＢ）単位で階段状に変化する。例えば、Ａ／Ｄ変換器２０のビット数が１０ビットで、Ａ／Ｄ変換可能な電圧範囲が０〜５Ｖである場合、検出電圧Ｖｍは、図７（ａ）に示すように、約４．８８ｍＶの幅で階段状に変化し、実際に入力された検出信号に対して約４．８８ｍＶの幅をもつ。
【００４８】
そして、この幅が検出電圧ＶｍのＡ／Ｄ変換誤差となるため、上記のように検出抵抗Ｒ０に基準電流Ｉst1 ，Ｉst2 を流し、そのときＡ／Ｄ変換器２０に入力された検出信号Ｖst1a，Ｖst2aをＡ／Ｄ変換して得られる検出電圧Ｖｍを基準電圧Ｖst1(10) ，Ｖst2(10) としてＥＥＰ−ＲＯＭ２４に格納するようにしても、ＥＥＰ−ＲＯＭ２４に格納された基準電圧Ｖst1(10) ，Ｖst2(10) から得られるＩｃ−Ｖｍ特性は、上記Ａ／Ｄ変換誤差によって、アナログ信号状態での実際のＩｃ−Ｖｍ特性からずれることになり、目標電圧Ｖtgを実際のＩｃ−Ｖｍ特性に対応して設定することができなくなってしまう。
【００４９】
一方、この問題は、Ａ／Ｄ変換器２０のビット数を増やし、Ａ／Ｄ変換精度を上げれば解決できる。例えば、Ａ／Ｄ変換器２０を、１０ビットＡ／Ｄ変換器から１２ビットＡ／Ｄ変換器に変更した場合、図７（ｂ）に示すように、Ａ／Ｄ変換可能な電圧範囲が上記と同じ０〜５Ｖであれば、検出電圧Ｖｍは、約１．２２ｍＶの幅で変化することになるため、Ａ／Ｄ変換誤差は１／４になる。従って、１２ビットＡ／Ｄ変換器を用いて基準電圧Ｖst1(12) ，Ｖst2(12) を測定するようにすれば、図８に示すように、１０ビットＡ／Ｄ変換器を用いた場合に比べて、目標電圧Ｖtgの設定誤差を、△Ｖ(10)から△Ｖ(12)へとを充分小さくすることができる。
【００５０】
しかし、Ａ／Ｄ変換精度を向上するためにＡ／Ｄ変換器２０のビット数を増やすと、ＥＣＵ２のコストアップを招くことから、現実には高精度なＡ／Ｄ変換器を使うことはできない。
そこで本実施例では、Ａ／Ｄ変換器２０に１０ビットＡ／Ｄ変換器を使いつつ、ＥＥＰ−ＲＯＭ２４に電圧データとして格納する基準電圧Ｖst1 ，Ｖst2 については、１５ビットＡ／Ｄ変換器を用いた場合と同等の精度に設定するようにしている。
【００５１】
以下、このように各基準電圧Ｖst1 ，Ｖst2 を設定してＥＥＰ−ＲＯＭ２４に格納するために制御回路１０にて実行される電圧データ演算処理について、図９に示すフローチャートに沿って説明する。
この電圧データ演算処理は、ＥＣＵ２の出荷前の調整段階で、ＥＣＵ２を電圧設定用の治具に装着して、制御回路１０を電圧設定モードで動作させることにより実行される処理である。尚、電圧設定用の治具は、ＥＣＵ２に設けられたソレノイド接続端子にソレノイド１２に代えて定電流源を接続し、外部操作によって、この定電流源から基準電流Ｉst1 及びＩst2 を選択的に供給し、且つ、その電流供給を表す指令信号を制御回路１０に入力できるように構成されている。
【００５２】
そして、この電圧データ演算処理が開始されると、Ｓ２１０にて、上記治具から第１基準電流Ｉst1 の供給中を表す指令信号が入力されているか否かによって、第１基準電流Ｉst1 での検出電圧取込条件が成立したか否かを判断し、第１基準電流Ｉst1 での検出電圧取込条件が成立している場合には、Ｓ２２０に移行する。
【００５３】
次に、Ｓ２２０では、トランジスタ１４をオンして、検出抵抗Ｒ０に定電流源から供給された第１基準電流Ｉst1 を流し、その状態でＡ／Ｄ変換器２０を介して得られる検出電圧Ｖｍをｉ回（例えば３２回）サンプリングする。そして、続くＳ２３０では、Ｓ２２０でサンプリングしたｉ個の検出電圧Ｖｍの総和を、第１基準電圧Ｖst1 として算出し、Ｓ２４０にて、その算出した第１基準電圧Ｖst1 をＥＥＰ−ＲＯＭ２４に格納し、当該処理を一旦終了する。
【００５４】
一方、Ｓ２１０にて第１基準電流Ｉst1 での検出電圧取込条件が成立していないと判断された場合には、Ｓ２５０に移行して、上記治具から第２基準電流Ｉst2 の供給中を表す指令信号が入力されているか否かによって、第２基準電流Ｉst2 での検出電圧取込条件が成立したか否かを判断する。そして、第２基準電流Ｉst2 での検出電圧取込条件が成立していなければ、当該処理を一旦終了し、逆に第２基準電流Ｉst2 での検出電圧取込条件が成立していれば、Ｓ２６０に移行する。
【００５５】
Ｓ２６０では、上記Ｓ２２０と同様、トランジスタ１４をオンして、検出抵抗Ｒ０に定電流源から供給された第２基準電流Ｉst2 を流し、その状態でＡ／Ｄ変換器２０を介して得られる検出電圧Ｖｍをｉ回（例えば３２回）サンプリングする。そして、続くＳ２７０では、Ｓ２６０でサンプリングしたｉ個の検出電圧Ｖｍの総和を、第２基準電圧Ｖst2 として算出し、Ｓ２８０にて、その算出した第２基準電圧Ｖst2 をＥＥＰ−ＲＯＭ２４に格納し、当該処理を一旦終了する。
【００５６】
尚、本実施例においては、上記Ｓ２２０，Ｓ２６０の処理が、本発明のＡ／Ｄ変換制御手段に相当し、Ｓ２３０，Ｓ２７０の処理が、本発明の総和算出手段に相当し、Ｓ２４０，Ｓ２８０の処理が、本発明の補正データ格納手段に相当する。
【００５７】
このように、本実施例では、ＥＥＰ−ＲＯＭ２４に電圧データとして格納する第１及び第２基準電圧Ｖst1 ，Ｖst2 を生成する際には、検出抵抗Ｒ０に第１及び第２基準電流Ｉst1 ，Ｉst2 を夫々流し、そのときＡ／Ｄ変換器２０を介して得られるデジタルデータ（検出電圧Ｖｍ）を３２回サンプリングし、そのサンプリングした３２個の検出電圧Ｖｍの総和を、第１及び第２基準電圧Ｖst1 ，Ｖst2 として設定するようにしている。
【００５８】
このため、１０ビットＡ／Ｄ変換器２０を用いて検出電圧Ｖｍをサンプリングしているにもかかわらず、ＥＥＰ−ＲＯＭ２４に格納される第１及び第２基準電圧Ｖst1 ，Ｖst2 は、１５ビットＡ／Ｄ変換器を用いて検出電圧Ｖｍを測定した場合と略同等の精度となり、各基準電圧Ｖst1 ，Ｖst2 設定時のＡ／Ｄ変換誤差に伴う制御精度の低下を抑制することが可能になる。
【００５９】
以下、この理由について説明する。
まず、Ｓ２２０，Ｓ２６０による検出電圧Ｖｍのサンプリング時には、検出抵抗Ｒ０に、定電流源から供給される第１基準電流Ｉst1 又は第２基準電流Ｉst2 が流れるが、これら各電流Ｉst1 ，Ｉst2 は、定電流源側での電流制御動作によって微少ではあるが脈動する。このため、Ａ／Ｄ変換器２０に入力される検出信号（アナログ電圧信号）も、数ｍＶ程度の幅で脈動する。
【００６０】
このため、Ｓ２２０，Ｓ２６０でサンプリングされる検出電圧Ｖｍも、一定とはならず、少なくとも最下位ビットで変動する。従って、Ｓ２３０，Ｓ２７０で算出される２5 （＝３２）個の検出電圧Ｖｍの総和は、Ａ／Ｄ変換器２０に入力された検出信号の平均電圧に対応した（１０＋５）ビットのデジタルデータとなり、Ｓ２４０，Ｓ２８０でＥＥＰ−ＲＯＭ２４に格納される各基準電圧Ｖst1 ，Ｖst2 は、１５ビットのＡ／Ｄ変換器を用いて検出信号をＡ／Ｄ変換した検出電圧と略同等になるのである。
【００６１】
つまり、例えば、Ａ／Ｄ変換可能な電圧範囲が０〜５Ｖの１０ビットＡ／Ｄ変換器（ＬＳＢ＝４．８８ｍＶ）において、１．０Ｖ入力時のＡ／Ｄ変換結果は、
（１．０／５）×１０２４＝２０４．８＝０ＣＣ（１６進数）
となり、このＡ／Ｄ変換結果「０ＣＣ（１６進数）」を逆算して電圧に戻すと、
０ＣＣ（１６進数）／１０２４×５＝０．９９６０９Ｖ
となり、「−３．９１ｍＶ」の誤差が生じる。
【００６２】
しかし、同じ１０ビットＡ／Ｄ変換器を用いた１．０Ｖ入力時の２回のＡ／Ｄ変換結果が、「０ＣＣ（１６進数）」と「０ＣＤ（１６進数）」であった場合、これらの和「１９９（１６進数）」を１１ビットのＡ／Ｄ変換結果（ＬＳＢ＝２．４４ｍＶ）とみなせば、Ａ／Ｄ変換誤差は、「−１．４７ｍＶ」となる。つまり、１１ビットのＡ／Ｄ変換結果としてみなした「１９９（１６進数）」を、逆算により電圧に戻すと、
１９９（１６進数）／２０４８×５＝０．９９８５３Ｖ
となるため、この場合のＡ／Ｄ変換誤差は「−１．４７ｍＶ」となる。
【００６３】
従って、本実施例のように、Ａ／Ｄ変換可能な電圧範囲が０〜５Ｖの１０ビットＡ／Ｄ変換器２０を用いて、検出信号をｉ回Ａ／Ｄ変換し、そのＡ／Ｄ変換結果Ｖｍ(1) ，Ｖｍ(2) …Ｖｍ(i) の総和を、検出信号のＡ／Ｄ変換値として算出するようにすれば、下記の表１に示すように、Ａ／Ｄ変換結果のサンプリング数ｉを増やせば増やす程、得られるＡ／Ｄ変換値（総和）の誤差（ＬＳＢ）を小さくして、Ａ／Ｄ変換精度を向上することができるようになるのである。
【００６４】
【表１】
0003539199.tif 000002
【００６５】
このため、本実施例によれば、Ａ／Ｄ変換器２０のＡ／Ｄ変換精度が低くても、ＥＥＰ−ＲＯＭ２４に格納される目標電圧Ｖtg設定用の電圧データ（基準電圧Ｖst1 ，Ｖst2 ）を、そのＡ／Ｄ変換精度に影響されることなく、高精度に設定することが可能になり、延いては、ソレノイド電流Ｉｃの制御精度を向上することができる。
【００６６】
以上、本発明の一実施例について説明したが、本発明は上記実施例に限定されるものではなく、種々の態様を採ることができる。
例えば、上記実施例では、ＥＥＰ−ＲＯＭ２４に格納する基準電圧Ｖst1 ，Ｖst2 を設定する際、１０ビットＡ／Ｄ変換器２０によるＡ／Ｄ変換を３２回行い、その結果得られた３２個の検出電圧Ｖｍを足し合わせることで、１５ビットのＡ／Ｄ変換結果を得るようにしたが、これと同様に１５ビットのＡ／Ｄ変換結果を得る場合であっても、例えば、検出電圧Ｖｍのサンプリングは６４(２6 )回行い、これにより得られた６４個の検出電圧Ｖｍの総和を、２(＝２1 =２6 −２5 )で除算するようにしてもよい。そしてこのようにすれば、検出電圧Ｖｍのサンプリング回数が多い分、得られるＡ／Ｄ変換結果（１５ビット）の精度を向上できる。
【００６７】
また、上記実施例では、ＥＥＰ−ＲＯＭ２４に格納する目標電圧Ｖtg設定用の電圧データを生成する際に、本発明のＡ／Ｄ変換方法を利用するものとして説明したが、Ａ／Ｄ変換器２０によるＡ／Ｄ変換時間が制御量の演算周期に比べて充分短く、制御量を１回演算する間にＡ／Ｄ変換を何度も行える場合には、Ａ／Ｄ変換器２０を介して検出信号を取り込む際に、Ａ／Ｄ変換値を多数サンプリングして、その総和をソレノイド電流Ｉｃを表す検出電圧とするようにしてもよい。そして、このようにすれば、ソレノイド電流Ｉｃの制御精度をより向上できるのはいうまでもない。
【００６８】
また、上記実施例では、本発明を、自動変速機のライン圧制御用のソレノイド１２を通電制御する装置に適用した場合について説明したが、本発明は、ソレノイド等の誘導性負荷を通電制御する装置に限らず、Ａ／Ｄ変換器を利用して検出信号を取り込み、制御量をデジタル演算する装置であれば、上記実施例と同様に適用して、同様の効果を得ることができる。
【図面の簡単な説明】
【図１】実施例のＥＣＵの概略構成を表す構成図である。
【図２】実施例の制御回路にて実行されるフィードバック制御の動作を説明するタイムチャートである。
【図３】制御回路にて実行される制御量演算処理を表すフローチャートである。
【図４】制御量演算処理の実行時に用いられる目標電流算出用マップの特性を表す説明図である。
【図５】制御量演算処理の実行時に用いられるＥＥＰ−ＲＯＭに格納された電圧データを説明する説明図である。
【図６】ソレノイド電流とその検出電圧（デジタルデータ）との相対関係を表す理論特性及び実際の特性を説明する説明図である。
【図７】Ａ／Ｄ変換の精度によって変化する電圧データの誤差を説明する説明図である。
【図８】電圧データ生成時のＡ／Ｄ変換の精度によって生じる目標電圧Ｖtgの設定誤差を説明する説明図である。
【図９】制御回路にて電圧データを生成する際に実行される電圧データ演算処理を表すフローチャートである。
【符号の説明】
２…ＥＣＵ、１０…制御回路、１２…ソレノイド、１４…トランジスタ、１６…オペアンプ、１８…平滑回路、２０…Ａ／Ｄ変換器、２２…ＰＷＭ信号出力回路、２４…ＥＥＰ−ＲＯＭ、Ｒ０…検出抵抗。
【図１】
0003539199.tif 000003
【図２】
0003539199.tif 000004
【図３】
0003539199.tif 000005
【図４】
0003539199.tif 000006
【図５】
0003539199.tif 000007
【図６】
0003539199.tif 000008
【図７】
0003539199.tif 000009
【図８】
0003539199.tif 000010
【図９】
0003539199.tif 000011