以下、本発明を電動パワーステアリング装置(EPS)に具体化した一実施形態を図面に従って説明する。
図1は、本実施形態のEPS1の概略構成図である。同図に示すように、ステアリングホイール(ステアリング)2が固定されたステアリングシャフト3は、ラックアンドピニオン機構4を介してラック5に連結されており、ステアリング操作に伴うステアリングシャフト3の回転は、ラックアンドピニオン機構4によりラック5の往復直線運動に変換される。そして、このラック5の往復直線運動により転舵輪6の舵角が変更されるようになっている。
また、EPS1は、操舵系にステアリング操作を補助するためのアシスト力を付与する操舵力補助装置としてのEPSアクチュエータ10と、該EPSアクチュエータ10の作動を制御する制御手段としてのECU11とを備えている。
本実施形態のEPSアクチュエータ10は、その駆動源であるモータ12がラック5と同軸に配置された所謂ラック型のEPSアクチュエータであり、モータ12が発生するアシストトルクは、ボールねじ機構(図示略)を介してラック5に伝達される。尚、本実施形態のモータ12は、ブラシレスモータであり、ECU11から三相(U,V,W)の駆動電力の供給を受けることにより回転する。そして、モータ制御装置としてのECU11は、このモータ12が発生するアシストトルクを制御することにより、操舵系に付与するアシスト力を制御する(パワーアシスト制御)。
本実施形態では、ECU11には、トルクセンサ14及び車速センサ15が接続されている。そして、ECU11は、これらトルクセンサ14及び車速センサ15によりそれぞれ検出される操舵トルクτ及び車速Vに基づいて、EPSアクチュエータ10の作動、即ちパワーアシスト制御を実行する。
次に、本実施形態のEPSの電気的構成について説明する。
図2は、本実施形態のEPSの制御ブロック図である。同図に示すように、ECU11は、モータ制御信号を出力するモータ制御信号出力手段としてのマイコン17と、モータ制御信号に基づいてモータ12に三相の駆動電力を供給する駆動回路18とを備えている。
尚、本実施形態の駆動回路18は、直列に接続された一対のスイッチング素子を基本単位(アーム)として各相に対応する3つのアームを並列接続してなる周知のPWMインバータであり、マイコン17の出力するモータ制御信号は、駆動回路18を構成する各スイッチング素子のオンduty比を規定するものとなっている。そして、モータ制御信号が各スイッチング素子のゲート端子に印加され、同モータ制御信号に応答して各スイッチング素子がオン/オフすることにより、車載電源(図示略)の直流電圧が三相(U,V,W)の駆動電力に変換されてモータ12に供給されるようになっている。
本実施形態では、ECU11には、モータ12に通電される各相電流値Iu,Iv,Iwを検出するための電流センサ21u,21v,21w、及びモータ12の回転角(電気角)θを検出するための回転角センサ22が接続されている。そして、マイコン17は、これら各センサの出力信号に基づき検出されたモータ12の各相電流値Iu,Iv,Iw及び回転角θ、並びに上記操舵トルクτ及び車速Vに基づいて駆動回路18にモータ制御信号を出力する。
詳述すると、本実施形態のマイコン17は、上記操舵トルクτ及び車速Vに基づいて、操舵系に付与すべきアシスト力(目標アシスト力)を決定し、当該アシスト力をモータ12に発生させるべく、上記検出された各相電流値Iu,Iv,Iw及び回転角θに基づく電流制御を実行することにより上記モータ制御信号を生成する。
具体的には、マイコン17は、操舵系に付与するアシスト力、即ちモータトルクの制御目標値として電流指令値を演算する電流指令値演算手段としての電流指令値演算部23と、電流指令値演算部23により算出された電流指令値に基づいてモータ制御信号を生成するモータ制御信号生成手段としてのモータ制御信号生成部24とを備えている。
電流指令値演算部23は、上記トルクセンサ14及び車速センサ15により検出された操舵トルクτ及び車速Vに基づき、モータトルクの制御目標値に対応する電流指令値として、d/q座標系のq軸電流指令値Iq*を演算し、モータ制御信号生成部24に出力する。一方、モータ制御信号生成部24には、電流指令値演算部23の出力するq軸電流指令値Iq*とともに、各電流センサ21u,21v,21wにより検出された各相電流値Iu,Iv,Iw、及び回転角センサ22により検出された回転角θが入力される。そして、モータ制御信号生成部24は、これら各相電流値Iu,Iv,Iw、及び回転角θ(電気角)に基づいて、d/q座標系における電流フィードバック制御を実行することによりモータ制御信号を生成する。
さらに詳述すると、本実施形態のモータ制御信号生成部24は、d/q座標系における電流フィードバック制御(d/q軸電流F/B)の実行により三相の相電圧指令値Vu*,Vv*,Vw*を演算する第1電流制御部24aを備えている。そして、通常時には、この第1電流制御部24aにより演算される各相電圧指令値Vu*,Vv*,Vw*に基づいて、モータ制御信号を生成する。
図3に示すように、第1電流制御部24aに入力された各相電流値Iu,Iv,Iwは、回転角θとともに3相/2相変換部25に入力され、同3相/2相変換部25によりd/q座標系のd軸電流値Id及びq軸電流値Iqに変換される。そして、q軸電流値Iqは、電流指令値演算部23から入力されたq軸電流指令値Iq*とともに減算器26qに入力され、d軸電流値Idは、d軸電流指令値Id*(Id*=0)とともに減算器26dに入力される。
各減算器26d,26qにおいて演算されたd軸電流偏差ΔId及びq軸電流偏差ΔIqは、それぞれ対応するF/B制御部27d,27qに入力される。そして、これら各F/B制御部27d,27qにおいて、電流指令値演算部23が出力するd軸電流指令値Id*及びq軸電流指令値Iq*に実電流値であるd軸電流値Id及びq軸電流値Iqを追従させるべくフィードバック制御が行われる。
即ち、F/B制御部27d,27qは、入力されたd軸電流偏差ΔId及びq軸電流偏差ΔIqに所定のF/Bゲイン(PIゲイン)を乗ずることにより、d軸電圧指令値Vd*及びq軸電圧指令値Vq*を演算する。演算されたこれらd軸電圧指令値Vd*及びq軸電圧指令値Vq*は、回転角θとともに2相/3相変換部28に入力され、同2相/3相変換部28において三相の相電圧指令値Vu*,Vv*,Vw*に変換される。そして、第1電流制御部24aは、その各相電圧指令値Vu*,Vv*,Vw*をPWM変換部30へと出力する。
PWM変換部30は、入力された各相電圧指令値Vu*,Vv*,Vw*に基づきduty指令値αu,αv,αwを生成し、更に、これら各duty指令値αu,αv,αwに示されるオンduty比を有するモータ制御信号を生成する。そして、図2に示すように、マイコン17は、このモータ制御信号生成部24において生成されたモータ制御信号を、駆動回路18を構成する各スイッチング素子(のゲート端子)に出力することにより、同駆動回路18の作動、即ちモータ12への駆動電力の供給を制御する構成となっている。
[異常発生時の制御態様]
図2に示すように、本実施形態のECU11では、マイコン17には、EPS1に何らかの異常が生じた場合に、該異常の態様を特定するための異常判定部31が設けられている。そして、ECU11(マイコン17)は、この異常判定部31により特定(判定)された異常の態様に応じて、モータ12の制御モードを変更する。
詳述すると、異常判定部31には、EPSアクチュエータ10の機械系統の異常を検出するための異常信号S_trが入力されるようになっており、同異常判定部31は、この入力される異常信号S_trに基づいて、EPS1における機械系統の異常を検出する。また、異常判定部31には、検出された各相電流値Iu,Iv,Iw、回転角速度ω、及び上記モータ制御信号生成部24(第1電流制御部24a)において演算されたq軸電流偏差ΔIq、並びに各相のduty指令値αu,αv,αw等が入力される。そして、異常判定部31は、これら各状態量に基づいて、制御系における異常の発生を検出する。
具体的には、本実施形態の異常判定部31は、トルクセンサ14の故障や駆動回路18の故障等、制御系全般に関する異常の発生を検出するために、q軸電流偏差ΔIqを監視する。即ち、q軸電流偏差ΔIqと所定の閾値とを比較し、q軸電流偏差ΔIqが(所定時間以上継続して)当該閾値以上となった場合には、制御系に異常が発生したものと判定する。
また、異常判定部31は、各相電流値Iu,Iv,Iw、回転角速度ω、及び各相のduty指令値αu,αv,αwに基づいて、動力線(モータコイルを含む)の断線や駆動回路18の接点不良等に起因する通電不良相の発生等を検出する。この通電不良相発生の検出は、X相(X=U,V,W)の相電流値Ixが所定値Ith以下(|Ix|≦Ith)、且つ回転角速度ωが断線判定の対象範囲内(|ω|≦ω0)である場合に、該相に対応するduty指令値αxが所定値Ith及び判定対象範囲を規定する閾値ω0に対応する所定範囲(αLo≦αx≦αHi)にない状態が継続するか否かにより行われる。
尚、この場合において、上記相電流値Ixの閾値となる所定値Ithは「0」近傍の値に設定され、回転角速度ωの閾値ω0は、モータの最高回転数に相当する値に設定される。そして、duty指令値αxに関する閾値(αLo,αHi)は、それぞれ通常制御においてduty指令値αxが取り得る下限値よりも小さな値、及び上限値よりも大きな値に設定されている。
即ち、図4のフローチャートに示すように、異常判定部31は、検出される相電流値Ix(の絶対値)が所定値Ith以下であるか否かを判定し(ステップ101)、所定値Ith以下である場合(|Ix|≦Ith、ステップ101:YES)には、続いて回転角速度ω(の絶対値)が所定の閾値ω0以下であるか否かを判定する(ステップ102)。そして、回転角速度ωが所定の閾値ω0以下である場合(|ω|≦ω0、ステップ102:YES)には、duty指令値αxが上記の所定範囲(αLo≦αx≦αHi)内にあるか否かを判定し(ステップ103)、所定範囲内にない場合(ステップ103:NO)には、該X相に通電不良が生じているものと判定する(ステップ104)。
そして、相電流値Ixが所定値Ithよりも大きい場合(|Ix|>Ith、ステップ101:NO)、回転角速度ωが閾値ω0よりも大きい場合(|ω|>ω0、ステップ102:NO)、又はduty指令値αxが上記所定範囲内にある場合(αLo≦αx≦αHi、ステップ103:YES)には、X相に通電不良が生じていないと判定する(X相正常、ステップ105)。
つまり、X相(U,V,W相の何れか)に通電不良(断線)が生じた場合、当該相の相電流値Ixは「0」となる。ここで、X相の相電流値Ixが「0」又は「0に近い値」となる場合には、このような断線発生時以外にも以下の二つのケースがありうる。
− モータの回転角速度が最高回転数に達した場合
− 電流指令自体が略「0」である場合
この点を踏まえ、本実施形態では、先ず、判定対象であるX相の相電流値Ixを所定値Ithと比較することにより、当該相電流値Ixが「0」であるか否かを判定する。そして、断線時以外に相電流値Ixが「0」若しくは「0に近い値」をとる上記二つのケースに該当するか否かを判定し、当該二つのケースに該当しない場合には、X相に断線が発生したものと判定する。
即ち、相電流値Ixが「0」近傍の所定値Ith以下となるほどの回転角速度ωではないにも関わらず、極端なduty指令値αxが出力されている場合には、当該X相に通電不良が生じているものと判定することができる。そして、本実施形態では、U,V,Wの各相について、順次、上記判定を実行することにより、通電不良が発生した相を特定する構成となっている。
尚、説明の便宜のため図4のフローチャートでは省略したが、上記判定は、電源電圧がモータ12を駆動するために必要な規定電圧以上である場合を前提として行われる。そして、最終的な異常検出の判断は、所定ステップ104において通電不良が生じているものと判定される状態が所定時間以上継続したか否かにより行われる。
本実施形態では、ECU11(マイコン17)は、この異常判定部31における異常判定の結果に基づいて、モータ12の制御モードを切り替える。具体的には、異常判定部31は、上記のような通電不良検出を含む異常判定の結果を異常検出信号S_tmとして出力し、電流指令値演算部23及びモータ制御信号生成部24は、その入力される異常検出信号S_tmに応じた電流指令値の演算、及びモータ制御信号の生成を実行する。そして、これにより、マイコン17におけるモータ12の制御モードが切り替えられるようになっている。
さらに詳述すると、本実施形態のECU11は、通常時の制御モードである「通常制御モード」、及びモータ12の駆動を停止すべき異常が発生している場合の制御モードである「アシスト停止モード」、並びにモータ12の各相の何れかに通電不良が生じた場合の制御モードである「二相駆動モード」、以上の大別して3つの制御モードを有している。そして、異常判定部31の出力する異常検出信号S_tmが「通常制御モード」に対応するものである場合には、電流指令値演算部23及びモータ制御信号生成部24は、それぞれ、上記通常時における電流指令値の演算、及びモータ制御信号の生成を実行する。
一方、異常判定部31の出力する異常検出信号S_tmが「アシスト停止モード」である場合には、電流指令値演算部23及びモータ制御信号生成部24は、モータ12の駆動を停止すべく、それぞれ電流指令値の演算、及びモータ制御信号の生成を実行する。尚、「アシスト停止モード」が選択される場合としては、機械系統の異常やトルクセンサ14に異常が発生した場合のほか、電力供給系統における異常発生時については、過電流が生じた場合等が挙げられる。また、「アシスト停止モード」には、直ちにモータ12の駆動を停止する場合のほか、モータ12の出力を徐々に低減する、即ちアシスト力を徐々に低減した後に停止させる場合があり、この場合、モータ制御信号生成部24は、その電流指令値として出力するq軸電流指令値Iq*の値(絶対値)を徐々に低減する。そして、マイコン17は、モータ12の停止後、駆動回路18を構成する各スイッチング素子を開状態とし、図示しない電源リレーを開放する構成となっている。
また、「二相駆動モード」に対応する異常検出信号S_tmには、通電不良発生相を特定する情報が含まれている。そして、異常判定部31の出力する異常検出信号S_tmがこの「二相駆動モード」に対応するものである場合、モータ制御信号生成部24は、当該通電不良発生相以外の二相を通電相としてモータ駆動を継続すべく、そのモータ制御信号の生成を実行する。
詳述すると、図2に示すように、本実施形態のモータ制御信号生成部24は、上記d/q座標系における電流フィードバック制御の実行により各相電圧指令値Vu*,Vv*,Vw*を演算する第1電流制御部24aに加え、相電流フィードバック制御の実行により各相電圧指令値Vu**,Vv**,Vw**を演算する第2電流制御部24bを備えている。そして、異常判定部31から入力される異常検出信号S_tmが上記「二相駆動モード」に対応するものである場合には、この第2電流制御部24bにより演算される各相電圧指令値Vu**,Vv**,Vw**に基づいてモータ制御信号の出力を実行する。
さらに詳述すると、図3に示すように、本実施形態の第2電流制御部24bは、検出された通電不良発生相以外の残る二相のうちの一相を制御相として選択する制御相選択部32と、当該制御相として選択される相についての相電流指令値Ix*(X=U,V,Wの何れか)を演算する相電流指令値演算部33とを備えている。そして、当該制御相として選択された相電流値Ixとその相電流指令値Ix*(Ix**)との偏差に基づく相電流フィードバック制御の実行により、通電不良発生相以外の二相を通電相としたモータ駆動を実行すべく各相電圧指令値Vu**,Vv**,Vw**を演算する。
具体的には、相電流指令値演算部33が出力する相電流指令値Ix*は、ガード処理部34に入力される。そして、ガード処理が施された後の相電流指令値Ix**は、制御相選択部32において制御相として選択された相の相電流値Ixとともに、減算器35に入力される。減算器35は、相電流指令値Ix*から相電流値Ixを減算することにより相電流偏差ΔIxを演算し、その演算された相電流偏差ΔIxをF/B制御部36に出力する。そして、F/B制御部36は、入力された相電流偏差ΔIxにF/Bゲインを乗ずることにより、当該制御相についての相電圧指令値Vx*を演算する。
F/B制御部36において演算された相電圧指令値Vx*は、相電圧指令値演算部37に入力される。そして、相電圧指令値演算部37は、その制御相についての相電圧指令値Vx*に基づいて各相電圧指令値Vu**,Vv**,Vw**を演算する。
即ち、通電不良発生相は通電不能であり、また二相駆動時の各通電相の位相はπ/2(180°)ずれることになる。従って、通電不良発生相の相電圧指令値は「0」、残る他方の通電相の相電圧指令値は、上記制御相に関する相電圧指令値Vx*の符号を反転することにより演算可能である。そして、本実施形態の第2電流制御部24bは、このようにして演算された各相電圧指令値Vu**,Vv**,Vw**を上記PWM変換部30へと出力する構成となっている。
ここで、本実施形態の相電流指令値演算部33は、二相駆動時、その通電不良発生相に対応する所定の回転角を除いて、要求トルク、即ちモータトルクの制御目標値(q軸電流指令値Iq*)に対応するモータ電流(q軸電流値Iq)が発生するような相電流指令値Ix*を演算する。
具体的には、相電流指令値演算部33は、その通電不良発生相に応じて、以下の(1)〜(3)式に基づいて、残る二相のうちの一相の相電流指令値Ix*を演算する。
即ち、上記(1)〜(3)式により、通電不良発生相に対応する所定の回転角θA,θBを漸近線として、正割曲線(cosθの逆数(セカント:secθ))、又は余割曲線(sinθの逆数(コセカント:cosecθ))状に変化する相電流指令値Ix*が演算される(図5参照)。そして、このような正割曲線又は余割曲線状に変化する相電流指令値Ix*に基づき相電流フィードバック制御を実行することにより、理論上、その漸近線に相当する所定の回転角θA,θBを除いて、要求トルク(q軸電流指令値Iq*)に対応したモータ電流(q軸電流値Iq)を発生させることができる(図6参照)。
尚、図5及び図6は、U相が通電不良相、V,W相の二相が通電相となった場合の例であり、上記の各漸近線に相当する二つの回転角のうち、電気角0°〜360°の範囲において、その値の小さい方を回転角θA、大きい方を回転角θBとすると、この場合、該各回転角θA,θBは、それぞれ「90°」「270°」となる。そして、V相が通電不良発生相である場合の所定の回転角θA,θBは、それぞれ「30°」「210°」となり、W相が通電不良発生相である場合の所定の回転角θA,θBは、それぞれ「150°」「330°」となる(図示略)。
また、実際には、各相のモータコイル12u,12v,12wに通電可能な電流(の絶対値)には上限があるため、本実施形態では、上記ガード処理部34において、相電流指令値演算部33から出力された相電流指令値Ix*を所定範囲内(−Ix_max≦Ix*≦Ix_max)に制限するガード処理が実行される。尚、「Ix_max」は、X相(U,V,W相)に通電可能な電流値の最大値であり、この最大値は、駆動回路18を構成する各スイッチング素子の定格電流等により規定される。このため、そのガード処理が行われる範囲(電流制限範囲:θ1<θ<θ2,θ3<θ<θ4)において、当該ガード処理後の相電流指令値Ix**は、その通電可能な上限値(Ix_max)又は下限値(−Ix_max)で一定となる。
つまり、本実施形態のマイコン17は、二相駆動時、各通電相に対して正割曲線又は余割曲線状に変化する相電流を通電すべく、相電流フィードバック制御を実行することにより、その漸近線に相当する所定の回転角θA,θB近傍に設定された電流制限範囲(θ1<θ<θ2,θ3<θ<θ4)を除き、要求トルクに対応するモータ電流を発生させる。そして、これにより、通電不良相の発生時においても、大きなトルクリップルの発生を招くことなく、良好な操舵フィーリングを維持したまま、アシスト力付与を継続する構成となっている。
次に、マイコンによる上記異常判定及び制御モードの切り替え、並びに二相駆動時におけるモータ制御信号生成の処理手順について説明する。
図7のフローチャートに示すように、マイコン17は、先ず何らかの異常が発生したか否かを判定し(ステップ201)、異常が発生したと判定した場合(ステップ201:YES)には、続いてその異常が制御系の異常であるか否かを判定する(ステップ202)。次に、ステップ202において、制御の異常が発生したと判定した場合(ステップ202:YES)、現在の制御モードが二相駆動モードであるか否かを判定し(ステップ203)、二相駆動モードではない場合(ステップ203:NO)には、当該制御系の異常が、通電不良相の発生であるか否かを判定する(ステップ204)。そして、通電不良相が発生したと判定した場合(ステップ204:YES)には、当該通電不良相以外の残る二相を通電相とするモータ制御信号の出力を実行する(二相駆動モード、ステップ205)。
上述のように、この二相駆動モードにおけるモータ制御信号の出力は、通電不良発生相に応じた所定の回転角θA,θBを漸近線として正割曲線又は余割曲線状に変化する相電流指令値を演算し、その相電流指令値に基づく相電流フィードバック制御を実行することにより行われる。
即ち、図8のフローチャートに示すように、マイコン17は、先ず、通電不良発生相がU相であるか否かを判定し(ステップ301)、U相であるである場合(ステップ301:YES)には、上記(1)式に基づいて、V相についての相電流指令値Iv*を演算する(ステップ302)。次に、マイコン17は、その相電流指令値Iv*についてガード処理演算を実行し、当該ガード処理後の相電流指令値Iv**を所定範囲内に制限する(ステップ303)。そして、そのガード処理後の相電流指令値Iv**に基づく相電流フィードバック制御の実行によりV相についての相電圧指令値Vv*を演算し(ステップ304)、当該相電圧指令値Vv*に基づいて、各相の相電圧指令値Vu**,Vv**,Vw**を演算する(Vu**=0,Vv**=Vv*,Vw**=-Vv*、ステップ305)。
一方、上記ステップ301において、通電不良発生相がU相ではないと判定した場合(ステップ301:NO)、マイコン17は、通電不良発生相がV相であるかを判定し(ステップ306)、通電不良発生相がV相である場合(ステップ306:YES)には、上記(2)式に基づいて、U相についての相電流指令値Iu*を演算する(ステップ307)。次に、マイコン17は、その相電流指令値Iu*についてガード処理演算を実行し、当該ガード処理後の相電流指令値Iu**を所定範囲内に制限する(ステップ308)。そして、そのガード処理後の相電流指令値Iv**に基づく相電流フィードバック制御を実行し(ステップ309)、該相電流フィードバック制御の実行により演算された相電圧指令値Vu*に基づいて、各相の相電圧指令値Vu**,Vv**,Vw**を演算する(Vu**=Vu*,Vv**=0,Vw**=-Vu*、ステップ310)。
また、上記ステップ306において、通電不良発生相がV相ではないと判定した場合(ステップ306:NO)、マイコン17は、上記(3)式に基づいて、V相についての相電流指令値Iv*を演算し(ステップ311)、続いてガード処理演算を実行することにより、当該ガード処理後の相電流指令値Iv**を所定範囲内に制限する(ステップ312)。そして、そのガード処理後の相電流指令値Iv**に基づく相電流フィードバック制御を実行し(ステップ313)、該相電流フィードバック制御の実行により演算された相電圧指令値Vv*に基づいて、残る二相(V,W相)の相電圧指令値Vu**,Vw**を演算する(Vu**=-Vv*,Vv**=Vv*,Vw**=0、ステップ314)。
そして、マイコン17は、上記ステップ305、ステップ310、又はステップ314において演算された各相電圧指令値Vu**,Vv**,Vw**に基づくモータ制御信号を生成し、駆動回路18に出力する(ステップ315)。
尚、上記ステップ201において、特に異常はないと判定した場合(ステップ201:NO)には、マイコン17は、上述のように、d/q座標系での電流フィードバック制御の実行によりモータ制御信号の出力を実行する(通常制御モード、ステップ206)。また、上記ステップ202において、制御系以外の異常が発生したと判定した場合(ステップ202:NO)、ステップ203において、既に二相駆動モードであると判定した場合(ステップ203:YES)、又は上記ステップ203において、通電不良相の発生以外の異常が発生したと判定した場合(ステップ203:NO)には、マイコン17は、アシスト停止モードへと移行する(ステップ207)。そして、モータ12の駆動を停止するためのモータ制御信号の出力、及び電源リレーの開放等を実行する。
[二相駆動時の過熱抑制制御]
次に、本実施形態における二相駆動時の過熱抑制制御の態様について説明する。
このように、本実施形態では、各通電相に対して正割曲線又は余割曲線状に変化する相電流を通電することにより、二相駆動時、要求トルク(q軸電流指令値Iq*)に対応したモータ電流(q軸電流値Iq)を発生させる。
ところが、こうした正割曲線又は余割曲線状に変化する相電流(の絶対値)は、理論上、その漸近線に相当する上記所定の回転角θA,θB近傍において無限大まで増大することになり、その結果、モータ12や駆動回路18等に過剰な発熱が発生するおそれがある。そのため、本実施形態では、上記ガード処理部34により、その相電流指令値Ix*を所定範囲内(−Ix_max≦Ix*≦Ix_max)に制限するガード処理、即ち電流制限を行なうことで、こうした発熱部位における過熱の発生を抑制する。
しかしながら、このような電流制限を実行するとはいえ、その漸近線に相当する上記所定の回転角θA,θB近傍を通過する毎に、必ず通電可能な上限値(Ix_max)又は下限値(−Ix_max)まで相電流値Ixが上昇するのでは、長時間に亘る使用時においては、その電流制限の効果もまた限定的である。そして、何れモータ12や駆動回路18等の発熱部位に過熱が生ずることによって、パワーアシスト制御を停止せざるを得なくなるという問題がある。従って、これを考慮するならば、本実施形態のような通電形態を採用する場合、その電流制限の閾値は、できるだけ低く設定することが望ましい。
しかしながら、その一方で、ステアリング操作を補助するための十分なアシスト力付与という点を考慮するならば、安易には、電流制限の閾値を下げることができないという問題も存在する。
即ち、本来、このような正割曲線又は余割曲線状に変化する相電流の通電によりモータ制御をする場合において、一定のモータトルクを発生させるためには、理論上、その相電流値Ix(の絶対値)は、上記所定の回転角θA,θB近傍において無限大まで増大しなければならない。しかし、上記電流制限を実行した場合には、当該電流制限範囲において、その発生するモータトルクがアシスト力目標値を下回ることになり、ひいては、これが円滑なモータ回転の妨げとなる可能性がある。
つまり、図9に示すように、二相駆動時、上記電流制限に伴うモータトルク(アシストトルク)の低下より、当該所定の回転角θA,θB近傍には、操舵方向のトルク(操舵トルクとアシストトルクとの和)が戻し方向の反力トルク(軸力)を下回る区間が存在する。そして、当該区間においては、その電流制限に起因する操舵方向のトルクの低下により、その操舵速度が減速することになる(減速区間:θa<θ<θa´,θb<θ<θb´)。
ここで、この減速区間への突入速度を「ωin」、脱出速度を「ωout」、及びモータ慣性を「Jm」とし、当該減速区間における減速エネルギーを「−En」とすると、エネルギー保存法則から、次の(4)式が成立する。
尚、この場合における「突入速度」とは、例えば、図10中、操舵方向が「左から右」である場合における回転角θaにおける回転角速度ωの値あり、「脱出速度」とは、同じく回転角θa´における回転角速度ωの値である。
従って、脱出速度ωoutが「0」を超える、即ちこの減速区間を停止することなく通過するためには、その突入速度ωinが次の(5)式に示される臨界速度ωcrよりも速くなけらばならない。
つまり、図10に示すように、その回転角速度ωが臨界速度ωcr以下であるような低速操舵時(ω≦ωcr)には、上記減速区間を通過することができず、例えば、当該減速区間の脱出位置である回転角θa´よりも手前(突入角となる回転角θa側)の回転角θpで、その回転角速度ωは「0」となる。ここで、この減速区間では、操舵方向のトルク(操舵トルクとアシストトルクとの和)よりも戻し方向のトルク(反力トルク)の方が大きい(「操舵トルク」+「アシストトルク」<「反力トルク(軸力)」)。そのため、モータは、同回転角θpで一度停止した後、戻し方向へと逆回転する。そして、その操舵トルクに特別の変化がない場合、最終的には、操舵方向のトルクと戻し方向のトルクとが釣り合う回転角θaにおいて回転停止する、即ち所謂「引っ掛かり」の発生した状態となるおそれがある。
この点を踏まえ、本実施形態のマイコン17は、図11に示すように、検出される操舵速度ωsに応じて、その二相駆動時における相電流フィードバック制御のゲイン(F/BゲインKfb)を変更する。詳しくは、操舵速度ωs(の絶対値)大きいほど、そのF/BゲインKfbを低減する(F/Bゲイン可変制御)。
具体的には、図3に示すように、本実施形態の第2電流制御部24bには、F/Bゲイン演算部40が設けられており、F/B制御部36は、このF/Bゲイン演算部40により演算されるF/BゲインKfbに基づいて、二相駆動時における相電流フィードバック制御を実行する。そして、本実施形態のF/Bゲイン演算部40は、その入力される操舵速度ωs(回転角速度ω)に基づいて、上記のような当該操舵速度ωs(の絶対値)が大きいほどより小さなF/BゲインKfbを演算する構成となっている。
即ち、図12及び図13に示すように、実際には、相電流指令値Ix*に対して相電流値Ixが完全に追従することはなく、その追従性は、F/BゲインKfbに依存することになる。具体的には、F/BゲインKfbが大きいほど追従性が高く、またF/BゲインKfbが小さいほど追従性は低くなる。従って、F/BゲインKfbの低減により、相電流値Ixは、その漸近線近傍におけるピークが小さくなり、電流制限の閾値として設定された通電可能な上限値(Ix_max)又は下限値(−Ix_max)まで上昇しなくなる。そして、上記引っ掛かりの問題は、モータ12の回転角速度ω、つまりは操舵速度ωsに依存して発生し、当該操舵速度ωs(の絶対値)が大きい場合ほど起こりにくい。
従って、操舵速度ωs(の絶対値)に応じてF/BゲインKfbを変更、即ち操舵速度ωsが大きい場合には、F/BゲインKfbを小とし、操舵速度ωsが小さい場合には、F/BゲインKfbを大とすることで、引っ掛かりの問題を生ずることなく、上記所定の回転角θA,θB近傍の相電流値Ix(の絶対値)を抑えて発熱部位の過熱を抑制することができる。その結果、長時間に亘る使用時においても、その安定的なアシスト力付与を実行することができるようになる。
なお、本実施形態は以下のように変更してもよい。
・本実施形態では、モータ制御装置としてのECU11は、大別して、「通常制御モード」、「アシスト停止モード」、及び「二相駆動モード」の3つの制御モードを有することとした。しかし、異常発生時におけるモータ制御の形態は、これらのモードに限るものではない。つまり、通電不良相発生時に該通電不良発生相以外の二相を通電相としてモータ制御を実行する構成であれば、どのようなものに適用してもよい。また、異常検出(判定)の方法についても、本実施形態の構成に限るものではない。
・本実施形態では、電流指令値演算部23は、二相駆動時、通電不良発生相以外の二相のうちの一相についての相電流指令値を出力し、モータ制御信号生成部24は、当該相についての相電圧指令値を演算した後に、これに基づいて他相の相電圧指令値を演算することとした。しかし、これに限らず、電流指令値演算部23が、通電不良発生相以外の二相の両方についての相電流指令値を出力する構成としてもよい。
・また、本実施形態では、上記(1)〜(3)式に基づいて、U相又はW相の異常時には、V相の相電流指令値Iv*を演算し、V相の異常時には、U相の相電流指令値Iu*を演算することとした。しかし、これに限らず、U相又はV相の異常時には、W相の相電流指令値(Iw*)を演算し、W相の異常時には、U相の相電流指令値(Iu*)を演算する等の構成としてもよい。尚、この場合における各相電流指令値は、上記(1)〜(3)式の符号を逆にすることで演算可能である。
・更に、通電不良発生時における相電流指令値は、必ずしも上記(1)〜(3)式により演算した場合と完全には同一でなくともよい。即ち、所定の回転角を漸近線として略正割曲線又は略余割曲線状に変化する、或いはこれに近似して変化するような相電流指令値を演算しても、上記各実施形態に近い効果を得ることができる。但し、上記(1)〜(3)式に基づき相電流指令値を演算した場合が、最も要求トルクに近いモータ電流を発生させることが可能であり、該各式に基づき演算される相電流指令値に近い値が演算される方法ほど、より顕著な効果が得られることはいうまでもない。
・本実施形態では、第2電流制御部24bに設けられたF/Bゲイン演算部40は、入力される操舵速度ωsに基づいて、操舵速度ωs(の絶対値)が大きいほどより小さなF/BゲインKfbを演算する。そして、F/B制御部36は、このF/Bゲイン演算部40により演算されるF/BゲインKfbに基づいて、二相駆動時における相電流フィードバック制御を実行することとした。
しかし、これに限らず、操舵系においてステアリング操作に対して逆向きに作用する反力トルクの大きさ(絶対値)を推定する。そして、図14に示すように、その推定される反力トルクの大きさに基づいて、F/BゲインKfbを変更する。詳しくは、その反力トルク(の絶対値)が小さいほど、F/BゲインKfbを小さな値とする構成としてもよい。
即ち、図9に示すように、引っ掛かりの問題は、モータ12の回転角速度ωと同様、反力トルクの大きさにも依存し、当該反力トルク(の絶対値)が小さい場合ほど起こりにくい。従って、このように反力トルクの大きさに応じてF/Bゲインを変更する構成としても、引っ掛かりの問題を生ずることなく、上記所定の回転角θA,θB近傍の相電流値Ix(の絶対値)を抑えて発熱部位の過熱を抑制することができる。その結果、長時間に亘る使用時においても、その安定的なアシスト力付与を実行することができるようになる。
尚、反力トルクの大きさの推定は、例えば、反力トルクが大きいほど、要求アシスト力が大となる関係を利用して、目標アシスト力に対応するq軸電流指令値Iq*に基づいて行なう等とすればよい。そして、当該反力トルクの大きさを推定する反力トルク推定手段としての機能については、F/Bゲイン演算部40に付加する構成としてもよく、同F/Bゲイン演算部40の外部に設ける構成としてもよい。
・また、検出される操舵速度ωs(の絶対値)、及び推定される反力トルクの大きさに基づいて、「引っ掛かりの発生しやすさ」を推定する。そして、その推定される「引っ掛かりの発生しやすさ」が低いほど、より低い値にF/BゲインKfbを変更する構成としてもよい。
・更に、電流制御の形態としては、必ずしも、上記各実施形態のような三相交流座標(U,V,W)における相電流フィードバック制御でなくともよい。例えば、以下に示す(6)〜(8)式により、通電不良発生相に応じた所定の回転角θA,θBを漸近線として、正接曲線(タンジェント)状に変化するd軸電流指令値Id*を演算する。そして、該d軸電流指令値Id*に基づくd/q座標系の電流フィードバック制御の実行によりモータ制御信号を生成する構成に適用してもよい(図15参照、同図はU相通電不良時の例)。尚、この場合におけるF/Bゲイン可変制御については、そのd/q座標系における電流フィードバック制御において行なうこととすればよい。
・本実施形態では、本発明をラックアシスト型のEPSに具体化したが、所謂コラムアシスト型等、その他型式のEPSに適用してもよい。
1…電動パワーステアリング装置(EPS)、10…EPSアクチュエータ、11…ECU、12…モータ、12u,12v,12w…モータコイル、17…マイコン、18…駆動回路、23…電流指令値演算部、24…モータ制御信号生成部、24a…第1電流制御部、24b…第2電流制御部、31…異常判定部、33…相電流指令値演算部、34…ガード処理部、36…F/B制御部、37…相電圧指令値演算部、40…F/Bゲイン演算部、Ix,Iu,Iv,Iw…相電流値、Ix*,Iu*,Iv*,Iw*…相電流指令値、Vx*,Vu*,Vv*,Vw*,Vu**,Vv**,Vw**…相電圧指令値、Id…d軸電流値、Iq…q軸電流値、Id*…d軸電流指令値、Iq*…q軸電流指令値、θ,θA,θB,θv,θa,θa´,θb,θb´,θp…回転角、ω…回転角速度、ωs…操舵速度、ωin…突入速度、ωout…脱出速度、ωcr…臨界速度、Kfb…F/Bゲイン。