図面を参照して説明する。なお、複数の実施形態において、共通乃至関連する要素には同一の符号を付与するものとする。
(第1実施形態)
先ず、図1〜図3に基づき、電子制御装置100の概略構成について説明する。
本実施形態において、電子制御装置100は、車両用のECUである。図1に示すように、電子制御装置100は、アクチュエータ200を制御する。アクチュエータ200の駆動により、ウェイストゲートバルブ300が開閉動作を行う。ウェイストゲートバルブ300は、ウエストゲートバルブ、又は、WGVとも称することができる。
また、本実施形態において、電子制御装置100は、アクチュエータ200に加えて、エンジンも制御している。例えば、電子制御装置100は、スロットルバルブの開度を調整するスロットルアクチュエータを制御する。また、電子制御装置100は、燃料噴射量を調整するインジェクタ、及び、点火プラグに高電圧を印加する点火装置を制御する。
アクチュエータ200は、モータ210と、平ギア220と、ウォーム230と、ヘリカルギア240と、アーム250と、を有している。モータ210は、出力軸212と、出力軸212に設けられたモータギア214と、を有している。モータギア214には、平ギア220が噛み合っている。平ギア220の軸部にはウォーム230が連結されている。また、ウォーム230は、ヘリカルギア240と噛み合っている。
ヘリカルギア240は、軸部242を中心に回転する。軸部242には、ヘリカルギア240と一体回転するアーム250が設けられている。アーム250の一端は、ロッド310を介してウェイストゲートバルブ300が連結されている。以下、平ギア220、ウォーム230、ヘリカルギア240、及び、アーム250をまとめて、出力ギアとも称する。出力ギアは、モータギア214の回転力及び回転方向を変換して、ロッド310に伝達するものである。また、モータギア214、平ギア220、ウォーム230、ヘリカルギア240、及び、アーム250をまとめて、ギアとも称する。ギアは、ギヤとも称することができる。
アクチュエータ200では、モータ210の通電によりモータギア214が回転する。モータギア214の回転は、平ギア220及びウォーム230を介してヘリカルギア240に伝達される。そして、ヘリカルギア240の回転に伴いロッド310が移動する。これにより、ウェイストゲートバルブ300が開閉動作を行う。以上によれば、ヘリカルギア240の回転角度は、モータ210の回転角度に応じて決まる。ヘリカルギア240の回転角度は、ウェイストゲートバルブ300の開度に対応している。以下、ウェイストゲートバルブ300の開度の値を、ヘリカルギア240の回転角度の値によって示す。ウェイストゲートバルブ300の開度は、単に開度とも称する。
図2に示すように、電子制御装置100は、駆動回路10と、マイコン20と、電流検出回路30と、第1ADC40と、を備えている。また、電子制御装置100は、端子として、電源端子100a、第1モータ端子100b、第2モータ端子100c、及び、グランド端子100dを有している。
駆動回路10は、マイコン20からの制御信号に応じて、モータ210に駆動電流を流すものである。詳しく言うと、駆動回路10は、モータ210のアーマチャコイル等に駆動電流を流すものである。本実施形態において、モータ210は直流モータである。そのため、駆動回路10は、モータ210に直流電流を流すように構成されている。
駆動回路10は、4個のFET12〜18を有し、Hブリッジ回路を構成している。本実施形態において、FET12〜18は、Nチャネル型とされている。FET12,14のドレインは、電源端子100aを介して、電源400と電気的に接続されている。電源400は、例えば、12Vを出力する車両用のバッテリである。
FET12,16のソースは、第1モータ端子100bを介して、モータ210と電気的に接続されている。FET14のソース及びFET18のドレインは、第2モータ端子100cを介してモータ210と電気的に接続されている。FET16のドレイン及びFET18のソースは、グランド端子100dを介して、グランド500と電気的に接続されている。
各FET12〜18のゲートは、マイコン20と電気的に接続されている。マイコン20は、各FET12〜18に制御信号を出力している。マイコン20は、制御信号により、FET12〜18のオンオフ状態を制御している。マイコン20は、FET12,18をオンにするとともにFET14,16をオフにすることで、モータ210を正転させる。一方、マイコン20は、FET12,18をオフにするとともにFET14,16をオンにすることで、モータ210を逆転させる。駆動回路10及びマイコン20は、特許請求の範囲に記載の回転制御部に相当する。
電流検出回路30は、駆動電流を検出するものである。本実施形態において、電流検出回路30は、抵抗32とオペアンプ34とを有している。抵抗32の一端は、FET14のソース及びFET18のドレインの接続点と電気的に接続されている。抵抗32の他端は、第2モータ端子100cと電気的に接続されている。よって、抵抗32は、FET14のソース及びFET18のドレインと、第2モータ端子100cと、を電気的に中継している。これにより、抵抗32には、駆動電流が流れる。
オペアンプ34は、抵抗32に流れる駆動電流を電圧に変換して出力する。オペアンプ34の入力端子は、抵抗32の両端に接続されている。オペアンプ34の出力端子は、第1ADC40と電気的に接続されている。なお、電流検出回路30は、特許請求の範囲に記載の電流検出部に相当する。
第1ADC40は、オペアンプ34が出力するアナログ信号をデジタル信号に変換するものである。第1ADC40は、マイコン20と電気的に接続されている。第1ADC40は、変換したデジタル信号をマイコン20に出力する。以下、第1ADC40がマイコン20へ出力する信号を電流信号と示す。電流信号は、駆動電流の値を示すデジタル信号である。電流信号、及び、オペアンプの出力するアナログ信号は、特許請求の範囲に記載の検出信号に相当する。
マイコン20は、電流信号に基づき、駆動電流が所定値となるように制御信号を生成している。すなわち、マイコン20は、駆動電流が所定値となるように、モータ210を電流フィードバック制御している。
ところで、モータ210では、回転角度に応じた磁気抵抗の変化によりコギングが生じる。詳しく言うと、コギングとは、モータ210の回転角度に応じた磁気抵抗の変化により、モータ210のトルクが変動することである。このコギング等により、駆動電流の値は、モータ210の回転角度に応じて変動する。よって、モータ210が回転している場合には、図3に示すように、所定の時間間隔で駆動電流の値が変動する。
この駆動電流の変動は、トルクリップルと称することができる。すなわち、トルクリップルは、モータ210のトルク変動に伴って生じる駆動電流の値の変動である。以下、駆動電流においてトルクリップルが生じた後から次のトルクリップルが生じるまでの時間を、リップル間隔と示す。
本実施形態においてアクチュエータ200には、モータ210の回転角度を算出する回転センサが設けられていない。言い換えると、アクチュエータ200には、ウェイストゲートバルブ300の開度を検出する開度センサが設けられていない。
これに対し、マイコン20は、時間経過に伴う電流信号の値の変動に基づき、トルクリップルを検出する。言い換えると、マイコン20は、時間経過に伴う駆動電流の値の変動に基づき、トルクリップルを検出する。
そして、マイコン20は、検出したトルクリップルに基づき、モータ210が回転しているか否かを判定する。すなわち、マイコン20は、電流信号に基づき、モータ210が回転しているか否かを判定する。言い換えると、マイコン20は、駆動電流に基づき、モータ210が回転しているか否かを判定する。さらに言い換えると、マイコン20は、駆動電流に基づき、ウェイストゲートバルブ300の開度が変化しているか否かを判定する。
トルクリップルの波形は、モータ210の回転方向に応じて変化する。これに対し、マイコン20は、トルクリップルの波形に基づき、モータ210の回転方向を判定する。言い換えるとマイコン20は、モータ210が正転しているか、又は、逆転しているかをトルクリップルの波形に基づき判定する。さらに言い換えると、モータ210が一方に回転しているか、又は、他方に回転しているかをトルクリップルの波形に基づき判定する。
さらにマイコン20は、トルクリップルの個数に基づき、モータ210の回転角度を算出する。すなわちマイコン20は、トルクリップルの個数に基づき、開度を算出する。以下、マイコン20が開度を算出する処理を、開度算出処理と示す。開度算出処理は、開度推定処理と称することもできる。マイコン20は、算出した開度、及び、エンジンの制御内容に基づき、モータ210の駆動を制御する。
マイコン20は、記憶領域として、メモリを有している。マイコン20のメモリは、特許請求の範囲に記載の記憶部に相当する。メモリには、単位開度値が予め記憶されている。単位開度値は、駆動電流においてトルクリップルが生じた後から次のトルクリップルが生じるまでの間に、開度が変化する値である。すなわち、単位開度値はリップル間隔においてモータ210が回転する角度である、言い換えると、単位開度値は、駆動電流においてトルクリップルが生じた後から次のトルクリップルが生じるまでの間に、モータ210が回転する回転角度を示している。単位開度値は、特許請求の範囲に記載の単位角度値に相当する。
単位開度値は、モータ210の構造、及び、ギアの構造に応じて設定される。電子制御装置100では、例えば、モータ210として8スロットモータを採用する。また、アクチュエータ200では、ウェイストゲートバルブ300の可動開度域を0°〜180°とする。さらに、アクチュエータ200では、モータギア214に対するヘリカルギア240の減速ギア比が26とされた構成を採用する。すなわち、開度が180°変化する度に、モータギア214が13回転する構成を採用する。
この構成では、モータ210が8スロットモータであるため、モータ210が約45°回転する度に、駆動電流に1つのトルクリップルが生じる。そして、減速ギア比が26とされているため、モータ210が45°回転する度に、開度が1.73°変化する。以上によれば、駆動電流に1つのトルクリップルが生じる度に、開度が1.73°変化する。この1.73°に対応する値が、単位開度値である。
マイコン20は、単位開度値とともに検出回数を用いて開度を算出する。検出回数は、マイコン20が検出したトルクリップルの個数に対応するものである。マイコン20は、検出したトルクリップルの個数に基づき、検出回数を変化させる。マイコン20は、検出回数と単位開度値とを乗算することで、開度を算出する。マイコン20は、検出回数を算出する度に、算出した検出回数をメモリに記憶する。
本実施形態において、検出回数には、特定の開度に対応する初期値が設定されている。ウェイストゲートバルブ300の可動開度域が0°〜180°であって、単位開度値が1.73°の場合、検出回数は、0〜104の値をとる。開度が0°のとき検出回数が0とされ、開度が180°のとき検出回数が104とされる。
マイコン20は、検出回数の初期値を設定することで、開度の絶対値を算出することができる。本実施形態においてマイコン20は、開度の絶対値に基づき、モータ210を制御している。検出回数の初期値は、特許請求の範囲に記載の基準角に相当する。アクチュエータ200には、ストッパが設けられている。開度が所定値になると、ストッパにより、ギアの回転及びモータ210の回転が停止する。
例えば、マイコン20は、モータ210を一方向に回転させつつ、駆動電流にトルクリップルが生じているか否かを判定する。そして、マイコン20は、トルクリップルが生じていない場合に、検出回数を初期値である0又は104に設定する。
また、マイコン20は、トルクリップルが生じているか否かを判定することなく、検出回数の初期値を設定することもできる。例えばマイコン20は、モータ210及びギアの回転がストッパにより停止するように、モータ210を一方向に所定期間回転させる。そして、マイコン20は、検出回数を、初期値である0又は104に設定する。
なお、駆動電流にノイズが生じる場合もある。ノイズとしては、電子制御装置100内の回路で生じるものや、外部の電磁波が電子制御装置100に入力されることで生じるものが想定される。
次に、図4〜図11に基づき、マイコン20における開度算出処理の処理手順について説明する。
マイコン20は、例えば、電子制御装置100に電源が入力された場合に、開度算出処理を開始する。そしてマイコン20は、電子制御装置100に電源が入力されている間、開度算出処理を繰り返し行う。なお、マイコン20は、開度算出処理を開始してから終了するまでに掛かる時間を、リップル間隔に較べて短い長さとする。すなわち、マイコン20は、リップル間隔に較べて短い長さで、1回の開度算出処理を行う。
図4に示すように、マイコン20は、先ず、所定期間内における駆動電流の波形を解析する(S10)。なお、マイコン20は、S10で解析する駆動電流における時間の長さを、リップル間隔に較べて十分短い長さとする。すなわち、マイコン20は、リップル間隔に較べて十分短い長さで、S10の処理を行う。マイコン20においてS10の処理を行う機能は、特許請求の範囲に記載のリップル検出部に相当する。
次に、マイコン20は、S10で解析した駆動電流においてトルクリップルを検出したか否かを判定する(S12)。マイコン20は、S12の処理を行うことで、モータ210が回転しているか否かを判定することができる。言い換えると、マイコン20は、S12の処理を行うことで、開度が変化しているか否かを判定することができる。
図5〜図8では、トルクリップルが生じた場合における駆動電流の波形を示している。図5〜図8の黒丸は、マイコン20が第1ADC40から電流信号を取得するタイミングを示している。よって、図5〜図8の黒丸の値は、マイコン20に入力される電流信号の値に対応している。
駆動電流では、所定の開度域でのみトルクリップルが生じる。以下、トルクリップルが生じていない場合における駆動電流の状態を定常状態と示す。定常状態における駆動電流の値は、トルクリップルが生じている場合に対して、変動し難い。以下、定常状態における駆動電流の値を定常値と示す。なお、図5〜図8では、定常値が一定値となるようにマイコン20が駆動回路10に制御信号を出力している場合において、モータ210に流れる駆動電流の値を示している。
本実施形態では、モータ210の正転によりウェイストゲートバルブ300が開くように動作する。一方、モータ210の逆転によりウェイストゲートバルブ300が閉じるように動作する。なお、モータ210の正転によりウェイストゲートバルブ300が開き、モータ210の逆転によりウェイストゲートバルブ300が閉じる構成を採用することもできる。
トルクリップルが立ち上がるか立ち下がるかは、モータ210の回転方向に応じて決まる。本実施形態では、モータ210が正転している場合にトルクリップルが立ち上がるように、モータ210が構成されている。すなわち、モータ210が逆転している場合にトルクリップルが立ち下がるように、モータ210が構成されている。
以下、モータ210が正転している場合におけるトルクリップルの波形を、正転波形と示す。一方、モータ210が逆転している場合におけるトルクリップルの波形を、逆転波形と示す。
次に、駆動電流において生じるトルクリップル及びノイズの波形の例として、図5〜図8における4つの例について説明する。図5に示すトルクリップルの波形は、正転波形である。図5に示す例では、モータ210が正転し、時間t1、時間t2、時間t3、時間t4、時間t5、時間t19、時間t20、時間t21の順に時間が経過している。駆動電流では、時間t2から時間t5の間でトルクリップルが生じている。
時間t1から時間t2の間において、駆動電流は定常状態とされている。例えば、時間t1から時間t2の間における駆動電流の平均値が定常値である。時間t2から時間t3の間では、時間が経過するほど、駆動電流の値が大きくなる。そして、時間t3を過ぎると、駆動電流の値が下降する。時間t3のときにおける駆動電流の値は、駆動電流においてトルクリップルが生じている状態での最大値である。
時間t3から時間t4の間では、時間が経過するほど、駆動電流の値が小さくなる。そして、時間t4を過ぎると、駆動電流の値が上昇する。時間t4のときにおける駆動電流の値は、駆動電流においてトルクリップルが生じている状態での最小値である。なお、時間t4における駆動電流の値は、定常値よりも小さい。時間t4から時間t5の間では、時間が経過するほど、駆動電流の値が大きくなる。時間t5のとき、駆動電流は、ほぼ定常値とされている。
以上のように、図5に示すトルクリップルでは、駆動電流の値が定常値から立ち上がった後に下降し、再び上昇している。モータ210が正転している場合、図5に示す駆動電流では、時間経過に伴って時間t1から時間t5までの間の波形を繰り返す。この例において、リップル間隔は、時間t1から時間t5までの時間である。以下、駆動電流においてトルクリップルが生じる時間をリップル時間と示す。図5に示す例において、リップル時間は、時間t2から時間t5までの時間である。
駆動電流では、時間t19から時間t21の間でノイズが生じている。時間t19のとき、駆動電流は、ほぼ定常値とされている。時間t19から時間t20の間では、時間が経過するほど、駆動電流の値が大きくなる。そして、時間t20を過ぎると、駆動電流の値が下降する。すなわち、回転角度が時間t20のときにおける駆動電流の値は、駆動電流においてノイズが生じている状態での最大値である。
時間t20から時間t21の間では、時間が経過するほど、駆動電流の値が小さくなる。時間t21のとき、駆動電流は、ほぼ定常値とされている。以上のように、ノイズでは、駆動電流の値が定常値から立ち上がった後に下降し、定常値に戻っている。以下、駆動電流にノイズが生じている時間をノイズ時間と示す。詳しく言うと、ノイズ時間は、時間t19から時間t21までの時間である。
図6に示すトルクリップルの波形は、逆転波形である。図6に示す例では、モータ210が逆転し、時間t6、時間t7、時間t8、時間t9、時間t10、時間t19、時間t20、時間t21の順に時間が経過している。この例において、トルクリップルでは、駆動電流の値が定常値から立ち下がった後に上昇し、再び下降している。駆動電流は、時間t6から時間t7までの間において定常状態である。駆動電流では、時間t7から時間t10の間でトルクリップルが生じている。
時間t7から時間t8の間では、時間が経過するほど、駆動電流の値が小さくなる。時間t8のときにおける駆動電流の値は、駆動電流においてトルクリップルが生じている状態での最小値である。そして、時間t8から時間t9の間では、時間が経過するほど、駆動電流の値が大きくなる。時間t9のときにおける駆動電流の値は、駆動電流においてトルクリップルが生じている状態での最大値である。なお、時間t9における駆動電流の値は、定常値よりも大きい。
時間t9から時間t10の間では、時間が経過するほど、駆動電流の値が小さくなる。時間t10のとき、駆動電流は、ほぼ定常値とされている。モータ210が逆転している場合、図6に示す駆動電流では、時間t6から時間t10までの間の波形を繰り返す。この例において、リップル間隔は、時間t6から時間t10までの時間である。また、図6に示す例において、リップル時間は、時間t7から時間t10までの時間である。
図7に示すトルクリップルの波形は、正転波形である。図7に示す例では、モータ210が正転し、時間t11、時間t12、時間t13、時間t14、時間t19、時間t20、時間t21の順に時間が経過している。この例において、トルクリップルでは、駆動電流の値が定常値から立ち上がった後に下降している。駆動電流は、時間t11から時間t12までの間において定常状態である。駆動電流では、時間t12から時間t14の間でトルクリップルが生じている。
時間t12から時間t13の間では、時間が経過するほど、駆動電流の値が大きくなる。時間t13のときにおける駆動電流の値は、駆動電流においてトルクリップルが生じている状態での最大値である。
そして、時間t13から時間t14の間では、時間が経過するほど、駆動電流の値が小さくなる。時間t14のとき、駆動電流は、ほぼ定常値とされている。モータ210が正転している場合、図7に示す駆動電流では、時間t11から時間t14までの間の波形を繰り返す。この例において、リップル間隔は、時間t11から時間t14までの時間である。また、図7に示す例において、リップル時間は、時間t12から時間t14までの時間である。
図8に示すトルクリップルの波形は、逆転波形である。図8に示す例では、モータ210が逆転し、時間t15、時間t16、時間t17、時間t18、時間t19、時間t20、時間t21の順に時間が経過している。この例において、トルクリップルでは、駆動電流の値が定常値から立ち下がった後に上昇している。駆動電流は、時間t15から時間t16までの間において定常状態である。駆動電流では、時間t16から時間t18の間でトルクリップルが生じている。
時間t16から時間t17の間では、時間が経過するほど、駆動電流の値が小さくなる。時間t17のときにおける駆動電流の値は、駆動電流においてトルクリップルが生じている状態での最小値である。
そして、時間t17から時間t18の間では、時間が経過するほど、駆動電流の値が大きくなる。時間t18のとき、駆動電流は、ほぼ定常値とされている。モータ210が逆転している場合、図8に示す駆動電流では、時間t15から時間t18までの間の波形を繰り返す。この例において、リップル間隔は、時間t15から時間t18までの時間である。また、図8に示す例において、リップル時間は、時間t16から時間t18までの時間である。
S10においてマイコン20は、駆動電流に対してパターンマッチングを行うことで、トルクリップルを検出する。言い換えると、マイコン20は、上記した4つの例のどれかと同じ挙動で駆動電流が変動しているか否かに基づき、駆動電流にトルクリップルが生じているか否かを判定する。マイコン20は、例えば、駆動電流の値の上昇又は下降のタイミング、駆動電流の値の変動におけるピーク値の大きさ、及び、変動する時間の長さに基づき、パターンマッチングを行う。
このとき、駆動電流の値の変動がトルクリップルによるものかノイズよるものかを区別できるように、マイコン20がパターンマッチングを行う。一般的に、リップル時間は、ノイズ時間よりも長い。そのため、マイコン20は、駆動電流の値の変動に掛かる時間が所定時間よりも長い場合に、ノイズではなくトルクリップルが駆動電流に生じていると判定する。
マイコン20は、S12においてトルクリップルを検出していないと判定すると、モータ210が回転していないと判定する。そして、マイコン20は、S12においてトルクリップルを検出していないと判定すると、検出回数を保持する(S14)。言い換えると、マイコン20は、検出回数の値を変化させない。
次に、マイコン20は、検出回数と単位開度値とを乗算して開度を算出する(S16)。マイコン20がS14の処理を行った場合、検出回数の値は、前回の開度算出処理における値と同じである。そのため、マイコン20は、S14の処理を行った場合、S16で算出する開度の値を、前回の開度算出処理で算出した開度と同じ値とする。マイコン20は、S16の処理を行った後、開度算出処理を終了する。
マイコン20は、S12においてトルクリップルを検出したと判定すると、検出したトルクリップルが正転波形か逆転波形かを判定する(S18)。言い換えると、マイコン20は、検出したトルクリップルが立ち上がっているか立ち下がっているかを判定する。
マイコン20は、S18においてトルクリップルが正転波形であると判定すると、モータ210が正転していると判定する。そして、マイコン20は、S18においてトルクリップルが正転波形であると判定すると、検出回数をインクリメントする(S20)。言い換えると、マイコン20は、S18においてトルクリップルが正転波形であると判定すると、検出回数の値を1つ増やす。
マイコン20は、S20の処理を行った後、S16の処理を行う。マイコン20は、S20の処理を行った場合、S16で算出する開度の値を、前回の開度算出処理で算出した開度よりも単位開度値分大きい値とする。
マイコン20は、S18においてトルクリップルが逆転波形であると判定すると、モータ210が逆転していると判定する。そして、マイコン20は、S18においてトルクリップルが逆転波形であると判定すると、検出回数をデクリメントする(S22)。言い換えると、マイコン20は、S18においてトルクリップルが逆転波形であると判定すると、検出回数の値を1つ減らす。
マイコン20は、S22の処理を行った後、S16の処理を行う。マイコン20は、S22の処理を行った場合、S16で算出する開度の値を、前回の開度算出処理で算出した開度よりも単位開度値分小さい値とする。マイコン20においてS12〜S22の処理を行う機能は、特許請求の範囲に記載の回転判定部に相当する。
次、図9〜図11に示す3つの駆動電流の波形に基づき、マイコン20による開度の算出例について説明する。なお、単位開度値は、1.73°とする。
図9に示す駆動電流では、時間t22から時間t23までの間に、3つの正転波形のトルクリップルが生じている。マイコン20は、開度算出処理を行うことで、時間t22から時間t23までの間に開度が5.19°大きくなっていることを検出する。言い換えると、マイコン20は、時間t23における開度として、時間t22における開度の値よりも5.19°大きい値を算出する。この5.19°は、単位開度値である1.73°に対して、検出した正転波形のトルクリップルの数である3を乗算した値である。
図10に示す駆動電流では、時間t24から時間t25までの間に、5つの正転波形のトルクリップルが生じている。マイコン20は、開度算出処理を行うことで、時間t24から時間t25までの間に開度が8.65°大きくなっていることを検出する。この8.65°は、単位開度値である1.73°に対して、検出した正転波形のトルクリップルの数である5を乗算した値である。
図11に示す駆動電流では、時間t26から時間t27までの間に、5つの正転波形のトルクリップルが生じている。なお、時間t26から時間t27までに掛かる時間は、時間t22から時間t23までに掛かる時間よりも短く、且つ、時間t24から時間t25までに掛かる時間よりも短い。
図11に示す駆動電流に対して、マイコン20は、開度算出処理により、時間t26から時間t27までの間に開度が8.65°大きくなっていることを検出する。図11に示す例では、図9に示す例に較べて時間が短くされているが、開度が変化する値は大きい。また、図11に示す例では、図10に示す例に較べて時間が短くされているが、開度が変化する値は同じである。
次に、上記した電子制御装置100の効果について説明する。
本実施形態において、マイコン20は、時間経過に伴う電流信号の値の変動に基づき、トルクリップルを検出する。そのため、マイコン20は、トルクリップルを検出するために、複雑な演算を行う必要がない。また、マイコン20は、トルクリップルを検出したか否かに基づき、モータ210が回転しているか否かを判定する。これによれば、マイコン20は、判定を行うために、複雑な演算を行う必要がない。以上によれば、電子制御装置100では、回転センサを用いることなく、複雑な演算を行わずにモータ210の回転を判定することができる。
モータ210の回転方向に伴い、駆動電流で生じるトルクリップルの立ち上がり及び立ち下がりが変化する。これに対し、本実施形態においてマイコン20は、トルクリップルの立ち上がり及び立ち下がりに基づき、モータ210の回転方向を判定する。これによれば、マイコン20は、モータ210が回転しているか否かのみを判定する構成に較べて、ウェイストゲートバルブ300の詳しい状態を検出することができる。したがって、マイコン20は、ウェイストゲートバルブ300の詳しい状態に基づき、モータ210を制御することができる。
モータ210の回転角度に伴い、駆動電流で生じるトルクリップルの数が多くなる。これに対し、本実施形態においてマイコン20は、トルクリップルの数に基づき、開度を算出している。これによれば、マイコン20は、ウェイストゲートバルブ300のより詳しい状態を検出することができる。したがって、マイコン20は、ウェイストゲートバルブ300のより詳しい状態に基づき、モータ210を制御することができる。
本実施形態において、マイコン20は、開度の絶対値を算出し、開度の絶対値に基づきモータ210を制御している。これによれば、マイコン20は、開度の相対値を算出する構成に較べて、ウェイストゲートバルブ300のより詳しい状態に基づき、モータ210を制御することができる。
(第2実施形態)
本実施形態において、第1実施形態に示した電子制御装置100と共通する部分についての説明は割愛する。
図12及び図13に示すように、アクチュエータ200には、回転センサ600が配置されている。回転センサ600は、ヘリカルギア240の回転角度を検出し、検出した回転角度に基づくセンサ信号を電子制御装置100へ出力する。すなわち、回転センサ600は、開度を検出するセンサである。言い換えると、回転センサ600はモータ210の回転を検出するセンサである。回転センサ600は、開度センサと称することもできる。例えば、モータ210が一方向に回転することで、センサ信号の値は正弦波を示すように変化する。
電子制御装置100は、第2ADC50をさらに備えている。また、電子制御装置100は、端子として、回転センサ600と電気的に接続されるセンサ端子100eをさらに有している。
第2ADC50は、アナログ信号であるセンサ信号をデジタル信号に変換するものである。第2ADC50は、センサ端子100eを介して回転センサ600と電気的に接続されている。また、第2ADC50は、マイコン20とも電気的に接続されている。第2ADC50は、デジタル信号に変換したセンサ信号をマイコン20に出力する。
マイコン20は、駆動電流に加えて、センサ信号を用いて開度算出処理を行う。すなわち、マイコン20は、センサ信号を用いて、モータ210が回転しているか否かを判定する。詳しく言うと、マイコン20は、第1ADC40からの電流信号、及び、第2ADC50の出力信号に基づき、開度算出処理を行う。
図14に示すように、マイコン20は、開度算出処理を開始すると、先ず、回転センサ600に異常が生じているか否かを判定する(S24)。マイコン20は、センサ信号の波形等に基づき、S24の判定を行う。回転センサ600の異常とは、故障等である。なお、マイコン20においてS24の処理を行う機能は、特許請求の範囲に記載のセンサ判定部に相当する。
マイコン20は、S24において回転センサ600に異常が生じていないと判定すると、センサ信号に基づき開度を算出する(S26)。詳しく言うと、マイコン20は、センサ信号の位相に応じて、開度を算出する。S26においてマイコン20は、開度の絶対値を算出する。なお、S16の処理に較べてS26の処理では、マイコン20における開度の算出精度や、算出した開度の信頼性を高くし易い。マイコン20においてS26の処理を行う機能は、特許請求の範囲に記載の回転判定部に相当する。マイコン20は、S26の処理を行った後に、開度算出処理を終了する。
マイコン20は、S24において回転センサ600に異常が生じていると判定すると、S10〜S22の処理を行う。すなわち、マイコン20は、トルクリップルに基づき開度を算出する。本実施形態においてS10〜S22の処理は、フェールセーフ処理と称することもできる。例えば、マイコン20は、S16で開度を算出する際、回転センサ600に異常が生じる直前にS26で算出した開度の絶対値を用いる。これにより、マイコン20は、S16において開度の絶対値を算出することができる。
本実施形態において、マイコン20は、回転センサ600に異常が生じている場合であってもモータ210の回転を判定することができる。また、回転センサ600が正常な場合には、マイコン20における判定精度を高くし易い。
なお、本実施形態では、回転センサ600がヘリカルギア240に設けられた例を示したが、これに限定するものではない。少なくとも、マイコン20が、センサ信号に基づき開度を算出できる構成であればよい。回転センサ600は、モータギア214に設けられていてもよい。また、回転センサ600は、モータ210の内部に設けられていてもよい。
以上、本発明の好ましい実施形態について説明したが、本発明は上記実施形態になんら制限されることなく、本発明の主旨を逸脱しない範囲において、種々変形して実施することが可能である。
なお、上記施形態では、マイコン20が開度の絶対値を算出する例を示したが、これに限定するものではない。例えば、マイコン20は、エンジンを制御する際、開度を現在の値に対して所定の値変化させることが必要な場合がある。この場合には、マイコン20が、特定の時間を基準に開度が変化した値を算出してもよい。この例では、マイコン20が、開度の相対値を算出している。
上記実施形態では、マイコン20が開度を算出する例を示したが、これに限定するものではない。マイコン20は、モータ210が回転しているか否かのみを判定し、開度を算出しない例を採用することもできる。すなわち、マイコン20は、S14〜S22の処理を行わない例を採用することもできる。よって、マイコン20は、S12の判定結果に基づき、モータ210の回転を制御する。
この例において、マイコン20は、S12の処理によりモータ210の回転を判定し、ウェイストゲートバルブ300が全閉位置又は全開位置にあるか否かを判定する。そして、マイコン20は、全閉位置又は全開位置にあるか否かに基づき、モータ210の回転を制御する。
また、マイコン20は、モータ210の回転方向を検出し、開度を算出しない例を採用することもできる。すなわち、マイコン20は、S10、S12、及び、S18の処理を行い、S14、S16、S20、及び、S22の処理を行わない例を採用することもできる。マイコン20は、S12及びS18の判定結果に基づき、モータ210の回転を制御する。
この例において、マイコン20は、ウェイストゲートバルブ300が全閉位置又は全開位置にあるか否か、及び、ウェイストゲートバルブ300の動く方向を判定することができる。よって、マイコン20は、ウェイストゲートバルブ300が全閉位置又は全開位置にあるか否か、及び、ウェイストゲートバルブ300の動く方向に基づき、モータ210の回転を制御する。
上記実施形態において、モータ210は直流モータである例を示したが、これに限定するものではない。モータ210が、交流モータである例を採用することもできる。例えば、モータ210が三相交流モータの場合、モータ210における1つの相に流れる駆動電流を電流検出回路30が検出する。そして、マイコン20は、交流電流である駆動電流において生じるトルクリップルの値に基づき、開度算出処理を行う。なお、この例では、駆動回路10がモータ210に交流を流すように構成される。
上記実施形態において、駆動回路10は、4個のFET12〜18を有し、Hブリッジ回路を構成する例を示した。しかしながら、これに限定するものではない。駆動回路10は、マイコン20からの制御信号に応じてモータ210に駆動電流を流す構成であればよい。Nチャネル型のFET12〜18とは異なるスイッチング素子を駆動回路10が有していてもよい。
上記実施形態において、抵抗32は、FET14のソース及びFET18のドレインと、第2モータ端子100cと、の間に配置された例を示したが、これに限定するものではない。抵抗32は、駆動電流が流れる箇所に配置されていればよい。また、電流検出回路30は抵抗32とオペアンプ34とを有する例を示したが、これに限定するものではない。電流検出回路30は駆動電流を検出するものであればよい。
上記実施形態において、電子制御装置100は、出力ギアを回転させることで車両のウェイストゲートバルブ300の開閉を制御する例を示したが、これに限定するものではない。電子制御装置100はモータ210を制御する構成であればよい。