以下、本発明の一実施形態に係る電動パワーステアリング装置について図面を用いて説明する。図1は、同実施形態に係る車両の電動パワーステアリング装置の概略構成を表している。
この電動パワーステアリング装置は、操舵ハンドル11の操舵操作により転舵輪を転舵するステアリング機構10と、ステアリング機構10に組み付けられ操舵アシストトルクを発生するモータ20と、モータ20を駆動するためのモータ駆動回路30と、モータ20の作動を制御する電子制御装置100とを主要部として備えている。以下、電子制御装置100をアシストECU100と呼ぶ。
ステアリング機構10は、操舵ハンドル11の回転操作により左右前輪FWL,FWRを転舵するための機構で、操舵ハンドル11を上端に一体回転するように接続したステアリングシャフト12を備える。このステアリングシャフト12の下端には、ピニオンギヤ13が一体回転するように接続されている。ピニオンギヤ13は、ラックバー14に形成されたラック歯と噛み合って、ラックバー14とともにラックアンドピニオン機構を構成する。ラックバー14の両端には、タイロッド15L,15Rを介して左右前輪FWL,FWRのナックル(図示略)が操舵可能に接続されている。左右前輪FWL,FWRは、ステアリングシャフト12の軸線回りの回転に伴うラックバー14の軸線方向の変位に応じて左右に操舵される。
ラックバー14には、電動モータ20が組み付けられている。電動モータ20は、本発明の永久磁石同期モータに相当するものであり、本実施形態においては、その代表例である3相ブラシレスDCモータが用いられる。電動モータ20(以下、単にモータ20と呼ぶ)の回転軸は、ボールねじ機構16を介してラックバー14に動力伝達可能に接続されていて、その回転により左右前輪FWL,FWRに転舵力を付与して操舵操作をアシストする。ボールねじ機構16は、減速機および回転−直線変換器として機能するもので、モータ20の回転を減速するとともに直線運動に変換してラックバー14に伝達する。
ステアリングシャフト12には、操舵トルクセンサ21が設けられる。操舵トルクセンサ21は、例えば、ステアリングシャフト12の中間部に介装されたトーションバー(図示略)の捩れ角度をレゾルバ等により検出し、この捩れ角に基づいてステアリングシャフト12に働いた操舵トルクTrを検出する。操舵トルクTrは、正負の値により操舵ハンドル11の操作方向が識別される。本実施形態においては、操舵ハンドル11の右方向への操舵時における操舵トルクTrを正の値で、操舵ハンドル11の左方向への操舵時における操舵トルクTrを負の値で示す。従って、操舵トルクTrの大きさを論じる場合には、その絶対値|Tr|を用いる。尚、本実施形態においては、トーションバーの捩れ角度をレゾルバにより検出するが、エンコーダ等の他の回転角センサにより検出することもできる。
モータ20には、回転角センサ22が設けられる。この回転角センサ22は、モータ20内に組み込まれ、モータ20の回転子の回転角度位置に応じた検出信号を出力するもので、例えば、レゾルバにより構成される。回転角センサ22は、モータ20の回転角θmを表す検出信号をアシストECU100に出力する。アシストECU100は、この回転角θmからモータ20の電気角θeを検出する。尚、モータ20の電気角θeは、回転角センサ22により検出された電気角と、後述する推定により求めた電気角との2種類あるため、両者を区別する必要がある場合には、回転角センサ22により検出された電気角を実電気角θeaと呼び、推定により求めた電気角を推定電気角θebと呼ぶ。また、本実施形態においては、回転角センサ22としてレゾルバを使用しているが、エンコーダ等の他の回転角センサを用いることもできる。
モータ駆動回路30は、MOS−FET(Metal Oxide Semiconductor Field Effect Transistor)からなる6個のスイッチング素子31〜36により3相インバータ回路を構成したものである。具体的には、第1スイッチング素子31と第2スイッチング素子32とを直列接続した回路と、第3スイッチング素子33と第4スイッチング素子34とを直列接続した回路と、第5スイッチング素子35と第6スイッチング素子36とを直列接続した回路とを並列接続し、各直列回路における2つのスイッチング素子間(31−32,33−34,35−36)からモータ20への電力供給ライン37を引き出した構成を採用している。
モータ駆動回路30には、モータ20に流れる電流を検出する電流センサ38が設けられる。この電流センサ38は、各相(U相,V相,W相)ごとに流れる電流をそれぞれ検出し、その検出した電流値Iu,Iv,Iwに対応した検出信号をアシストECU100に出力する。以下、この測定された3相の電流値をモータ電流Iuvwと総称する。また、モータ駆動回路30には、モータ20の端子電圧を検出する電圧センサ39が設けられる。電圧センサ39は、各相(U相,V相,W相)の端子電圧をそれぞれ検出し、その検出した電圧値Vu,Vv,Vwに対応した検出信号をアシストECU100に出力する。以下、この測定された3相の端子電圧をモータ端子電圧Vuvwと総称する。
モータ駆動回路30の各スイッチング素子31〜36は、それぞれゲートがアシストECU100に接続され、アシストECU100から出力されるPWM制御信号によりデューティ比が制御される。これによりモータ20の駆動電圧が目標電圧に調整される。
アシストECU100は、CPU,ROM,RAM等からなるマイクロコンピュータを主要部として構成される。アシストECU100は、操舵トルクセンサ21、回転角センサ22、電流センサ38、電圧センサ39、および、車速を検出する車速センサ25を接続し、操舵トルクTr、回転角θm、モータ電流Iu,Iv,Iw、モータ端子電圧Vu,Vv,Vw、車速vを表す検出信号を入力する。そして、入力した検出信号に基づいて、運転者の操舵操作に応じた最適な操舵アシストトルク(以下、単にアシストトルクと呼ぶ)が得られるようにモータ20に流す指令電流を演算し、その指令電流が流れるようにモータ駆動回路30の各スイッチング素子31〜36のデューティ比を制御する。
次に、電動パワーステアリング装置の電源供給系統について説明する。電動パワーステアリング装置は、車載電源装置80から電源供給される。車載電源装置80は、定格出力電圧12Vの一般的な車載バッテリである主バッテリ81と、エンジンの回転により発電する定格出力電圧14Vのオルタネータ82とを並列接続して構成される。車載電源装置80には、電源供給元ライン83と接地ライン84が接続される。電源供給元ライン83は、制御系電源ライン85と駆動系電源ライン86とに分岐する。制御系電源ライン85は、アシストECU100に電源供給するための電源ラインとして機能する。駆動系電源ライン86は、モータ駆動回路30とアシストECU100との両方に電源供給する電源ラインとして機能する。
制御系電源ライン85には、イグニッションスイッチ87が接続される。駆動系電源ライン86には、主電源リレー88が接続される。この主電源リレー88は、アシストECU100からの制御信号によりオンしてモータ20への電力供給回路を形成するものである。制御系電源ライン85は、アシストECU100の電源+端子に接続されるが、その途中で、イグニッションスイッチ87よりも負荷側(アシストECU100側)においてダイオード89を備えている。このダイオード89は、カソードをアシストECU100側、アノードを車載電源装置80側に向けて設けられ、電源供給方向にのみ通電可能とする逆流防止素子である。
駆動系電源ライン86には、主電源リレー88よりも負荷側において制御系電源ライン85と接続する連結ライン90が分岐して設けられる。この連結ライン90は、制御系電源ライン85におけるダイオード89の接続位置よりもアシストECU100側に接続される。また、連結ライン90には、ダイオード91が接続される。このダイオード91は、カソードを制御系電源ライン85側に向け、アノードを駆動系電源ライン86側に向けて設けられる。従って、連結ライン90を介して駆動系電源ライン86から制御系電源ライン85には電源供給できるが、制御系電源ライン85から駆動系電源ライン86には電源供給できないような回路構成となっている。駆動系電源ライン86および接地ライン84は、モータ駆動回路30の電源入力部に接続される。また、接地ライン84は、アシストECU100の接地端子にも接続される。
次に、アシストECU100が行うモータ20の制御について説明する。アシストECU100は、図4に示すように、モータ20の回転子に設けられた永久磁石の磁界が貫く方向にd軸、d軸に直交する方向(d軸に対して電気角がπ/2だけ進んだ方向)にq軸を定めたd−q座標を用いた電流ベクトル制御によってモータ20の回転を制御する。電気角θeは、U相コイルを貫く軸とd軸との回転角となる。電流ベクトルのd軸成分をd軸電流と呼び、q軸成分をq軸電流と呼ぶ。q軸電流は、q軸方向に磁界が発生するように作用する。従って、q軸電流は、モータトルクを発生させる。一方、d軸電流は、d軸方向に磁界を発生させるため、モータトルクを発生できず、弱め界磁制御に使用される。アシストECU100は、最大のモータトルク効率を得るために、電流ベクトルがq軸上を移動するように電流位相を制御する(d軸電流をゼロ)。
アシストECU100は、こうした電流ベクトル制御を行うにあたって、電気角θeを検出することによりd−q座標を定める。この電気角θeは、回転角センサ22により検出される回転角信号から求められるが、回転角センサ22が故障した場合には、電気角θeを求めることができない。そこで、アシストECU100は、回転角センサ22が故障した場合には、後述する処理により推定電気角θebを算出し、その推定電気角θebを使って電流ベクトル制御を行う。この場合、d軸を推定した制御上の軸をγ軸と呼び、q軸を推定した制御上の軸をδ軸と呼ぶ。
次に、アシストECU100の機能について図2を用いて説明する。図2は、アシストECU100のマイクロコンピュータのプログラム制御により処理される機能を表す機能ブロック図である。アシストECU100は、アシスト電流指令部101を備えている。アシスト電流指令部101は、図5に示すように、操舵トルクTrと車速vとに応じて目標アシストトルクT*を設定するためのアシストマップを記憶する。アシスト電流指令部101は、操舵トルクセンサ21から出力される操舵トルクTr及び車速センサ25から出力される車速vを入力して、このアシストマップを参照することにより目標アシストトルクT*を計算する。この場合、目標アシストトルクT*は、操舵トルクTrの増加にしたがって増加するとともに車速vの増加にしたがって減少する。尚、図5は、右方向の操舵時におけるアシストマップであって、左方向の操舵時におけるアシストマップは、右方向のものに対して操舵トルクTrと目標アシストトルクT*の符号をそれぞれ反対(つまり負)にしたものとなる。アシスト電流指令部101は、計算した目標アシストトルクT*をトルク定数で除算することにより、d−q座標におけるq軸指令電流Iq*を算出する。また、アシスト電流指令部101は、d軸指令電流Id*をゼロ(Id*=0)に設定する。
このように計算されたq軸指令電流Iq*とd軸指令電流Id*は、フィードバック制御部102に出力される。フィードバック制御部102は、q軸指令電流Iq*からq軸実電流Iqを減算した偏差ΔIqを算出し、この偏差ΔIqを使った比例積分制御によりq軸実電流Iqがq軸指令電流Iq*に追従するようにq軸指令電圧Vq*を計算する。同様に、d軸指令電流Id*からd軸実電流Idを減算した偏差ΔIdを算出し、この偏差ΔIdを使った比例積分制御によりd軸実電流Idがd軸指令電流Id*に追従するようにd軸指令電圧Vd*を計算する。
q軸実電流Iqおよびd軸実電流Idは、モータ20のコイルに実際に流れた3相電流の検出値Iu,Iv,Iwをd−q座標の2相電流に変換したものである。この3相電流Iu,Iv,Iwからd−q座標の2相電流Id,Iqへの変換は、3相/2相座標変換部103によって行われる。3相/2相座標変換部103は、電気角選択部132から出力される電気角θeを入力し、その電気角θeに基づいて、電流センサ38により検出した3相電流Iu,Iv,Iwをd−q座標の2相電流Id,Iqに変換する。
3相座標からd−q座標に変換する変換行列Cは次式(1)にて表される。
尚、電気角選択部132は、後述するが、回転角センサ22の異常が検出されていないときは、モータ20の実電気角θeaを電気角θeとして出力し、回転角センサ22の異常が検出されているときは、モータ20の推定電気角θebを電気角θeとして出力する。
フィードバック制御部102により算出されたq軸指令電圧Vq*とd軸指令電圧Vd*は、2相/3相座標変換部105に出力される。2相/3相座標変換部105は、電気角選択部132から出力される電気角θeに基づいて、q軸指令電圧Vq*とd軸指令電圧Vd*を3相指令電圧Vu*,Vv*,Vw*に変換して、その変換した3相指令電圧Vu*,Vv*,Vw*をPWM信号発生部106に出力する。PWM信号発生部106は、3相指令電圧Vu*,Vv*,Vw*に対応したPWM制御信号をモータ駆動回路30のスイッチング素子31〜36に出力する。これによりモータ20が駆動され、目標アシストトルクT*に追従したアシストトルクがステアリング機構10に付与される。
回転角センサ22から出力される回転検出信号は、実電気角変換部130とセンサ異常検出部131とに出力される。実電気角変換部130は、回転角センサ22により出力される回転検出信号からモータ20の実電気角θeaを算出し、算出した実電気角θeaを電気角選択部132に出力する。本発明における回転角センサは、この回転角センサ22と実電気角変換部130とから構成される。センサ異常検出部131は、回転角センサ22から出力される回転検出信号に基づいて、回転角センサ22の異常を検出する。回転角センサ22としてレゾルバを採用した場合には、レゾルバ内の検出用コイルや励磁用コイルが断線したり絶縁不良を起こしたりすることが考えられる。そこで、センサ異常検出部131は、検出用コイルの出力信号の振幅を監視し、その振幅が予め設定した許容範囲から外れた場合には、センサ異常と判定する。また、検出用コイルは、出力信号がπ/2だけ位相がずれるように一対設けられるため、2つの出力信号を比較して異常を検出することもできる。例えば、一方の検出用コイルから正弦波信号が出力されているときに、他方の検出用コイルから一定値信号が出力されているときなど、2つの出力信号の組み合わせが矛盾するケースにおいても異常であると判定することができる。センサ異常検出部131は、このようにして回転角センサ22の異常の有無を判定し、異常の有無を表すセンサ異常判定信号Fを出力する。センサ異常検出部131は、例えば、異常有りと判定した場合には、センサ異常判定信号Fを「1」に設定し、異常無しと判定した場合にはセンサ異常判定信号Fを「0」に設定する。
回転角センサ22に異常が発生した場合には、電気角を検出できなくなるため、電流ベクトル制御にてモータ20を駆動できなくなる。そこで、アシストECU100には、回転角センサ22の異常時においてもモータ20の回転制御を継続できるように、電気角を推定する電気角推定部110を備えている。電気角推定部110は、センサ異常判定信号(F=1)を入力すると作動を開始するもので、プログラム制御により実施される機能に着目すると、図3に示すように、誘起電圧演算部111と、不感帯処理部112と、推定角速度演算部113と、電気角加算量演算部114と、回転方向推定部115と、γ軸誘起電圧演算部116と、脱調判定部117と、加算量ガード処理部118と、推定電気角演算部119と、電気角誤差検出部120と、電気角補正量演算部121とから構成される。
誘起電圧演算部111は、電圧センサ39から出力されるモータ端子電圧Vu,Vv,Vwを表す検出信号と、電流センサ38から出力されるモータ電流Iu,Iv,Iwを表す検出信号とを入力し、モータ20で発生する誘起電圧e’を以下のように計算する。
図6に示すように、モータ20のU相の誘起電圧をeu、V相の誘起電圧をev、W相の誘起電圧をewとすると、誘起電圧eu,ev,ewは次式(2),(3),(4)にて求められる。
eu=Vu−Iu・R−Vm ・・・(2)
ev=Vv−Iv・R−Vm ・・・(3)
ew=Vw−Iw・R−Vm ・・・(4)
ここで、Vmは中点電圧、Rは各相のコイルの巻線抵抗である。中点電圧Vmは、Vm=(Vu+Vv+Vw)/3として計算すればよい。
この場合、正確には、各相のコイルのインダクタンスLによる電圧分(L・dI/dt)を加えるべきであるが、誘起電圧の計算においてはインダクタンスLによる影響が非常に小さいため、本実施形態においてはそれをゼロとみなしている。尚、インダクタンスLによる電圧分(L・dI/dt)を加味して計算するようにしてもよい。
モータ20の誘起電圧e’は、次式(5)により、3相の誘起電圧eu,ev,ewを2相のd−q座標系における誘起電圧ed,eqに変換した後に、次式(6)により求められる。
誘起電圧演算部111は、誘起電圧e’の演算結果を不感帯処理部112に出力する。以下、誘起電圧演算部111により演算された誘起電圧e’を演算誘起電圧e’と呼ぶ。尚、式(5)における電気角θeは、現時点において推定されている電気角となる。つまり、後述するように所定の短い周期で繰り返し計算される推定電気角θebの最新値が使用される。
不感帯処理部112は、操舵トルクセンサ21により検出される操舵トルクTrと、誘起電圧演算部111により演算された演算誘起電圧e’を入力する。不感帯処理部112は、操舵トルクTrの大きさ|Tr|が予め設定された基準トルクTr0より大きい場合に、演算誘起電圧e’に対して不感帯処理を行い、操舵トルクTrの大きさ|Tr|が基準トルクTr0以下の場合には、演算誘起電圧e’に対して不感帯処理を行わないように構成されている。不感帯処理部112は、図7に示すような不感帯処理マップを記憶している。この不感帯処理マップにおいて、横軸は誘起電圧演算部111により演算された演算誘起電圧e’を表し、縦軸は不感帯処理後の誘起電圧e(ここでは、補正誘起電圧eと呼ぶ)を表す。不感帯処理部112は、演算誘起電圧e’が0〜e1の範囲に入る場合には、補正誘起電圧eを0(ゼロ)に設定する。また、演算誘起電圧e’がe1〜e2の範囲に入る場合には、演算誘起電圧e’にゲインKを乗じた値(K・e’)を補正誘起電圧eに設定する。このKは、演算誘起電圧e’がe1〜e2の範囲において大きくなるにしたがって、0から1にまで増大されるように設定される。また、演算誘起電圧e’がe2を越える場合には、演算誘起電圧e’をそのまま補正誘起電圧eとして設定する。不感帯処理部112は、こうした不感帯処理により演算誘起電圧e’を補正した補正誘起電圧eを出力する。以下、この補正誘起電圧eを、単に、誘起電圧eと呼ぶ。また、操舵トルクTrの大きさ|Tr|が基準トルクTr0以下の場合には、演算誘起電圧e’をそのままモータ20で発生した誘起電圧eとして出力する。
ここで、このような不感帯処理を行う理由について説明する。モータ20で発生する誘起電圧は、モータ角速度に比例するため、この誘起電圧を検出することにより単位時間当たりのモータ回転角度を推定することができ、このモータ回転角度分だけ電気角を加算していくことよって推定電気角を求めることができる。従って、本実施形態における電気角推定部110は、こうした原理を利用して電気角を推定する(後述する)。しかし、誘起電圧演算部111で演算した演算誘起電圧e’には、電流値、電圧値の測定誤差や巻線抵抗値の誤差等が含まれるため、モータ20(回転子)が回転していない状態であっても演算誘起電圧e’がゼロにならない。そのため、誘起電圧演算部111で演算した演算誘起電圧e’をそのまま使って電気角を推定すると、保舵中であっても電気角が進められてしまいモータ20のトルクが変動する。このトルク変動が操舵ハンドル11に振動として現れる。そこで、誤差による演算誘起電圧e’の出力を抑えるために、演算誘起電圧e’に不感帯を設ける。
演算誘起電圧e’に不感帯を設定すると、モータ20の回転が停止している状態においては、推定電気角が変化しないようになる。このため、保舵中においては操舵ハンドル11が振動しない。しかし、運転者が操舵ハンドル11を切り出すとき(中立位置から回し始めるとき)に推定電気角が進みにくく、操舵操作に引っ掛かり感を与えてしまう。
操舵ハンドル11の切り出しにより操舵トルクが検出されてモータコイルに通電されると、回転子に設けた永久磁石がモータコイルで発生する磁界により引き寄せられる。このとき、演算誘起電圧e’が不感帯を乗り越えられないと推定電気角が進まないため、モータコイルで発生する磁界が回転しない。従って、図8に示すように、回転子は、永久磁石がモータコイルの磁界に吸着された位置で落ち着いてしまう。つまり、電流ベクトルがd軸方向を向いた状態に保持されてしまう。このため、操舵アシストトルクを発生させることができず、操舵操作に引っ掛かり感を与えることになる。
そこで、不感帯処理部112は、操舵トルクTrの大きさが小さい場合には、不感帯を設けないようにして、推定電気角が固定されないようにする。従って、運転者は、操舵ハンドル11を中立位置から回し始める時(操舵トルクTrがまだ小さい)に、操舵操作に引っ掛かりを感じない。また、操舵ハンドル11を操作していないときには、操舵トルクTrがゼロとなりモータ20に通電されないため、トルク変動による操舵ハンドル11の振動は発生しない。一方、操舵トルクTrの大きさが大きい場合には、不感帯を設けていないとモータ20が回転していない状態であっても電気角が進められてしまい、保舵中にモータ20でトルク変動が発生し、これにより操舵ハンドル11が振動する。そこで、不感帯処理部112は、操舵トルクTrの大きさが大きい場合には、不感帯を設けて操舵ハンドル11が振動しないようにする。
不感帯処理部112から出力された誘起電圧eは、推定角速度演算部113に入力される。推定角速度演算部113は、モータ20で発生する誘起電圧eとモータ角速度とが比例関係を有することを利用して、モータ角速度ωを次式(7)により推定する。
ω=e/Ke ・・・(7)
Keは、モータ20の角速度と誘起電圧との関係を表すモータ誘起電圧定数〔V/(rad/s)〕である。以下、推定されたモータ角速度ωを推定角速度ωと呼ぶ。
推定角速度演算部113は、演算結果である推定角速度ωを電気角加算量演算部114に出力する。電気角推定部110は、マイクロコンピュータにより所定の短い演算周期にて各種の演算処理を行う。従って、推定角速度ωと演算周期とから、1演算周期の間にモータ20の回転子が回転した電気角を求めることができる。そこで、電気角加算量演算部114は、1演算周期の間にモータ20の回転子が回転した電気角を電気角加算量Δθaとして計算する。
この場合、電気角を加算する方向、つまり、モータ20の回転方向を判別する必要があるため、電気角加算量演算部114は、回転方向推定部115からモータ20の回転方向を表す情報を入力する。回転方向推定部115は、操舵トルクセンサ21により検出される操舵トルクTrの向きをモータ20の回転方向とみなして、操舵トルクTrの向き(符号)を表す情報として出力する。
電気角加算量Δθaは次式(8)により算出される。
Δθa=Kf・sign(Tr)・ω ・・・(8)
ここでKfは、モータ角速度(rad/s)から1演算周期のあいだにモータ20の回転子が回転する電気角(rad)を求めるための定数であり、演算周期(s)に相当する。また、sign(Tr)は、操舵トルクTrの符号(ステアリングシャフト12に働くトルクの方向)を表し、操舵トルクTrが正の値またはゼロであればsign(Tr)=1、操舵トルクTrが負の値であればsign(Tr)=−1となる。
電気角加算量演算部114は、演算結果である電気角加算量Δθaを加算量ガード処理部118に出力する。加算量ガード処理部118は、電気角加算量Δθaと、電気角補正量演算部121から出力される電気角補正量Δθcと、脱調判定部117から出力される脱調判定信号LSとを入力する。電気角補正量Δθcは、後述するが、モータ20の脱調に対するロバスト性を向上させるために、δ軸がq軸に対して所定角度遅れるように推定電気角を補正するため補正量である。
加算量ガード処理部118は、電気角加算量Δθaと電気角補正量Δθcとを加算した量(Δθa+Δθc)に対して上限値制限を加えるもので、後述する加算量ガード制御ルーチンを実行し、脱調判定部117から出力される脱調判定信号LSに応じて上限値を変化させて最終電気角加算量Δθを算出する。この最終電気角加算量Δθは、推定電気角演算部119に出力される。
推定電気角演算部119は、1周期前の演算タイミングで算出した推定電気角θeb(n-1)を記憶しており、この推定電気角θeb(n-1)に最終電気角加算量Δθを加算することにより現在の推定電気角θeb(n)を算出する。推定電気角θeb(n)は、次式(9)にて表される。
θeb(n)=θeb(n-1)+Δθ ・・・(9)
この場合、推定電気角θeb(n-1)の初期値は、センサ異常検出部131により回転角センサ22の異常が検出される直前の値としている。推定電気角演算部119は、回転角センサ22の異常が検出されていない時から、実電気角変換部130が出力する実電気角θeaを入力して記憶更新し、センサ異常検出部131の出力するセンサ異常判定信号Fが回転角センサ22の異常を表す「1」に切り替わったことを検出すると、異常検出直前の実電気角θeaを推定電気角θeb(n-1)に設定して、上述した推定電気角θeb(n)の演算を開始する。また、その後は、算出した推定電気角θeb(n)を次の演算周期における式(9)での推定電気角θeb(n-1)として使用するため、推定電気角θeb(n)を推定電気角θeb(n-1)として逐次記憶更新する。以下、推定電気角θeb(n)を推定電気角θebと呼ぶ。
推定電気角演算部119は、算出した推定電気角θebを電気角選択部132に出力する。電気角選択部132は、実電気角θeaと推定電気角θebとを入力し、センサ異常検出部131からセンサ異常判定信号Fを読み込んで、センサ異常判定信号Fが回転角センサ22が異常であることを表す「1」である場合には推定電気角θebを選択する。また、センサ異常判定信号Fが回転角センサ22が正常であることを表す「0」である場合には実電気角θeaを選択する。電気角選択部132は、選択した実電気角θeaまたは推定電気角θebを電気角θeとして出力する。
電気角θeは、3相/2相座標変換部103,2相/3相座標変換部105に出力され、上述した座標変換演算に用いられる。従って、アシストECU100は、回転角センサ22の異常が検出されているときは、推定電気角により定義されるd−q座標、つまり、γ―δ座標を使って電流ベクトル制御を行う。
次に、脱調判定部117の処理について説明する。まず、モータ20で脱調が発生する原因について説明する。上述したように、アシスト電流指令部101は、モータトルク効率を最大にするために、電流ベクトルがq軸方向に向くように電流指令値を設定する。この場合、図9に示すように、アシストトルクTmと運転者の操舵力Tsとを合わせた力が、軸力Fと釣り合うようにモータコイルの通電量が制御される。この軸力Fとは、ラックバー14を変位させるために必要な力を表す。
軸力が急激に増加してモータ20で発生するアシストトルクが不足して操舵ハンドル11が戻された場合には、回転子が操舵方向に対して逆方向に回される。回転角センサ22が正常に作動している場合であれば、電気角を高精度に検出できるため、回転子の回転に合わせて電流ベクトルの向きをq軸方向に追従させることができる。従って、図10のP1に示す位置、つまり、アシストトルクを最大限発生できる状態を維持できる。この図10は、d−q座標における電流ベクトルの方向(電気角)に対するアシストトルク(モータトルク)の特性を表す。しかし、回転角センサ22が故障して推定電気角θebを用いたセンサレス制御を行っている場合には、操舵トルクの働く方向と回転子の回転方向とが互いに反対となり、回転方向推定部115にて推定したモータ20の回転方向が誤ったものとなる。このため、推定電気角演算部119は、逆方向に推定電気角を進めてしまう。従って、図11に示すように、δ軸がq軸に対して進んでしまう。この結果、図10の矢印に示すように、電流ベクトルの方向がq軸よりも進んでいき、モータ20で発生できるアシストトルクが減少して、逆アシスト領域に入ってしまう。この逆アシスト領域におけるアシストトルク特性は、電流ベクトルの向きが0°〜180°の範囲のアシストトルク特性に対して波形が反転した特性となる。このようにして、モータ20は脱調する。また、回転子の回転に対して反対方向に推定電気角を進めた場合には、相対的に推定角速度ωも大きくなる。
また、モータ20の脱調は、操舵ハンドル11の戻し操作時においても発生しやすい。戻し操作を行うときには、操舵ハンドル11を握っている力を緩めるようにして操舵ハンドル11を中立位置側に戻すため、操舵トルクの方向とモータ20の回転方向とが互いに反対となる。従って、軸力の変動時と同様に、推定電気角θebがモータ20の回転方向に対して逆方向に進んでしまいモータ20が脱調する。
脱調判定部117は、γ軸誘起電圧演算部116により算出されるγ軸誘起電圧eγと、操舵トルクセンサ21により検出された操舵トルクTrとを入力する。モータ20が脱調したときには、推定電気角θebが実電気角と大きく異なるため、d−q座標とγ−δ座標との間で電気角のずれ(座標軸の向きのずれ)が大きくなり、γ軸方向に大きな誘起電圧が発生する。モータ20の誘起電圧eは、q軸方向に発生しd軸方向には発生しない。従って、d−q座標とγ−δ座標との間で電気角のずれが生じているときには、q軸方向に発生する誘起電圧eのγ軸方向成分であるγ軸誘起電圧eγが発生する。このγ軸誘起電圧eγの大きさは、d−q座標とγ−δ座標との間で電気角のずれが大きいほど、また、推定角速度ωの大きさが大きいほど大きくなる。
また、モータ20が脱調したときには、図10のアシストトルク特性に示すように、電流ベクトルがq軸から離れていってしまうため、アシストトルクが不足し、運転者が操舵ハンドル11に加える操舵トルクが増加する。そこで、脱調判定部117は、γ軸方向の誘起電圧であるγ軸誘起電圧eγの大きさ|eγ|が予め設定した設定電圧eγ0(脱調判定用設定電圧)より大きく、かつ、操舵トルクセンサ21により検出された操舵トルクTrの大きさ|Tr|が予め設定した設定トルクTr0(脱調判定用設定トルク)よりも大きいときにモータ20が脱調していると判定する。判定条件式は、次式(10)にて表される。
|eγ|>eγ0 and |Tr|>Tr0 ・・・(10)
脱調判定部117は、判定条件式(10)を満たしている場合には、脱調判定信号LSを「1」に設定し、判定条件式(10)を満たしてない場合には、脱調判定信号LSを「0」に設定する。脱調判定部117は、脱調判定信号LSを加算量ガード処理部118に出力する。
γ軸誘起電圧eγは、γ軸誘起電圧演算部116により算出される。γ軸誘起電圧演算部116は、電圧センサ39から出力されるモータ端子電圧Vu,Vv,Vwを表す検出信号と、電流センサ38から出力されるモータ電流Iu,Iv,Iwを表す検出信号と、推定角速度演算部13により算出された推定角速度ωを入力し、次式(11)によりγ軸誘起電圧eγを算出する。
eγ=Vγ−R・Iγ+ω・L・Iδ ・・・(11)
ここで、Vγは電機子電圧のγ軸方向成分、Rはコイルの巻線抵抗、Iγは電機子電流のγ軸方向成分、Lはコイルのインダクタンス、Iδは電機子電流のδ軸方向成分を表す。Vγ,Iγ,Iδは、3相座標からd−q座標に変換する式(1)の変換行列Cを用いて、モータ端子電圧Vu,Vv,Vw、モータ電流Iu,Iv,Iwから算出することができる。
次に、加算量ガード処理部118の行う処理について説明する。図12は、加算量ガード処理部118の行う加算量ガード制御ルーチンを表す。加算量ガード制御ルーチンは、制御プログラムとしてアシストECUのメモリに記憶されており、所定の短い演算周期にて繰り返し実行される。
加算量ガード処理部118は、加算量ガード制御ルーチンが起動すると、まず、ステップS11において、脱調判定部117の出力する脱調判定信号LSを読み込む。続いて、ステップS12において、脱調判定信号LSが「0」か否かを表す。LS=0、つまり、モータ20の脱調が発生していないと判定されている場合には、ステップS13において、電気角加算量ガードΔθgがガード最大値Δθgmax(予め設定された固定値)よりも小さいか否かを判断する。電気角加算量ガードΔθgは、最終的に出力する最終電気角加算量Δθの上限値を設定するものであり、本制御ルーチンの起動時における初期値は、ガード最大値Δθgmaxに設定されている。従って、ここでは、ステップS13の判断は「No」となり、その処理がステップS15に進められる。
加算量ガード処理部118は、ステップS15において、電気角加算量演算部114にて算出された電気角加算量Δθaと、電気角補正量演算部121にて算出された電気角補正量Δθcとを加算して電気角加算合計Δθを求める(Δθ=Δθa+Δθc)。続いて、ステップS16において、電気角加算合計Δθが電気角加算量ガードΔθg以下であるか否かを判断する。電気角加算合計Δθが電気角加算量ガードΔθg以下である場合には(S16:Yes)、ステップS18において、電気角合計値Δθを最終電気角加算量Δθとしてそのまま推定電気角演算部119に出力する。一方、電気角加算合計Δθが電気角加算量ガードΔθgを越えている場合には(S16:No)、ステップS17において、電気角加算量ガードΔθgを最終電気角加算量Δθとして設定して(Δθ←Δθg)、この最終電気角加算量Δθを推定電気角演算部119に出力する(S18)。
加算量ガード処理部118は、ステップS18において、最終電気角加算量Δθを出力すると、本制御ルーチンを一旦終了する。そして、所定の演算周期で本制御ルーチンを繰り返す。従って、モータ20の脱調が検出されていない間は、こうした処理が繰り返される。尚、電気角加算量Δθa,電気角補正量Δθcは正負の値をとるため、本制御ルーチンにおける大きさの比較は、その絶対値の比較である。
脱調判定部117によりモータ20の脱調が検出されると脱調判定信号LSが「1」となる。この場合、ステップS12の判断は「No」となり、その処理がステップS19に進められる。加算量ガード処理部118は、ステップS19において、電気角補正量演算部121にて算出された電気角補正量Δθcをゼロに設定する(Δθc=0)。続いて、ステップS20において、電気角加算量ガードΔθgが調整単位量Δθuよりも大きいか否かを判断し、電気角加算量ガードΔθgが調整単位量Δθuよりも大きい場合には、ステップS21において、電気角加算量ガードΔθgから調整単位量Δθuを減算し、その減算された値(Δθg−Δθu)を新たな電気角加算量ガードΔθgとして設定する。この調整単位量Δθuは、電気角加算量ガードΔθgを1回に減らす、あるいは、増やす単位量であり、予め設定されている。
モータ20の脱調が検出された直後においては、電気角加算量ガードΔθgはガード最大値Δθgmaxに設定されているため、ステップS20の判断は「Yes」となり、電気角加算量ガードΔθgが調整単位量Δθuだけ減算される。そして、上述したステップS15からの処理が行われる。この場合、電気角補正量Δθcがゼロに設定されるため、電気角合計値Δθは、電気角加算量Δθaと等しくなる。
こうした処理が繰り返されることにより、モータ20の脱調が検出された後においては、電気角加算量ガードΔθgが徐々に減少していく(S21)。そして、この減少する電気角加算量ガードΔθgにより電気角加算量Δθaが上限制限される(S16,S17)。従って、最終電気角加算量Δθは、徐々に低減される。これにより、推定電気角演算部119が算出する推定電気角θebの進められる速度が徐々に遅くなる。
モータ20の脱調時において推定電気角θebの進む方向は,回転子の回転方向とは逆になる。従って、推定電気角θebの進む速度が速いと、回転子に対する推定電気角θebの進む相対速度が一層速くなるため、モータコイルの磁力で回転子の永久磁石を引き付けることはできない。そこで、本制御ルーチンでは、最終電気角加算量Δθを徐々に低減して、回転子に対する推定電気角θebの進む相対速度を遅くしていく。これにより、電流ベクトルの位相が進む速度が遅くなり、その過程で、モータコイルの磁力で回転子を引き付けるようにすることができる。こうして、モータ20を同期させることができる。
モータ20が同期すると、脱調判定部117は、脱調判定信号LSを「1」から「0」に切り替える。これにより、ステップS12の判断は「Yes」となり、その処理がステップS13に進められる。この場合、電気角加算量ガードΔθgは、上述したステップS21の処理により減算されているため、ガード最大値Δθgmaxよりも小さい。従って、ステップS13の判断は「Yes」となり、その処理がステップS14に進められる。加算量ガード処理部118は、ステップS14において、電気角加算量ガードΔθgに調整単位量Δθuを加算し、その加算された値(Δθg+Δθu)を新たな電気角加算量ガードΔθgとして設定する。そして、上述したステップS15からの処理を実行する。この場合、電気角補正量Δθcはゼロに設定されていないため、ステップS15においては、電気角加算合計Δθには電気角補正量Δθcが含まれたものとなる。
こうした処理が繰り返されることにより、モータ20の再同期時には、電気角加算量ガードΔθgが徐々に増加していく(S14)。そして、この増加する電気角加算量ガードΔθgにより最終電気角加算量Δθの上限制限が加えられる。従って、上限制限が徐々に緩められ、最終電気角加算量Δθは、徐々に増加する。これにより、推定電気角演算部119が算出する推定電気角θebを適正値に復帰させることができる。この場合、最終電気角加算量Δθを徐々に増加させるため、最終電気角加算量Δθの急変により再度脱調してしまうといった不具合を生じない。
次に、電気角補正量Δθcを算出する構成について説明する。上述したように、軸力が急激に増加してモータ20で発生するアシストトルクが不足して操舵ハンドル11が戻された場合には、推定電気角が回転子に対して進んでしまいモータ20が脱調する。また、センサレス制御を行っている場合には、推定電気角の誤差分だけ、実際のd−q座標とそれらを推定したγ―δ座標とがずれてしまう。このため、γ−δ座標を基準として電流ベクトル制御を行うと、電流ベクトルの方向がq軸方向からずれる。この場合、電流ベクトルがq軸よりも遅れた方向に向けられていれば、軸力の増加により回転子が操舵方向に対して逆方向に回されて電気角が相対的に進んでも、モータ20で発生できるアシストトルクが増加するため回転子の逆回転が抑制されてモータ20の脱調を防止することができる。しかし、電流ベクトルがq軸方向、あるいはq軸よりも進んだ方向に向けられている場合には、回転子が逆回転して電気角が相対的に進むと、モータ20で発生できるアシストトルクが低下する。従って、回転子の逆回転を抑制できずモータ20が脱調する。
そこで、本実施形態においては、δ軸がq軸よりも電気角の遅れた方向を向くように推定電気角を補正する電気角補正量Δθcを算出し、この電気角補正量Δθcを加算量ガード処理部118に供給することでモータ20ができるだけ脱調しないようにする。電気角補正量Δθcは、電気角誤差検出部120と電気角補正量演算部121とによって算出される。
電気角補正量Δθcを算出するにあたっては、q軸とδ軸との電気角の相違状態を把握する必要がある。q軸とδ軸との相違状態は、γ軸方向に発生するγ軸誘起電圧(q軸方向に発生する誘起電圧eのγ軸方向成分)に基づいて検出することができる。γ軸誘起電圧eγは上述のγ軸誘起電圧演算部116により算出される。
誘起電圧eは必ずq軸上に発生する。従って、図13(a)に示すように、q軸とδ軸とが一致している場合には、γ軸誘起電圧eγはゼロとなる(eγ=0)。また、図13(b)に示すように、q軸に対してδ軸が遅れている場合には、γ軸誘起電圧eγの値は負の値となる(eγ<0)。また、図13(c)に示すように、q軸に対してδ軸が進んでいる場合には、γ軸誘起電圧eγの値は正の値となる(eγ>0)。
また、q軸とδ軸との電気角誤差も検出することができる。q軸とδ軸との電気角誤差をΔθeとすると、q軸方向に発生する誘起電圧(実際の誘起電圧)eと、γ軸誘起電圧eγとの関係は、次式(12)にて表すことができる。
eγ=e・sinΔθe ・・・(12)
従って、
sinΔθe=eγ/e=(Vγ−R・Iγ+ω・L・Iδ)/e ・・・(13)
という関係式(13)により、電気角誤差Δθeを求めることができる。
q軸とδ軸との電気角誤差Δθeを検出することができれば、その電気角誤差Δθe分だけ推定電気角を補正すれば、δ軸をq軸位置にほぼ一致させることができる。しかし、上述したように、δ軸をq軸と一致させるように補正してしまうと、モータトルク効率は最大となるものの、軸力の変動によりモータ20で脱調が発生しやすくなる。そこで、本実施形態においては、δ軸の電気角がq軸の電気角よりも遅れるように、つまり、δ軸がq軸よりも電気角の遅れた方向を向くように推定電気角を補正する補正電気角θcを算出する。この場合、モータ20脱調に対するロバスト性とモータトルク効率とをバランス良く確保するために、図14に示すように、δ軸がd−q座標における設定角度領域Aに入るように推定電気角を補正する。設定角度領域Aにおいて、q軸からの電気角の遅れが最小となる境界角度を最小遅れ電気角θminと呼び、q軸からの電気角の遅れが最大となる境界角度を最大遅れ電気角θmaxと呼ぶ。
最小遅れ電気角θminは、負荷増加に対する余裕度から設定される角度θ1と、各種誤差分を考慮した角度θ2と、推定電気角補正フィードバックによって補正可能な角度θ3とに基づいて、次のように設定される。
θmin=θ1+θ2−θ3
尚、角度θ1、θ2、θ3は、q軸から図14の反時計方向(電気角の遅れ方向)に回る方向を正の角度[deg]とする。
電流指令値Iq*が大きくなるほどモータ20の脱調による振動の影響が大きくなる。そこで、角度θ1は、振動の影響が大きくなる電流指令値Iq*が所定値I0となるときの、負荷増加に対してモータ20で脱調が発生しないような余裕角度を設定したものである。図15に示すように、電流指令値Iq*がI0となるときのモータトルクをT0、モータトルクT0と釣り合う軸力をF、予め見込んだ負荷増加量をΔF、角度θ1の方向に向いた力でモータトルクT0を発生させるモータトルクをT1とすると、
F=T0
F+ΔF=T1
T1・cosθ1=T0
という関係から、角度θ1は、次式にて表すことができる。
θ1=cos−1{(T0/(T0+ΔF)}
また、角度θ2は、各種の演算誤差、電流測定誤差を考慮して設定される。また、角度θ3は、図16に示すように、電流ベクトルの方向がq軸よりも進んでしまっても、後述する推定電気角の補正フィードバックによって電流ベクトルの方向をq軸側に戻して脱調しないようにできる補正可能な限界角度を設定したもので、予め実験により求めて設定される。
一方、最大遅れ電気角θmaxは、熱性能とアシスト性能とを考慮して設定される。電流ベクトルの向きをd軸側に接近させるほどモータコイルやモータ駆動回路30が発熱する。従って、センサレス制御を行うときの熱性能を満たす限界となる電流ベクトルのq軸からの遅れ角度を角度θ4として設定する。また、電流ベクトルの向きをd軸側に接近させるほど、アシストトルクが減少する。従って、センサレス制御を行うときのアシスト性能を満たす限界となる電流ベクトルのq軸からの遅れ角度を角度θ5として設定する。センサレス制御を行うときのアシスト性能とは、必要最小限のアシスト性能であって、例えば、車両の走行中に運転者が最大舵角まで操舵操作できるようなアシストトルクを出力できる能力に設定される。最大遅れ電気角θmaxは、熱性能とアシスト性能との両方が満たされるように、角度θ4と角度θ5とのうち、q軸からの遅れ角度が小さい方の角度に設定される。
このように、最小遅れ電気角θminと最大遅れ電気角θmaxとの間に設定された設定角度領域Aにδ軸が入るように推定電気角を補正することにより、センサレス制御中において電流ベクトルの方向が設定角度領域Aに向けられることになる。本実施形態においては、設定角度領域Aの範囲(最小遅れ電気角θminから最大遅れ電気角θmaxまでの角度θx)に比べて、q軸から最小遅れ電気角θminまでの範囲が小さく設定されている。
図3の電気角推定部110の説明に戻る。電気角推定部110は、電気角誤差検出部120と電気角補正量演算部121とを備えている。電気角誤差検出部120は、γ軸誘起電圧演算部116から出力されるγ軸誘起電圧eγと、不感帯処理部112から出力される誘起電圧eとを入力し、上述したeγ/eの値(q軸方向に発生する誘起電圧eに対するγ軸誘起電圧eγの比)を計算する。上述したように、sinΔθe=eγ/eという関係が成立する。従って、eγ/eは、q軸とδ軸との電気角誤差Δθeに応じた値となる。そこで、電気角誤差検出部120は、電気角誤差Δθeを計算することなく、eγ/eの値を検出値として電気角補正量演算部121に出力する。図17は、検出値e/eγと電気角誤差Δθeとの関係を表す。
電気角補正量演算部121は、電気角誤差検出部120から出力された検出値eγ/eを入力し、電気角補正量算出マップを参照して1演算周期における電気角補正量Δθcを計算する。電気角補正量算出マップは、図18に示すように、検出値eγ/eと電気角補正量Δθcとの対応関係を設定したものである。
電気角補正量Δθcは、モータ20の脱調に対するロバスト性とモータトルク効率とを両立させるために、δ軸がd−q座標における設定角度領域Aに入るように推定電気角を補正する値である。従って、電気角補正量算出マップは、設定角度領域Aの境界である最小遅れ電気角θminと最大遅れ電気角θmaxとに対応する検出値eγ/eの範囲において不感帯Zが設定されている。ここで、最小遅れ電気角θminに対応する検出値eγ/eの値をx1とし、最大遅れ電気角θmaxに対応する検出値eγ/eの値をx2とする。この場合、検出値eγ/eの不感帯Zは、x1〜x2の間に設定される。このx1、x2は、電気角誤差Δθeと検出値eγ/eとの関係(式(13)、図17参照)から求められて設定される。
検出値eγ/eが正の値となる場合、δ軸はq軸よりも電気角の進んだ方向を向いている。従って、この場合には、電気角補正量Δθcは、負の値に設定される。また、検出値eγ/eが負の値となる場合、δ軸はq軸よりも電気角の遅れた方向に向いている。この場合、電気角補正量Δθcは、検出値eγ/eがx1を越える値であれば、モータ20の脱調に対するロバスト性を向上させるために負の値に設定される。また、検出値eγ/eがx1以下でx2以上の場合は、δ軸が設定角度領域Aに入っているため、電気角補正量Δθcは、0(ゼロ)に設定される。また、検出値eγ/eがx2未満の場合には、電気角補正量Δθcは、正の値に設定される。
また、電気角補正量算出マップにおいては、検出値eγ/eがx1より大きなx0以上となる場合、および、検出値eγ/eがx2より小さなx3以下となる場合に、電気角補正量Δθcが一定の上限値に制限される。本実施形態においては、図18に示すように、δ軸の電気角が設定角度領域Aよりも遅れている場合の電気角補正量Δθcの上限値をΔθcmaxlagとし、δ軸の電気角が設定角度領域Aよりも進んでいる場合の電気角補正量Δθcの上限値をΔθcmaxleadとすると、上限値Δθcmaxleadのほうが上限値Δθcmaxlagよりも大きな値に設定されている(絶対値の比較)。
また、電気角補正量Δθcは、検出値eγ/eがx0〜x1の範囲に入る場合、および、検出値eγ/eがx2〜x3の範囲に入る場合に、検出値eγ/eが不感帯Zから外れている量に比例した大きさの電気角補正量Δθcが設定される。この場合、電気角の補正感度は、δ軸の電気角が設定角度領域Aよりも進んでいるか遅れているかによって異なるように設定されている。電気角の補正感度とは、検出値eγ/eが不感帯Zから外れている量に対する電気角補正量Δθcの比を表す。本実施形態においては、δ軸の電気角が設定角度領域Aよりも進んでいる場合における補正感度(図18の特性ラインG1の傾き)が、δ軸の電気角が設定角度領域Aよりも遅れている場合における補正感度(図18の特性ラインG2の傾き)よりも大きく設定されている。
電気角補正量演算部121は、電気角補正量算出マップを参照して電気角補正量Δθcを計算すると、この電気角補正量Δθcに回転方向推定部115から入力した操舵トルクの向き(符号)を乗算し、この値を新たな電気角補正量Δθcに設定する(Δθc←Δθc・sign(Tr))。電気角補正量演算部121は、こうして算出した電気角補正量Δθcを加算量ガード処理部118に出力する。加算量ガード処理部118は、上述したように、電気角加算量演算部114から出力された電気角加算量θaと、この電気角補正量Δθcとの加算値(Δθa+Δθc)に対して上限値制限を加えて最終電気角加算量Δθを算出し推定電気角演算部119に出力する。そして、推定電気角演算部119は、1周期前の推定電気角θeb(n-1)に最終電気角加算量Δθを加算することにより現在の推定電気角θeb(n)を算出し電気角選択部132に出力する。
アシストECU100は、短い演算周期にて上述した処理を繰り返す。従って、回転角センサ22の異常が検出されていないとき(センサ異常判定信号F=0)には、実電気角θeaに基づいて設定されたd−q座標を用いて電流ベクトル制御が行われる。また、回転角センサ22の異常が検出されているとき(センサ異常判定信号F=1)には、電気角推定部110が推定電気角θebを算出し、この推定電気角θebによりd−q座標を推定したγ−δ座標を用いて電流ベクトル制御が行われる。センサレス制御時においては、電気角補正量算出マップにしたがって電気角補正量Δθcが演算されて推定電気角が補正されるため、図14の矢印に示すように、δ軸が設定角度領域Aに入るようにフィードバック制御される。これにより、電流ベクトルの向きが、実際のq軸よりも遅れた方向に向けられる。従って、図19のP2位置に示すように、モータトルク効率は最大にはならないものの、軸力の急増により回転子が逆回転して電流ベクトルの方向が進んでもアシストトルクが増加するため、モータ20の脱調を抑制することができる。
また、モータ20が脱調した場合には、脱調判定部117がモータ20の脱調を検出し、脱調判定信号LSを「0」から「1」に切り替える。これにより、加算量ガード処理部118が電気角補正量Δθcをゼロに設定するとともに、電気角加算量Δθaを徐々に減らす。従って、推定電気角θebの進む速度が遅くなり、モータ20を早期に同期させることができる。
以上説明した本実施形態の電動パワーステアリング装置によれば、以下の作用効果を奏する。
1.回転角センサ22の異常が検出されているときには、δ軸の電気角がq軸の電気角よりも遅れるように推定電気角が補正される。従って、軸力が急増してモータ20の回転子が操舵方向に対して逆方向に回転しても、モータ20で発生するアシストトルクが増加するため、回転子の逆回転を抑制することができる。この結果、モータ20の脱調に対するロバスト性が向上する。
2.モータ20が脱調した場合であっても、γ軸誘起電圧eγと、操舵トルクTrの大きさ|Tr|とに基づいて、モータ20の脱調を良好に検出することができる。
3.モータ20の脱調を検出したときには、最終電気角加算量Δθを徐々に減少させるため、モータ20を早期に同期させることができ、脱調状態が長く継続してしまうことを防止することができる。また、モータ20が再同期したときには、最終電気角加算量Δθを本来の最適値に徐々に復帰させるため、モータ20を良好に駆動制御することができる。また、最終電気角加算量Δθの急変により再度脱調してしまうといった不具合を生じない。
4.推定電気角の算出にあたって必要となるモータ回転方向の情報を、操舵トルクセンサ21により検出された操舵トルクTrの方向から取得するため、モータ回転方向を検出するための特別なセンサを要しなく低コストにて実施することができる。操舵トルクTrから回転方向の情報を取得する場合には、モータ20の回転子が操舵方向に対して逆方向に回転したときに、回転子の回転方向と推定電気角を進める方向とが反対となって相対的な推定角速度ωが増大するためモータ20が脱調しやすい。しかし、本実施形態においては、δ軸の電気角がq軸の電気角よりも遅れるように推定電気角を補正するため、回転子の逆回転を抑制することができる。この結果、モータ20の脱調に対するロバスト性と低コスト化とを両立させることができる。
5.電気角補正量Δθcは、δ軸の電気角がq軸よりも電気角の遅れた設定角度領域Aに入るように設定される。この設定角度領域Aは、負荷増加に対する余裕度、各種誤差分、推定電気角補正フィードバックによって補正可能な角度分、熱性能、アシスト性能を考慮して設定されているため、モータ20の脱調に対するロバスト性とモータトルク効率とをバランス良く確保することができる。また、必要最小限のアシスト性能を確保することができる。
6.電気角補正量Δθcの算出にあたっては、δ軸とq軸との電気角の相違状態を検出する必要があるが、本実施形態においては、検出値eγ/eを算出しているため、δ軸とq軸との角度差(電気角誤差)まで検出することができる。この結果、δ軸を設定角度領域Aに適正に維持することができる。また、電気角補正量算出マップを参照して、検出値eγ/eから電気角補正量Δθcを算出するため、検出値eγ/eの不感帯Zを設けることで、簡単に設定角度領域Aを設定することができる。
7.電気角補正量Δθcの算出にあたっては、推定電気角を1回で補正できる上限値が設定されている。この場合、δ軸の電気角が設定角度領域Aよりも遅れている場合の上限値Δθcmaxlagよりも、δ軸の電気角が設定角度領域Aよりも進んでいる場合の上限値Δθcmaxleadのほうが大きな値に設定されている。このため、δ軸の電気角がモータ20の脱調が発生しやすい領域に入っている場合には、電気角補正量Δθcを大きく設定できるためモータ20の脱調を速やかに回避することができる。一方、δ軸の電気角がモータトルク効率の低い領域に入っている場合には、安定した制御速度で推定電気角を補正して、モータトルク効率を高めることができる。
8.電気角補正量Δθcの算出にあたっては、δ軸の電気角が設定角度領域Aよりも遅れている場合の補正感度よりも、δ軸の電気角が設定角度領域Aよりも進んでいる場合の補正感度のほうが大きく設定されている。このため、δ軸の電気角がモータ20の脱調が発生しやすい領域に入っている場合には、電気角補正量Δθcを大きく設定できるためモータの脱調を速やかに回避することができる。一方、δ軸の電気角がモータトルク効率の低い領域に入っている場合には、安定した制御速度で推定電気角を補正して、モータトルク効率を高めることができる。
9.設定角度領域Aの範囲(最小遅れ電気角θminから最大遅れ電気角θmaxまでの角度θx)に比べて、q軸から最小遅れ電気角θminまでの範囲が小さく設定されている。従って、モータ20の脱調を抑制しつつ、できるだけモータトルク効率を高い状態に維持することができる。
10.推定誘起電圧eの算出にあたって、操舵トルクTrの大きさが小さい場合には、誘起電圧eに不感帯が設定されない。これにより、推定電気角が固定されないため、操舵ハンドル11を中立位置から回し始める時に、運転者に操舵操作の引っ掛かりを感じさせない。一方、操舵トルクTrの大きさが大きい場合には、誘起電圧eに不感帯が設定される。これにより、操舵ハンドル11が振動しないため、操舵フィーリングの低下を抑制することができる。
以上、本実施形態の電動パワーステアリング装置について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変更が可能である。
例えば、本実施形態では、加算量ガード制御ルーチンの実行時において、モータ20の脱調時に電気角加算量ガードΔθgを低減する速度と、脱調復帰時に電気角加算量ガードΔθgを増加する速度とを同じ値に設定しているが、それぞれ独立して設定することもできる。つまり、電気角加算量ガードΔθgの低減時と増加時とで、調整単位量Δθuを異なる値に設定してもよい。また、本実施形態では、調整単位量Δθuの加算、減算により電気角加算量ガードΔθgの増減を行うものであるが、電気角加算量ガードΔθgを設定値(>1)で除算して電気角加算量ガードΔθgを低減するようにしても良いし、電気角加算量ガードΔθgを設定値(>1)で乗算して電気角加算量ガードΔθgを増加するようにしても良い。
また、本実施形態においては、電気角補正量Δθcを用いて、δ軸の電気角がq軸の電気角よりも遅れるように推定電気角を補正するようにしているが、必ずしも、そのようにする必要はなく、電気角誤差検出部120,電気角補正量演算部121を省略した構成であってもよい。
また、本実施形態においては、操舵トルクTrの大きさに応じて誘起電圧eの不感帯を切り替えるようにしているが、必ずしも、そのようにする必要はなく、一定の不感帯を設けたものであっても良い。
また、本実施形態では、操舵トルクセンサ21により検出される操舵トルクTrの方向をモータ20の回転方向とみなして推定電気角を演算するが、操舵角センサ等、モータ20の回転方向を検出できるセンサを備えている場合には、そのセンサの検出値を使ってモータ20の回転方向を判定するようにしてもよい。
また、本実施形態においては、推定電気角の初期値θeb(n-1)として、回転角センサ22の異常が検出される直前の実電気角θeaの値を用いているが、それに代えて固定値など任意の値を用いても良い。これは、初期の推定電気角が実電気角と相違していても、モータ20が回転しているうちに、電流ベクトルの方向に永久磁石が引き寄せられて同期するからである。
また、本実施形態においては、設定角度領域Aを設けて、δ軸の電気角がこの設定角度領域Aに入るように推定電気角を補正しているが、設定角度領域Aを設けずにδ軸の電気角がq軸の電気角よりも設定角度遅れるように推定電気角を補正するようにしてもよい。
また、本実施形態においては、モータ20の発生するトルクをラックバー14に付与するラックアシスト式の電動パワーステアリング装置について説明したが、モータの発生するトルクをステアリングシャフト12に付与するコラムアシスト式の電動パワーステアリング装置であってもよい。