車両の走行中において、例えば、前輪タイヤが縁石に衝突したケースなど、タイヤからステアリング機構に大きな力が加わった場合には、操舵輪が転舵しラックバーに大きな軸力が働く。これにより、ラックバーが軸方向に移動するとともに、ラックバーに連結されたステアリングシャフトが回転する。このようにタイヤからステアリング機構に逆入力が働いて運転者の意志に反して操舵されてしまう状態を、本明細書においては逆入力操舵異常状態と呼ぶ。逆入力が大きい場合には、ラックバーの先端に設けたラックエンド部材が、ラックハウジングに形成されたストッパに衝突し、ステアリング機構に大きな衝撃力が働く。
こうした逆入力操舵異常状態においては、電動モータも一緒に回転するが、逆入力が大きい場合には、電動モータの回転速度が非常に大きくなるため、回転速度の増加に伴って弱め界磁制御電流が増加し、電動モータの回転速度の増加を助長してしまう。また、アシストECUは、モータ回転角センサの出力する信号に基づいてモータ回転角を検出し、この回転角に基づいて電動モータの通電を制御するが、モータ回転速度が大きくなりすぎると、モータ回転角センサの出力する信号のサンプリングが間に合わなくなる。
例えば、モータ回転角センサとしてレゾルバを使った場合、センサ出力信号はモータ電気角に応じた鋸歯形状の信号となるが、モータ回転速度が大きくなりすぎると、アシストECU側のサンプリング間隔が鋸歯形状信号の1周波分を越えてしまう。このため、センサ信号からモータ回転角を適正に検出できなくなり、制御上における回転角と実際の回転角とにずれが生じ、d−q座標系に位相遅れが発生する。この位相遅れにより、図14に示すように、弱め界磁制御電流となるd軸電流成分が大きくなってしまい、電動モータの回転速度が更に大きくなる。このように、大きな逆入力が働いた場合には、電動モータを適正に制御することができなくなる。
このため、ラックエンド部材とストッパとの衝突エネルギーが増大し、ステアリング機構、特に、ステアリングシャフトに大きな衝撃力が働くことになる。従って、ステアリングシャフトの強度を上げる必要が生じる。
本発明の目的は、上記問題に対処するためになされたもので、大きな逆入力が働いた場合には、電動モータの回転速度の増加を抑制して、ステアリングシャフトに加わる衝撃を低減することにある。
上記目的を達成するために、本発明の特徴は、ステアリング機構に設けられて操舵アシストトルクを発生する電動モータと、操舵ハンドルに連結されたステアリングシャフトに働く操舵トルクを検出する操舵トルク検出手段と、前記電動モータの回転速度を検出する回転速度検出手段と、前記電動モータの回転方向をq軸とするとともに前記回転方向と直交する方向をd軸とする2相回転磁束座標系を用いて、前記操舵トルク検出手段により検出した操舵トルクに基づいてトルク発生用のq軸電流指令値を算出し、前記回転速度検出手段により検出した回転速度に基づいて弱め界磁制御電流としてのd軸電流指令値を算出するモータ電流指令値算出手段と、前記算出された電流指令値にしたがって前記電動モータを駆動するモータ駆動制御手段とを備えた電動パワーステアリング装置において、
タイヤからの逆入力により異常操舵されてしまう逆入力操舵異常状態、および、前記電動モータの回転速度が異常高速回転となる高回転異常状態の少なくとも一方の異常状態を検出する異常状態検出手段を備え、前記モータ電流指令値算出手段は、前記異常状態検出手段により異常状態が検出されていない状況においては、前記回転速度検出手段により検出される回転速度の増加に伴って弱め界磁制御電流が増加するようにd軸電流指令値を算出する正常時モードを選択し、前記異常状態検出手段により異常状態が検出されている状況においては、前記正常時モードに比べて弱め界磁制御電流が少なくなるようにd軸電流指令値を算出する異常時モードを選択する制御モード切替手段を備えたことにある。
本発明においては、モータ電流指令値算出手段が、電動モータの回転方向をq軸とするとともに回転方向と直交する方向(界磁方向)をd軸とする2相回転磁束座標系(d−q軸座標系)を用いて、操舵トルク検出手段により検出した操舵トルクに基づいてトルク発生用のq軸電流指令値を算出し、回転速度検出手段により検出した電動モータの回転速度に基づいて弱め界磁制御電流としてのd軸電流指令値を算出する。つまり、操舵トルクの増加に伴って大きくなるq軸電流指令値を算出し、電動モータの回転速度の増加に伴って弱め界磁を大きくするd軸電流指令値を算出する。そして、モータ駆動制御手段が、この算出された両電流指令値にしたがって電動モータを駆動する。
車両の走行中において、例えば、前輪タイヤが縁石に衝突したケースなどで逆入力が加わった場合、運転者の意志に反して操舵されてしまう。この場合、電動モータもそれに合わせて回転するが、逆入力が大きいとその回転速度が非常に大きくなり、弱め界磁制御電流としてのd軸電流指令値が増大して電動モータの回転速度増加を助長してしまう。そこで、本発明においては、異常状態検出手段が、タイヤからの逆入力により異常操舵されてしまう逆入力操舵異常状態、および、電動モータの回転速度が異常高速回転となる高回転異常状態の少なくとも一方の異常状態を検出し、この異常状態が検出されているときに、モータ電流指令値算出手段が、電動モータの回転速度増加を抑制するように電流指令値を演算する。
強い逆入力が働いた場合には、直接的にモータ回転速度を検出しなくても、電動モータの回転速度が異常高速回転となることを推定あるいは予測することができる。そこで、異常状態検出手段は、タイヤからの逆入力により異常操舵されてしまう逆入力操舵異常状態、および、電動モータの回転速度が異常高速回転となる高回転異常状態の少なくとも一方の異常状態を検出する。
モータ電流指令値算出手段は、こうした電動モータの異常高速回転を抑制するために、電動モータの制御モードを切り替える制御モード切替手段を備えている。制御モード切替手段は、異常状態が検出されていない状況においては正常時モードを選択し、異常状態が検出されている状況においては異常時モードを選択する。正常時モードにおいては、回転速度検出手段により検出される回転速度の増加に伴って弱め界磁制御電流が増加するようにd軸電流指令値が算出される。従って、d軸電流が界磁を弱める方向に作用して電動モータの回転により発生する逆起電力を抑えるため、電動モータを高速で回転させることができる。
一方、異常時モードにおいては、正常時モードに比べて弱め界磁制御電流が少なくなるようにd軸電流指令値を算出する。従って、正常時モードに比べて逆起電力が多く発生し、電動モータの回転に制動力を与える。この結果、電動モータの回転速度の異常上昇を抑制することができる。これにより、タイヤから逆入力が働いた場合でも、電動モータを適正に制御できるようになり、ステアリング機構に働く衝撃力を低減しステアリング機構を保護することができる。
本発明の他の特徴は、前記モータ電流指令値算出手段は、前記異常時モードにおいて、前記弱め界磁制御電流を流さないd軸電流指令値を算出することにある。
本発明によれば、異常時モードにおいて弱め界磁制御電流を流さないため、電動モータの回転に確実に制動力を加えることができる。
本発明の他の特徴は、前記モータ電流指令値算出手段は、前記異常時モードにおいて、前記弱め界磁制御電流に代えて強め界磁制御電流を流すd軸指令電流値を算出することにある。
本発明によれば、異常時モードにおいて、弱め界磁制御電流に代えて強め界磁制御電流を流すため、更に制動力を増すことができる。
本発明の他の特徴は、前記モータ電流指令値算出手段は、前記異常時モードにおいて、前記回転速度検出手段により検出される回転速度の増加に伴って強め界磁制御電流が増加するようにd軸指令電流値を算出することにある。
本発明によれば、異常時モードにおいて、回転速度検出手段により検出される回転速度の増加に伴って強め界磁制御電流が増加するため、異常回転速度に応じた適切な大きさで制動力を加えることができる。
本発明の他の特徴は、前記異常状態検出手段は、タイヤからの逆入力により異常操舵されてしまう逆入力操舵異常状態であるか否かを判定する逆入力操舵異常判定手段と、前記回転速度検出手段により検出される回転速度が予め設定した異常判定用速度を超える高回転異常状態であるか否かを判定する高回転異常判定手段とを備え、前記制御モード切替手段は、前記逆入力操舵異常判定手段あるいは前記高回転異常判定手段の何れか一方でも異常状態を検出したときには前記異常時モードを選択することにある。
本発明によれば、タイヤからの逆入力により異常操舵されてしまう逆入力操舵異常状態、あるいは、電動モータの回転速度が異常判定用速度を超える高回転異常状態の何れか一方でも検出されたときには、異常時モードが選択される。従って、電動モータの回転異常を確実に検出することができる。
以下、本発明の一実施形態に係る電動パワーステアリング装置について図面を用いて説明する。図1は、同実施形態に係る車両の電動パワーステアリング装置の概略構成を表している。
この電動パワーステアリング装置は、操舵ハンドル11の操舵操作により操舵輪である左前輪Wflと右前輪Wfrとを転舵するステアリング機構10と、ステアリング機構10に組み付けられ操舵アシストトルクを発生する電動モータ20と、電動モータ20を駆動するためのモータ駆動回路30と、電動モータ20の作動を制御する電子制御装置100とを主要部として備えている。以下、電子制御装置100をアシストECU100と呼ぶ。
ステアリング機構10は、操舵ハンドル11の回動操作に連動したステアリングシャフト12の軸線周りの回転をラックアンドピニオン機構13によりラックバー14の左右方向のストローク運動に変換して、このラックバー14のストローク運動により左前輪Wflと右前輪Wfrとを転舵するようになっている。ステアリングシャフト12は、操舵ハンドル11を上端に連結したメインシャフト12aと、ラックアンドピニオン機構13と連結されるピニオンシャフト12cと、メインシャフト12aとピニオンシャフト12cとをユニバーサルジョイント12d,12eを介して連結するインターミディエイトシャフト12bとから構成される。
ラックバー14は、ギヤ部14aがラックハウジング15内に収納され、その左右両端がラックハウジング15から露出してタイロッド16と連結される。左右のタイロッド16の他端は、左右前輪Wfl,Wfrに設けられたナックル17に接続される。ラックバー14のタイロッド16との連結部には、ラックエンド部材18が設けられている。一方、ラックハウジング15の両端には、ストッパ部15aが形成されている。ラックバー14は、ラックエンド部材18とストッパ部15aとの当接により、その左右のストローク移動範囲が機械的に制限される。以下、ラックバー14がストッパ部15aにより移動制限される位置をストロークエンドと呼ぶ。また、左前輪Wflと右前輪Wfrとを単に操舵輪Wと呼ぶ。
ステアリングシャフト12(メインシャフト12a)には減速ギヤ19を介して電動モータ20が組み付けられている。電動モータ20は、例えば、3相同期式永久磁石モータ(ブラシレスモータ)が使用される。電動モータ20は、ハウジング内に固定されたステータを備え、ステータに巻かれたコイルに3相電流を流すことにより3相回転磁界を形成し、この3相回転磁界内を永久磁石を固着したロータが3相電流に応じて回転するものである。電動モータ20は、ロータの回転により減速ギヤ19を介してステアリングシャフト12をその中心軸周りに回転駆動して、操舵ハンドル11の回動操作に対してアシストトルクを付与する。
電動モータ20には、回転角センサ21が設けられる。この回転角センサ21は、例えば、レゾルバにより構成され、電動モータ20のロータの回転角度の変化に伴って鋸歯形状に変化する信号を出力する。本実施形態においては、回転角センサ21は、電動モータ20の電気角の1周期(2π)に対して1周波となる鋸歯形状の信号を出力する。この回転角センサ21から出力される検出信号は、電動モータ20の回転角θ(電気角に対応する)および回転速度(角速度)ωの計算に利用される。
また、電動モータ20とステアリングシャフト12とが減速ギヤ19を介して連結されていることから、電動モータ20の回転角θは、操舵ハンドル11の操舵角に対応したものとなる。そこで本実施形態においては、回転角θは、操舵角の計算に共通して用いられる。操舵角の検出は、操舵ハンドル11が中立位置(操舵輪Wが直進方向を向く位置)となる電動モータ20の回転位置を原点位置として予め記憶しておき、この原点位置からの回転角を検出することにより行われる。以下、電動モータ20の回転角θから検出される操舵角を操舵角θhと呼ぶ。操舵角θhは、中立位置に対して右方向の操舵角を正の値で、中立位置に対して左方向の操舵角を負の値で表すことにする。また、電動モータ20の回転速度ωは、電動モータ20の回転角θの単位時間当たりの変化量から算出される。この回転速度ωは、運転者が操舵ハンドル11を回動操作する操舵速度に比例したものとなる。回転速度ωは、操舵ハンドル11が右方向に回転するときの回転速度を正の値で、操舵ハンドル11が左方向に回転するときの回転速度を負の値で表すことにする。また、操舵角θhや回転速度ωの大きさを論じる場合には、その絶対値を用いる。
ステアリングシャフト12(メインシャフト12a)には、操舵ハンドル11と減速ギヤ19との間に操舵トルクセンサ22が設けられている。操舵トルクセンサ22は、ステアリングシャフト12(メインシャフト12a)に介装されているトーションバー(図示略)に働いた捩り力を、操舵ハンドル11に付与された操舵トルクTとして検出する。例えば、トーションバーの両端にレゾルバを設け、この2つのレゾルバにより検出される回転角度の差に基づいて操舵トルクTを検出する。
尚、操舵トルクTは、ステアリングシャフト12に右回転方向に働くトルク(トーションバーの上部が下部に対して相対的に右回転位置となる捩り状態でのトルク)を正の値で、左回転方向に働くトルク(トーションバーの上部が下部に対して相対的に左回転位置となる捩り状態でのトルク)を負の値で表すことにする。また、操舵トルクTの大きさについて論じる場合には、その絶対値を用いる。
モータ駆動回路30は、MOS−FET(Metal Oxide Semiconductor Field Effect Transistor)からなる6個のスイッチング素子31〜36により3相インバータ回路を構成したものである。具体的には、第1スイッチング素子31、第3スイッチング素子33,第5スイッチング素子35を並列に設けた上アーム回路と、第2スイッチング素子32、第4スイッチング素子34,第6スイッチング素子36を並列に設けた下アーム回路とを直列接続し、上下のアーム回路の間から電動モータ20への電力供給ライン37を引き出した構成を採用している。
モータ駆動回路30には、電動モータ20に流れる電流を検出する電流センサ38が設けられる。この電流センサ38は、各相(U相,V相,W相)ごとに流れる電流をそれぞれ検出し、その検出した電流値に対応した検出信号をアシストECU100に出力する。以下、この測定された3相の電流値をモータ電流Iuvwと総称する。
モータ駆動回路30の各スイッチング素子31〜36は、それぞれゲートがアシストECU100に接続され、アシストECU100から出力されるPWM制御信号によりデューティ比が制御される。これにより電動モータ20の駆動電圧が目標電圧に調整される。尚、図中に回路記号で示すように、スイッチング素子31〜36を構成するMOSFETには、構造上ダイオードが寄生している。
アシストECU100は、CPU,ROM,RAM等からなるマイクロコンピュータを主要部として構成される。アシストECU100は、回転角センサ21、操舵トルクセンサ22、電流センサ38、および、車速vを検出する車速センサ25を接続し、それらの出力する検出信号を入力する。そして、入力した検出信号に基づいて、運転者の操舵操作に応じた最適な操舵アシストトルクが得られるように電流指令値を算出し、その電流指令値で表される電流が電動モータ20に流れるようにモータ駆動回路30の各スイッチング素子31〜36のデューティ比を制御する。この電動モータ20の駆動制御にあたっては、2相回転磁束座標系(d−q座標系)で記述されるベクトル制御が用いられる。電動モータ20の駆動制御については後述する。
次に、電動パワーステアリング装置の電源供給系統について説明する。電動パワーステアリング装置は、車載電源装置80から電源供給される。車載電源装置80は、定格出力電圧12Vの一般的な車載バッテリである主バッテリ81と、エンジンの回転により発電する定格出力電圧14Vのオルタネータ82とを並列接続して構成される。車載電源装置80には、電源供給元ライン83と接地ライン84が接続される。電源供給元ライン83は、制御系電源ライン85と駆動系電源ライン86とに分岐する。制御系電源ライン85は、アシストECU100に電源供給するための電源ラインとして機能する。駆動系電源ライン86は、モータ駆動回路30とアシストECU100との両方に電源供給する電源ラインとして機能する。
制御系電源ライン85には、イグニッションスイッチ87が接続される。駆動系電源ライン86には、主電源リレー88が接続される。この主電源リレー88は、アシストECU100からのオン信号により接点を閉じて電動モータ20への電力供給回路を形成し、オフ信号により接点を開いて電動モータ20への電力供給回路を遮断するものである。制御系電源ライン85は、アシストECU100の電源+端子に接続されるが、その途中で、イグニッションスイッチ87よりも負荷側(アシストECU100側)においてダイオード89を備えている。このダイオード89は、カソードをアシストECU100側、アノードを車載電源装置80側に向けて設けられ、電源供給方向にのみ通電可能とする逆流防止素子である。
駆動系電源ライン86には、主電源リレー88よりも負荷側において制御系電源ライン85と接続する連結ライン90が分岐して設けられる。この連結ライン90は、制御系電源ライン85におけるダイオード89の接続位置よりもアシストECU100側に接続される。また、連結ライン90には、ダイオード91が接続される。このダイオード91は、カソードを制御系電源ライン85側に向け、アノードを駆動系電源ライン86側に向けて設けられる。従って、連結ライン91を介して駆動系電源ライン86から制御系電源ライン85には電源供給できるが、制御系電源ライン85から駆動系電源ライン86には電源供給できないような回路構成となっている。駆動系電源ライン86および接地ライン84は、モータ駆動回路30の電源入力部に接続される。また、接地ライン84は、アシストECU100の接地端子にも接続される。
次に、アシストECU100の機能について図2を用いて説明する。図2は、アシストECU100のマイクロコンピュータのプログラム制御により処理される機能を表す機能ブロック図である。
アシストECU100は、電動モータ20の回転方向をq軸とするとともに回転方向と直交する方向をd軸とする2相回転磁束座標系(d−q座標系)で記述されるベクトル制御によって電動モータ20の回転を制御する。q軸およびd軸について、表現方法を換えると、d軸が界磁方向であり、q軸がそれに直交する方向である。従って、q軸電流は、電動モータ20にトルクを発生させるように作用し、d軸電流は、電動モータ20にトルクを発生させるようには作用しなく界磁磁束を変化させるように作用する。
アシストECU100は、電流指令部101を備えている。電流指令部101は、q軸電流指令値Iq*を演算するq軸電流演算部101qと、d軸電流指令値Id*を演算するd軸電流演算部101dとを備えている。電流指令部101は、後述する異常状態判定部110から出力される2つの異常判定信号を入力し、異常判定信号が逆入力操舵異常状態あるいは高回転異常状態を表す異常検出信号である場合と、逆入力操舵異常状態あるいは高回転異常状態が検出されていないことを表す正常信号である場合とで、電動モータ20の制御モードを切り替える機能を備えている。
ここでは、アシストECU100の全体的な機能を先に説明するために、異常状態が検出されていないときの制御モード、つまり、正常時モードを例に各機能部の処理について説明する。
q軸電流演算部101qは、車速v、操舵トルクT、回転角θ、回転速度ωを表す検出信号、及び、異常状態判定部110から出力される異常判定信号を入力する。q軸電流演算部101qは、異常状態判定部110から出力される異常判定信号が正常信号である場合、操舵トルクセンサ22から出力される操舵トルクT及び車速センサ25から出力される車速vを入力して、図3に示す基本アシストトルクテーブルを参照することにより基本アシストトルクTasを計算する。基本アシストトルクTasは、操舵トルクTの増加にしたがって増加するとともに車速vの増加にしたがって減少するように設定されている。この基本アシストトルクテーブルは、例えば、ROM等の記憶素子に予め記憶されている。尚、図3においては、右方向に操舵したときの基本アシストトルクテーブルを表しているが、左方向に操舵した場合は、基本アシストトルクTasの方向が反対方向となるだけで、その大きさ(絶対値)は同じである。また、本実施形態では、基本アシストトルクTasを基本アシストトルクテーブルを用いて計算するようにしているが、基本アシストトルクテーブルに代えて操舵トルクTおよび車速vに応じて変化する基本アシストトルクTasを定義した関数を用意しておき、この関数を用いて基本アシストトルクTasを計算するようにしてもよい。
また、q軸電流演算部101qは、後述する回転角変換部104により検出された回転角θを入力し、この回転角θを舵角中立位置を基準とした角度に変換した操舵ハンドル11の操舵角θhを算出するとともに、後述する回転速度変換部107により検出された電動モータ20のロータの回転速度(角速度)ωを入力する。そして、操舵角θhと回転速度ωとを使って基本アシストトルクTasに対する補償値Tcを計算する。補償値Tcは、例えば、操舵角θhに比例して大きくなるステアリングシャフト12の中立位置への復帰力と回転速度ωに比例して大きくなるステアリングシャフト12の回転に対する抵抗力に対応した戻しトルクとの和として計算される。q軸電流演算部101qは、計算した基本アシストトルクTasと補償値Tcの和を目標アシストトルクT*として設定し、この目標アシストトルクT*をトルク定数で除算することにより、d−q座標系におけるq軸電流指令値Iq*を算出する。
一方、d軸電流演算部101dは、回転速度変換部107により検出された電動モータ20のロータの回転速度(角速度)ωと、異常状態判定部110から出力される異常判定信号を入力する。d軸電流演算部101dは、異常状態判定部110から出力される異常判定信号が正常信号である場合、図4に示す弱め界磁制御電流テーブルを参照することにより弱め界磁制御電流としてのd軸電流指令値Id*を算出する。本実施形態においては、d軸電流を弱め界磁制御用と強め界磁制御用との両方に使い分ける。そして、弱め界磁制御電流として通電する場合のd軸電流を負の値で表し、強め界磁制御電流として通電する場合のd軸電流を正の値で表す。
弱め界磁制御電流テーブルは、回転速度ωに対応するd軸電流指令値Id*を設定したもので、回転速度ωが設定値ω1以下であれば、d軸電流指令値Id*をゼロ(Id*=0)に設定し、回転速度ωの大きさが設定値ω1を越える場合には、回転速度ωの増加にしたがってd軸電流指令値Id*が増加するように設定する。また、回転速度ωの大きさが設定値ω2を越える範囲においては、一定の大きなd軸電流指令値Id*が設定される。このd軸電流指令値Id*は、回転速度ωの増加に伴ってd軸電流指令値Id*が増加するように設定されるものであれば、この弱め界磁制御電流テーブルで示す特性に限らず、任意の特性を使って算出することができる。また、弱め界磁制御電流テーブルに代えて、回転速度ωに応じて変化するd軸電流指令値Id*を定義した関数を用意しておき、この関数を用いてd軸電流指令値Id*を計算するようにしてもよい。
尚、本明細書において検出値や計算値(θh、ω、T、Iq*、Id*)の大きさを論じる場合には、その値は、方向(正負)を区別しない絶対値を表すものとする。
図5,図6は、モータ電流の指令値を、トルクに対応したq軸電流指令値Iq*と、磁束に対応したd軸電流指令値Id*とに分解したベクトル図である。図5、回転速度ωの大きさが設定値ω1を越える場合の例であり、図6は、回転速度ωの大きさが設定値ω1以下となる場合の例である。
このように計算された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は、回転角変換部104から出力される回転角θ(電気角に対応する)を入力し、その回転角θに基づいて、電流センサ38から出力される3相電流Iu,Iv,Iwをd−q座標系の2相電流Id,Iqに変換する。回転角変換部104は、回転角センサ21が出力する鋸歯形状の信号を所定のサンプリング周期で読み取ることにより電動モータ20の回転角θを計算する。
また、回転角変換部104が出力する回転角θは、回転速度変換部107に入力される。回転速度変換部107は、入力した回転角θを時間で微分して(例えば、単位時間あたりの回転角θの変化量から)電動モータ20の回転速度ωを算出し、算出した回転速度ωを電流指令部101および異常状態判定部110に出力する。
フィードバック制御部102により算出されたq軸電圧指令値Vq*とd軸電圧指令値Vd*は、2相/3相座標変換部105に出力される。2相/3相座標変換部105は、回転角変換部104から出力される回転角θに基づいて、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に付与される。また、電動モータ20が高速回転する場合には、弱め界磁制御電流として作用するd軸電流が流れるため、逆起電力の発生が抑制され、電動モータ20が良好に回転する。従って、運転者が操舵ハンドル11を速く回動操作しても、電動モータ20の回転が良好に追従するため、ハンドル操作に引っ掛かりを感じさせない。
ところで、前輪タイヤが縁石に衝突したケースのように、ステアリング機構10に強い逆入力が働くと、操舵輪Wが転舵されラックバー14が軸方向に移動する。これにより、ラックバー14の軸方向の運動エネルギーがラックアンドピニオン機構13を介してステアリングシャフト12に伝達され、ステアリングシャフト12が回転する。また、ステアリングシャフト12の回転により、電動モータ20のロータが同方向に回されることとなる。そして、ラックバー14がストロークエンドに達して、ラックバー14の両端に設けたラックエンド部材18の一方が、ラックハウジング15のストッパ部15aに衝突する。以下、この衝突をストロークエンド衝突と呼ぶ。
ストロークエンド衝突が起きると、ステアリングシャフト12の出力側の回転はラックバー14の停止により規制されるが、ステアリングシャフト12の入力側は、開放されているためハンドル慣性トルクとモータ慣性トルクとにより更に回転する。このため、ストロークエンド衝突時には、ステアリングシャフト12における減速ギヤ19より出力側が捩られて大きな衝撃が加わる。特に、本実施形態のように、ステアリングシャフト12に減速ギヤ19を介して電動モータ20を連結しているコラムアシスト方式においては、電動モータ20の慣性トルクが大きく影響するため衝撃が大きい。従って、ステアリングシャフト12の強度(インターミディエイトシャフト12b、ピニオンシャフト12c、および、それらを連結するユニバーサルジョイント12d,12eの強度)を高くする必要がある。
また、このような逆入力操舵異常状態においては、非常に速い速度で操舵輪Wが転舵されることから電動モータ20もそれに比例して高速回転する。このため、弱め界磁制御電流としてのd軸電流指令値Id*が増大して電動モータ20の回転速度増加を助長してしまう。また、これに伴って、回転角変換部104が回転角θを正確に検出できる回転速度範囲を超えてしまうこともある。つまり、回転角変換部104において回転角センサ21の出力する信号のサンプリングが間に合わなくなる。この場合には、制御上における回転角が実際の回転角よりも少なく計算されてd−q座標系に位相遅れが発生する。この位相遅れにより、弱め界磁制御電流となるd軸電流が大きくなってしまい、電動モータ20の回転速度が更に大きくなる。このため、ストロークエンド衝突が一層強いものとなる。
そこで、本実施形態においては、逆入力操舵異常状態、あるいは、逆入力により電動モータ20が通常の運転操作ではあり得ないような速さで回転する高回転異常状態を検出する異常状態判定部110を備える。そして、異常状態判定部110において異常状態を検出したときに、電流指令部101に異常検出信号を出力して、制御モードを切り替えるようにしている。
異常状態判定部110は、逆入力判定部111と高速回転判定部112とを備えている。まず、逆入力判定部111について説明する。逆入力判定部111は、タイヤからステアリング機構10に逆入力が働いて運転者の意志に反して操舵されてしまう逆入力操舵異常状態になっているか否かを判定する機能部である。この逆入力操舵異常状態は、セルフアライニングトルクのように運転者が保舵できるような弱い外力が働く状態を含むものではない。
逆入力判定部111は、図7に示す逆入力操舵異常判定ルーチンにしたがって逆入力操舵異常状態を判定する。逆入力操舵異常判定ルーチンは、アシストECU100の制御プログラムの一部としてROM内に記憶され、イグニッションスイッチ87がオンしている期間、所定の短い周期で繰り返される。
逆入力操舵異常判定ルーチンが起動すると、逆入力判定部111は、ステップS11において、操舵トルクセンサ22から出力される操舵トルクT、回転角変換部104から出力される回転角θ、回転速度変換部107から出力される回転速度ωを読み込む。続いて、ステップS12において、操舵トルクTの表す符号と、回転速度ωの表す符号とが一致していないか否かを判断する。図中において、sign(T)は、操舵トルクTの符号、つまり操舵トルクTの働く方向を表す。また、sign(ω)は、回転速度ωの符号、つまり、電動モータ20の回転方向(操舵ハンドル11の回転方向に対応する)を表す。そして、sign(T)×sign(ω)は、両者の符号が同じであるか否かを判定する式であり、両者の符号が同じであれば判定結果が正の値をとり、両者の符号が異なっていれば判定結果が負の値をとる。
逆入力が発生して操舵ハンドル11が回されてしまう場合には、操舵トルクTの方向と、操舵ハンドル11の回転方向である電動モータ20の回転方向とは互いに反対方向となる。例えば、前輪タイヤが縁石に衝突して操舵輪Wが左方向に転舵した場合、操舵ハンドル11はステアリング機構10を介して左方向に回転するが、操舵トルクTは右方向として検出される。従って、ステップS12において、両者の符号が同じであると判定した場合(S12:No)には、ステップS13において、逆入力操舵異常状態ではないと判定する。この場合、逆入力判定部111は、電流指令部101のq軸電流演算部101qとd軸電流演算部101dと対して、逆入力操舵異常の判定信号として正常信号を出力する。
一方、逆入力判定部111は、ステップS12において、操舵トルクTの方向と電動モータ20の回転方向とが相違すると判定した場合には、更に、ステップS14において、回転角θから舵角中立位置を基準とした操舵角θhを算出し、この操舵角θhの大きさ|θh|が増大しているか否かを判断する。つまり、操舵ハンドル11が中立位置から遠ざかる方向に回転しているか否かを判断する。操舵トルクTの方向と電動モータ20の回転方向とが相違するケースとしては、逆入力が働いて異常操舵されているケースと、運転者がセルフアライニングトルクを利用して操舵ハンドル11を戻しているケースとの2つが考えられる。操舵ハンドル11の戻し状態であれば、操舵角θhは中立位置に近づく方向に変化するため、操舵角θhの大きさ|θh|は減少する。
そこで、逆入力判定部111は、操舵ハンドル11が中立位置に向かう戻し状態であれば(S14:No)、その処理を上記ステップS13に進めて、逆入力操舵異常状態ではないと判定し、逆入力操舵異常の判定信号として正常信号を出力する。
また、操舵角θhの大きさ|θh|が増大している場合(S14:Yes)には、ステップS15において逆入力操舵異常状態であると判定する。この場合、逆入力判定部111は、電流指令部101のq軸電流演算部101qとd軸電流演算部101dと対して、逆入力操舵異常の判定信号として異常検出信号を出力する。
逆入力判定部111は、ステップS13あるいはステップS15において逆入力操舵異常の判定信号を出力すると、逆入力操舵異常判定ルーチをいったん終了する。そして、所定の短い周期で逆入力操舵異常判定ルーチを繰り返し実行する。
次に、高速回転判定部112の処理について説明する。図8は、高速回転判定部112の実行する異常高速回転判定ルーチンを表すフローチャートである。異常高速回転判定ルーチンは、アシストECU100の制御プログラムの一部としてROM内に記憶され、イグニッションスイッチ87がオンしている期間、所定の短い周期で繰り返される。
異常高速回転判定ルーチンが起動すると、高速回転判定部112は、ステップS21において、回転速度変換部107から出力される回転速度ωを読み込む。続いて、ステップS22において、回転速度ωが予め設定した異常判定用速度Aを越えているか否かを判断する。逆入力操舵異常時においては、電動モータ20が通常時では検出されない異常な速さで回転する。こうした場合、回転角変換部104が回転角θを正確に検出できなくなるほど回転速度が速くなるおそれがある。従って、この異常判定用速度Aは、回転角変換部104が正確に回転角θを検出できる回転速度の範囲内で、かつ、通常時には検出されない高回転速度に設定される。
高速回転判定部112は、回転速度ωが異常判定用速度A以下であれば(S22:No)、ステップS23において、高回転異常状態ではないと判定する。この場合、高速回転判定部112は、電流指令部101のq軸電流演算部101qとd軸電流演算部101dと対して、高回転異常の判定信号として正常信号を出力する。
一方、高速回転判定部112は、回転速度ωが異常判定用速度Aを越えていれば(S22:Yes)、ステップS24において、高回転異常状態であると判定する。この場合、高速回転判定部112は、電流指令部101のq軸電流演算部101qとd軸電流演算部101dと対して、高回転異常の判定信号として異常検出信号を出力する。
高速回転判定部112は、ステップS23あるいはステップS24において高回転異常の判定信号を出力すると、異常高速回転判定ルーチンをいったん終了する。そして、所定の短い周期で異常高速回転判定ルーチンを繰り返し実行する。
次に、こうした異常判定信号に基づいて制御モードを切り替える電流指令部101の処理について説明する。図9は、d軸電流演算部101dが実行するd軸電流指令値算出ルーチンを表す。このd軸電流指令値算出ルーチンは、アシストECU100の制御プログラムの一部としてROM内に記憶され、イグニッションスイッチ87がオンしている期間、所定の短い周期で繰り返される。
d軸電流指令値算出ルーチンが起動すると、d軸電流演算部101dは、ステップ31において、フラグFが「0」に設定されているか否かを判断する。このフラグFは、後述する異常時モードとしての回転抑制制御が選択されているときに「1」に設定されるもので、本ルーチンの起動時においては、「0」に設定されている。従って、ここでは、「Yes」と判断して、その処理をステップS32に進める。
d軸電流演算部101dは、ステップS32において、異常状態判定部110から異常判定信号を読み込む。この場合、逆入力判定部111の出力する逆入力操舵異常の判定信号と、高速回転判定部112の出力する高回転異常の判定信号とを読み込む。
続いて、d軸電流演算部101dは、ステップS33において、逆入力操舵異常の判定信号に基づいて逆入力操舵異常が検出されていないか否かを判断する。逆入力操舵異常の判定信号が正常信号であれば(S33:Yes)、逆入力操舵異常が検出されていないことになる。この場合、d軸電流演算部101dは、ステップS34において、高回転異常の判定信号に基づいて高回転異常が検出されていないか否かを判断する。高回転異常の判定信号が正常信号であれば(S34:Yes)、高回転異常が検出されていないことになる。
d軸電流演算部101dは、異常状態判定部110から読み込んだ2つの異常判定信号がともに正常信号である場合には、ステップS35において、正常時モードとしての弱め界磁制御を行うために設定されたd軸電流指令値Id*を算出する。つまり、上述した弱め界磁制御電流テーブル(図4参照)を参照して、回転速度ωに対応するd軸電流指令値Id*を算出する。従って、d軸電流演算部101dは、回転速度ωの増加に伴って増加するd軸電流指令値Id*を設定する。尚、このステップS35においては、回転速度ωを読み込む処理を含んでいる。
d軸電流演算部101dは、算出したd軸電流指令値Id*をフィードバック制御部102に出力してd軸電流指令値算出ルーチンをいったん終了する。そして、所定の短い周期でd軸電流指令値算出ルーチンを繰り返し実行する。
逆入力操舵異常および高回転異常が検出されていないあいだ(S33,S34:Yes)は、上述したステップS31〜S35の処理が繰り返される。そして、異常状態判定部110から読み込んだ異常判定信号が正常信号から異常検出信号に変わると、d軸電流演算部101dは、異常時モードに切り換えてステップS36以降の処理を開始する。
車両走行中に前輪タイヤが縁石等に強く衝突して操舵輪Wが転舵されると、異常状態判定部110は、上述した逆入力操舵異常判定ルーチンおよび異常高速回転判定ルーチンの実行によりそれぞれ異常検出信号を出力する。異常状態判定部110における2つの異常判定ルーチンは、判定手法が異なるため、異常検出信号の出力するタイミングが相違する。d軸電流演算部101dは、逆入力操舵異常の判定信号と高回転異常の判定信号の両方を読み、何れか一方でも正常信号から異常検出信号に変わったときに異常時モードに切り換える。従って、逆入力により操舵輪Wが転舵されたときに早い段階で異常時モードに切り換えることができる。
d軸電流演算部101dは、ステップS33あるいはステップS34において、異常判定信号が異常検出信号であることを検出すると、その処理をステップS36に進め、フラグFを「1」に設定する。
続いて、ステップS37において、異常時モードとしての回転抑制制御を行うために設定されたd軸電流指令値Id*を算出する。この場合、図10に示す回転抑制制御電流テーブルを参照してd軸電流指令値Id*を算出する。回転抑制制御電流テーブルは、予め設定した基準回転速度Rから回転速度変換部107により検出された回転速度ωを減算した値(R−ω)と、強め界磁制御電流としてのd軸電流指令値Id*との対応関係を設定したもので、ROM等の記憶素子に記憶されている。基準回転速度Rは、通常時においては検出されない非常に速い回転速度に設定されている。回転抑制制御電流テーブルでは、減算値(R−ω)が小さくなるにしたがって増加する強め界磁制御電流としてのd軸電流指令値Id*を設定する。つまり、回転速度ωの増加に伴って強め界磁制御電流が増加するようにd軸電流指令値Id*を設定する。また、減算値(R−ω)がX以上となる場合、つまり、回転速度ωが(R−X)以下となる場合には、d軸電流指令値Id*をゼロに設定する。
従って、d軸電流演算部101dは、異常時モードにおいては、弱め界磁制御電流を流さないように、かつ、回転速度ωが(R−X)を越えるような異常高速回転する場合には、その回転速度ωが増加するにしたがって強め界磁制御電流が増加するようにd軸電流指令値Id*を設定する。そして、設定したd軸電流指令値Id*をフィードバック制御部102に出力する。これにより、正常時モードに比べて逆起電力が増大し、電動モータ20の回転に対して大きな制動力が働く。尚、このステップS37においても、回転速度ωを読み込む処理を含んでいる。また、d軸電流指令値Id*の算出にあたっては、回転抑制制御電流テーブルに代えて、回転速度ωに応じて変化するd軸電流指令値Id*を定義した関数を用意しておき、この関数を用いてd軸電流指令値Id*を計算するようにしてもよい。
続いて、d軸電流演算部101dは、ステップS38において、回転速度ωがゼロにまで低下したか否かを判断する。回転速度ωがゼロでない場合は、そのままd軸電流指令値算出ルーチンをいったん終了する。そして、所定の短い周期でd軸電流指令値算出ルーチンを繰り返し実行する。この場合、フラグFが「1」に設定されているため、次のd軸電流指令値算出ルーチンの開始時においては、ステップS31の判断が「No」となり、その処理を上述したステップS37に進める。従って、いったん異常モードに切り替わった後は、異常状態判定部110が出力する異常判定信号を読み込むことなく、回転抑制制御を行うためのd軸電流指令値Id*を算出する。
こうした異常時モードにおいては、ステップS38において、回転速度ωがゼロにまで低下したか否かについて繰り返し判断される。回転速度ωがゼロにまで低下しないあいだは、異常判定信号に関わらず異常時モードが継続される。そして、回転速度ωがゼロに達すると、d軸電流演算部101dは、ステップS39において、フラグFを「0」にリセットする。従って、その後は、ステップS31の判断が「Yes」となり、異常判定信号に基づいた制御モードが選択されるようになる。
次に、q軸電流演算部101qにおいて行われる異常判定信号に基づく制御モードの切換処理について説明する。図11は、q軸電流演算部101qが実行するq軸電流指令値算出ルーチンを表す。このq軸電流指令値算出ルーチンは、アシストECU100の制御プログラムの一部としてROM内に記憶され、イグニッションスイッチ87がオンしている期間、所定の短い周期で繰り返される。尚、q軸電流指令値算出ルーチンにおいて、異常判定信号を読み込んで制御モードを切り替える処理に関しては、上述したd軸電流指令値算出ルーチン(図9)と同一であるため、同一の処理に関しては、図面にd軸電流指令値算出ルーチンのステップ番号と同じステップ番号を付して説明を省略する。
q軸電流演算部101qは、異常状態判定部110の出力する2つの異常判定信号を読み込み(S32)、両異常判定信号が正常信号である場合(S33,S34:Yes)には、ステップS45において、正常時モードとしての操舵アシスト制御を行うために設定されたq軸電流指令値Iq*を算出する。このq軸電流指令値Iq*は、上述したように、操舵トルクTと車速vとに基づいて算出した基本アシストトルクTasと、操舵角θhと回転速度ωとに基づいて算出した補償値Tcとの和を目標アシストトルクT*として設定し、この目標アシストトルクT*をトルク定数Kで除算することにより算出される。
一方、異常状態判定部110の出力する2つの異常判定信号のうち、一つでも異常検出信号である場合(S33,or,S34:No)には、ステップS47において、異常時モードとしてのq軸電流指令値Iq*をゼロ(Iq*=0)に設定する。そして、異常時モードに設定した後は、回転速度ωがゼロになるまでq軸電流指令値Iq*がゼロに維持する。
従って、異常時モードにおいては、モータ電流の指令値は、例えば、図12に示すように、強め界磁制御電流としてのd軸電流指令値Id*となる。
以上説明した本実施形態の電動パワーステアリング装置によれば、異常状態判定部110により逆入力操舵異常状態と高回転異常状態の何れか一方でも検出されたとき、直ちに電動モータ20の制御モードを正常時モードから異常時モードに切り換える。そして、異常時モードにおいては、弱め界磁制御電流が流れないように、かつ、回転速度ωが高速であれば、回転速度ωの増加に伴って強め界磁制御電流が増加するようにd軸電流指令値Id*を算出する。また、同時に、q軸電流指令値Iq*をゼロに設定する。この結果、従来のように弱め界磁制御によるモータ回転速度の増加を助長してしまうことがなく、かつ、電動モータ20の回転に対して制動力を加えるため、図13に示すように、電動モータ20の回転速度を回転角検出可能な範囲に維持することができる。このため、d−q座標系に位相遅れが発生しなくなり、異常時モードでの電動モータ20の制動制御を良好に行うことができる。
従って、ストロークエンドに達する前にラックバー14の移動速度の上昇を抑えることができ、ストロークエンド衝突時における衝撃を弱めることができる。これにより、ステアリング機構10、特に、ステアリングシャフト12に加わる衝撃を適正に低減することができる。この結果、ステアリングシャフト12の小径化を図ることができる。また、操舵ハンドル11から運転者に伝わる衝撃を低減することもできる。
また、逆入力判定部111においては、操舵トルクTの方向と回転速度ωの方向との比較、および、操舵角θhの変化する方向に基づいて逆入力操舵異常を判定するため、その判定精度が高い。また、電流指令部101においては、逆入力操舵異常の判定信号と高回転異常の判定信号との両方を読み、何れか一方でも異常検出信号に変わったときに異常時モードに切り換えるため、逆入力により操舵輪Wが転舵されたときに早い段階で異常時モードによる制御を実施することができる。
以上、本実施形態の電動パワーステアリング装置について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変更が可能である。
例えば、本実施形態では、異常時モードにおいて、弱め界磁制御電流が流れないようなd軸電流指令値Id*を設定しているが、正常時モードにおける弱め界磁制御電流よりも少ない弱め界磁制御電流を流すようなd軸電流指令値Id*を設定するようにしてもよい。また、本実施形態では、異常時モードにおいて、回転速度ωの増加に伴って強め界磁制御電流を流すようにd軸電流指令値Id*を設定しているが、強め界磁制御電流を流さないようにしてもよい。例えば、異常時モードでは、回転速度ωの増加に関わらず常にd軸電流指令値Id*をゼロに設定するようにしてもよい。
また、q軸電流指令値Iq*に関して、本実施形態では、異常時モードにおいてq軸電流指令値Iq*をゼロに設定しているが、必ずしもゼロに設定する必要はなく、例えば、正常時モードと同じ指令値を算出するようにしてもよい。
また、本実施形態においては、電動モータ20の回転角θに基づいて回転速度ωを検出するようにしているが、例えば、ステアリングシャフト12に回転角センサを設け、この回転角センサにより検出される回転角の変化量から得られる回転速度を電動モータ20の回転速度ωとして検出する構成でもよい。
また、本実施形態においては、異常状態判定部110で逆入力操舵異常状態と高回転異常状態との両方を検出するようにしているが、何れか一方のみを検出する構成であってもよい。
また、本実施形態においては、操舵トルクTの方向と回転速度ωの方向との比較、および、操舵角θhの変化する方向に基づいて逆入力操舵異常を判定するが、逆入力操舵異常の判定は、これに限ったものではない。例えば、逆入力操舵異常時においては、操舵トルクが通常の操舵操作時において検出されないほどの大きな値となるため、予め判定基準トルクTrefを設定しておき、検出したトルクTが判定基準トルクTrefを上回ったときに、逆入力操舵異常が発生したと判定するようにしてもよい。
また、本実施形態においては、車載電源装置80の供給する電源をそのままモータ駆動回路30に供給するが、例えば、モータ駆動回路30の入力側に、車載電源装置80から供給される電源を昇圧する昇圧回路を設けて電動モータ20の大出力化を図るようにしてもよい。
また、本実施形態においては、操舵トルクTと車速vとに基づいて算出される基本アシストトルクTasと、補償値Tcとの和から目標アシストトルクT*を算出し、この目標アシストトルクT*からq軸電流指令値Iq*を算出しているが、目標アシストトルクT*の計算は任意に設定できるものであり、例えば、補償値Tcを加味しないようにしてもよい。
また、本実施形態においては、回転角センサ21としてレゾルバを用いているが、ロータが所定角度回転するたびにパルス信号を出力するエンコーダを使った回転角センサを採用することもできる。この場合、回転角変換部104は、モータ回転方向に応じてパルス信号をカウントアップ、カウントダウンすることによりモータ回転角を検出する。
尚、本実施形態の回転角センサ21と回転角変換部104と回転速度変換部107とからなる構成が本発明の回転速度検出手段に相当する。また、本実施形態の電流指令部101が本発明の電流指令値算出手段に相当する。また、本実施形態のフィードバック制御部102、3相/2相変換部103、回転角変換部104、2相/3相座標変換部105、PWM信号発生部、モータ駆動回路30からなる構成が本発明のモータ駆動制御手段に相当する。また、本実施形態の異常状態判定部110が本発明の異常状態検出手段に相当する。また、本実施形態のd軸電流指令値算出ルーチンを実施するd軸電流演算部101dが本発明の制御モード切替手段に相当する。また、回転角センサ21と回転角変換部104とにより電動モータ20の回転角を検出する回転角検出手段を構成し、モータ駆動制御手段は、この回転角検出手段により検出された回転角を用いて、電流指令値にしたがって電動モータを駆動する。