(57)【要約】【課題】実際の舵角に対応した正確なモータ絶対角を取得できる操舵制御装置を提供する。【解決手段】制御舵角演算部５３は、ラック軸が左右いずれかのラックエンド位置にあるか否かを判定するエンド位置判定部７３と、モータ絶対角θmaを検出するモータ絶対角演算部７１と、ラック軸が左右いずれかのラックエンド位置にあると判定されたときに検出されたモータ絶対角θmaを該左右いずれかのラックエンド位置に対応するエンド位置対応モータ角として設定するエンド位置対応モータ角設定部７４とを備える。また、制御舵角演算部５３は、左右のエンド位置対応モータ角の平均値をオフセット角とし、検出されるモータ絶対角θmaから該オフセット角を減算した角度を、モータ絶対角θmaで示される制御舵角θsの原点として設定する制御舵角原点設定部７５を備える。【選択図】図５
2019104476.tif 000002
【特許請求の範囲】
【請求項１】
モータを駆動源とするアクチュエータにより操舵機構の転舵軸を往復動させるモータトルクが付与される操舵装置を制御対象とし、
前記転舵軸が左右いずれかのエンド位置にあるか否かを判定するエンド位置判定部と、
前記モータの回転角を３６０°の範囲を超える絶対角で検出するモータ絶対角検出部と、
前記エンド位置判定部により前記転舵軸が左右いずれかのエンド位置にあると判定されたときに、前記モータ絶対角検出部により検出されたモータ絶対角を該左右いずれかのエンド位置に対応するエンド位置対応モータ角として設定するエンド位置対応モータ角設定部とを備えた操舵制御装置。
【請求項２】
請求項１に記載の操舵制御装置において、
前記モータ絶対角検出部は、前記モータ絶対角を前記操舵機構に付与されたトルクにより生じる該操舵機構の機械的な弾性変形に基づいて補正して検出する操舵制御装置。
【請求項３】
請求項１又は２に記載の操舵制御装置において、
前記エンド位置対応モータ角設定部は、前記エンド位置対応モータ角を設定した後に、該エンド位置対応モータ角と同一符号かつ絶対値が大きい前記モータ絶対角が前記モータ絶対角検出部により検出された場合には、該モータ絶対角を新たなエンド位置対応モータ角として更新する操舵制御装置。
【請求項４】
請求項１〜３のいずれか一項に記載の操舵制御装置において、
前記エンド位置対応モータ角設定部により設定された左右の前記エンド位置対応モータ角の平均値をオフセット角とし、検出される前記モータ絶対角から該オフセット角を減算した角度を、前記モータ絶対角で示される制御舵角の原点として設定する制御舵角原点設定部を備えた操舵制御装置。
【請求項５】
請求項４に記載の操舵制御装置において、
前記制御舵角原点設定部は、前記エンド位置対応モータ角設定部により設定された左右の前記エンド位置対応モータ角の絶対値の和が前記転舵軸の全ストローク範囲に対応するモータ絶対角範囲に基づくストローク閾値未満である場合には、前記原点を設定しない操舵制御装置。
【請求項６】
請求項４又は５に記載の操舵制御装置において、
前記モータトルクがトルク指令値となるように前記モータの駆動を制御するモータ制御部を備え、
前記モータ制御部は、前記制御舵角の絶対値が前記エンド位置対応モータ角よりも第１角度だけステアリング中立位置に近いエンド近傍舵角の絶対値を超えた場合に、該制御舵角の絶対値の増大に基づいて前記トルク指令値の絶対値を小さくするエンド当て緩和制御を行うものであって、
前記制御舵角原点設定部は、前記左右のエンド位置対応モータ角が設定された後、前記モータ絶対角が該左右のエンド位置対応モータ角よりもステアリング中立位置側に前記第１角度以上、近づいてから該左右のエンド位置対応モータ角に基づいて前記原点を設定し、
前記モータ制御部は、前記原点の設定後に前記エンド当て緩和制御を実行する操舵制御装置。
【請求項７】
請求項４〜６のいずれか一項に記載の操舵制御装置において、
前記モータトルクがトルク指令値となるように前記モータの駆動を制御するモータ制御部を備え、
前記モータ制御部は、前記制御舵角の絶対値が前記エンド位置対応モータ角よりも第１角度だけステアリング中立位置に近いエンド近傍舵角を超えた場合に、該制御舵角の絶対値の増大に基づいて前記トルク指令値の絶対値を小さくするエンド当て緩和制御を行うものであって、
前記制御舵角の原点が未設定の状態において、前記エンド位置判定部により前記転舵軸が左右いずれか一方のエンド位置にあると判定された複数のタイミングでの前記モータ絶対角である複数の一方エンド位置対応モータ角に基づいて、該左右いずれか一方の暫定エンド位置対応舵角を設定する暫定エンド位置対応舵角設定部を備え、
前記モータ制御部は、前記モータ絶対角の前記暫定エンド位置対応舵角までの角度が第２角度未満になった場合に、該角度の減少に基づいて前記トルク指令値の絶対値を小さくする暫定エンド当て緩和制御を行う操舵制御装置。
【請求項８】
請求項７に記載の操舵制御装置において、
前記暫定エンド位置対応舵角設定部は、前記複数の一方エンド位置対応モータ角が設定された後、前記モータ絶対角が該暫定エンド位置対応舵角よりもステアリング中立位置側に前記第２角度以上、近づいてから該複数の一方エンド位置対応モータ角に基づいて前記暫定エンド位置対応舵角を設定し、
前記モータ制御部は、前記暫定エンド位置対応舵角の設定後に前記暫定エンド当て緩和制御を実行する操舵制御装置。
【請求項９】
請求項７又は８に記載の操舵制御装置において、
前記暫定エンド位置対応舵角設定部は、前記複数の一方エンド位置対応モータ角の平均値を前記暫定エンド位置対応舵角として設定する操舵制御装置。
【請求項１０】
請求項７〜９のいずれか一項に記載の操舵制御装置において、
前記暫定エンド位置対応舵角設定部は、前記暫定エンド位置対応舵角の基礎となる前記複数の一方エンド位置対応モータ角として、前記複数の一方エンド位置対応モータ角の一と、該一を設定してから切り戻し操舵が行われたことを示す所定操舵量以上、前記モータ絶対角が変化した後に設定された前記複数の一方エンド位置対応モータ角の他の一とを用いる操舵制御装置。
【請求項１１】
請求項７〜１０のいずれか一項に記載の操舵制御装置において、
前記暫定エンド位置対応舵角設定部は、前記複数の一方エンド位置対応モータ角の一と他の一との差分が所定差分以下である場合に、前記暫定エンド位置対応舵角を設定する操舵制御装置。
【請求項１２】
請求項１〜１１のいずれか一項に記載の操舵制御装置において、
前記エンド位置判定部は、前記モータの角速度が停止状態を示す所定角速度以下であり、かつ前記操舵機構に付与されるトルクが所定トルク以上である場合に前記転舵軸がエンド位置にあると判定する操舵制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操舵制御装置に関する。
【背景技術】
【０００２】
従来、車両用操舵装置として、モータを駆動源とするアクチュエータを備えた電動パワーステアリング装置（ＥＰＳ）が知られている。こうしたＥＰＳには、ステアリングホイールの操舵角（転舵輪の転舵角）を、３６０°を超える範囲の絶対角で取得したモータの回転角（モータ絶対角）に対応させて検出するものがあり、モータ絶対角で示される制御上の舵角（制御舵角）に基づいて各種制御を行っている。なお、制御舵角に基づく制御の一例として、例えば特許文献１には、ラック軸の端部であるラックエンドがラックハウジングに当たる前に操舵反力を増加させることで、エンド当ての衝撃を緩和するものが開示されている。また、制御舵角は、例えばステアリング中立位置にある状態での角度を基準（原点）として回転数を積算（カウント）することにより検出する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−２０５０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、舵角に対応させてモータ絶対角を検出する構成では、例えばイグニッションオフ時においても車載のバッテリから制御装置への電力供給を継続することでモータの回転を検出しており、舵角が変化した場合においても、舵角とモータ絶対角との対応関係を保持している。しかし、例えばバッテリ交換等により、制御装置への電力供給が遮断されると、モータの回転を検出できなくなるため、舵角とモータ絶対角との対応関係を保持できず、舵角に対応させてモータ絶対角を検出できなくなる。そこで、舵角とモータ絶対角との対応関係が消失した場合等において、実際の舵角に対応する正確なモータ絶対角を取得できるように、これらの対応関係を記憶（学習）させることのできる技術の創出が求められていた。
【０００５】
なお、こうした問題は、ＥＰＳに限らず、例えばステアバイワイヤ式の操舵装置において、転舵輪を転舵させる転舵アクチュエータの駆動源となるモータの絶対角を舵角に対応させて検出する場合にも同様に生じ得る。
【０００６】
本発明の目的は、実際の舵角に対応した正確なモータ絶対角を取得できる操舵制御装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決する操舵制御装置は、モータを駆動源とするアクチュエータにより操舵機構の転舵軸を往復動させるモータトルクが付与される操舵装置を制御対象とし、前記転舵軸が左右いずれかのエンド位置にあるか否かを判定するエンド位置判定部と、前記モータの回転角を３６０°の範囲を超える絶対角で検出するモータ絶対角検出部と、前記エンド位置判定部により前記転舵軸が左右いずれかのエンド位置にあると判定されたときに、前記モータ絶対角検出部により検出されたモータ絶対角を該左右いずれかのエンド位置に対応するエンド位置対応モータ角として設定するエンド位置対応モータ角設定部とを備えた。
【０００８】
例えば車両が直進状態であるか否かを判定し、直進状態であると判定されたときのモータ絶対角をステアリング中立位置に対応する基準の角度とすることが考えられる。しかし、操舵装置を構成する各部品の寸法ばらつき等に起因して、ステアリング中立位置から左側のエンド位置までのストローク量と、ステアリング中立位置から右側のエンド位置までのストローク量とは僅かに異なることがある。その結果、ステアリング中立位置を基準としたモータ絶対角に基づいて推定されるエンド位置対応モータ角が、実際に転舵軸がエンド位置にあるモータ絶対角からずれてしまうおそれがある。この点、上記構成によれば、転舵軸がエンド位置にあると判定されたときのモータ絶対角をエンド位置対応モータ角として設定するため、正確なエンド位置対応モータ角を設定できる。
【０００９】
上記操舵制御装置において、前記モータ絶対角検出部は、前記モータ絶対角を前記操舵機構に付与されたトルクにより生じる該操舵機構の機械的な弾性変形に基づいて補正して検出することが好ましい。
【００１０】
上記構成によれば、転舵軸がエンド位置にあると判定されたときの操舵機構の弾性変形を考慮してより正確なエンド位置対応モータ角を設定できる。
上記操舵制御装置において、前記エンド位置対応モータ角設定部は、前記エンド位置対応モータ角を設定した後に、該エンド位置対応モータ角と同一符号かつ絶対値が大きい前記モータ絶対角が前記モータ絶対角検出部により検出された場合には、該モータ絶対角を新たなエンド位置対応モータ角として更新することが好ましい。
【００１１】
エンド位置判定部が、例えばトルクやモータの角速度等に基づいて判定を行う場合には、転舵輪が縁石等に当たっていると、実際には転舵軸がエンド位置になくても、それより手前の位置で誤ってエンド位置にあると判定するおそれがあり、エンド位置対応モータ角も不正確な角度が設定されるおそれがある。この点、上記構成によれば、一旦、エンド位置対応モータ角が設定されても、エンド位置対応モータ角と同一符号かつ絶対値が大きいモータ絶対角が検出された場合に更新されるため、誤ったエンド位置対応モータ角が設定されることを抑制できる。
【００１２】
上記操舵制御装置において、前記エンド位置対応モータ角設定部により設定された左右の前記エンド位置対応モータ角の平均値をオフセット角とし、検出される前記モータ絶対角から該オフセット角を減算した角度を、前記モータ絶対角で示される制御舵角の原点として設定する制御舵角原点設定部を備えることが好ましい。
【００１３】
上記構成によれば、容易にステアリング中立位置に対応する原点を設定できる。
上記操舵制御装置において、前記制御舵角原点設定部は、前記エンド位置対応モータ角設定部により設定された左右の前記エンド位置対応モータ角の絶対値の和が前記転舵軸の全ストローク範囲に対応するモータ絶対角範囲に基づくストローク閾値未満である場合には、前記原点を設定しないことが好ましい。
【００１４】
例えば転舵輪が縁石等に当たることで、転舵軸がエンド位置にあると判定され、誤ったエンド位置対応モータ角が設定された場合には、左右のエンド位置対応モータ角の絶対値の和が転舵軸の全ストローク範囲に応じたモータ絶対角範囲よりも小さくなる。この点を踏まえ、上記構成では、設定した左右のエンド位置対応モータ角の絶対値の和がモータ絶対角範囲に基づくストローク閾値未満である場合には、制御舵角の原点を設定しないため、誤った制御舵角の原点を設定することを抑制できる。
【００１５】
上記操舵制御装置において、前記モータトルクがトルク指令値となるように前記モータの駆動を制御するモータ制御部を備え、前記モータ制御部は、前記制御舵角の絶対値が前記エンド位置対応モータ角よりも第１角度だけステアリング中立位置に近いエンド近傍舵角の絶対値を超えた場合に、該制御舵角の絶対値の増大に基づいて前記トルク指令値の絶対値を小さくするエンド当て緩和制御を行うものであって、前記制御舵角原点設定部は、前記左右のエンド位置対応モータ角が設定された後、前記モータ絶対角が該左右のエンド位置対応モータ角よりもステアリング中立位置側に前記第１角度以上、近づいてから該左右のエンド位置対応モータ角に基づいて前記原点を設定し、前記モータ制御部は、前記原点の設定後に前記エンド当て緩和制御を実行することが好ましい。
【００１６】
上記構成によれば、左右のエンド位置対応モータ角を設定した直後、すなわち転舵軸がまだエンド位置にある状態で制御舵角の原点を設定することで、エンド当て緩和制御が実行され、アクチュエータにより操舵反力が突然付与されることを防止できる。
【００１７】
上記操舵制御装置において、前記モータトルクがトルク指令値となるように前記モータの駆動を制御するモータ制御部を備え、前記モータ制御部は、前記制御舵角の絶対値が前記エンド位置対応モータ角よりも第１角度だけステアリング中立位置に近いエンド近傍舵角を超えた場合に、該制御舵角の絶対値の増大に基づいて前記トルク指令値の絶対値を小さくするエンド当て緩和制御を行うものであって、前記制御舵角の原点が未設定の状態において、前記エンド位置判定部により前記転舵軸が左右いずれか一方のエンド位置にあると判定された複数のタイミングでの前記モータ絶対角である複数の一方エンド位置対応モータ角に基づいて、該左右いずれか一方の暫定エンド位置対応舵角を設定する暫定エンド位置対応舵角設定部を備え、前記モータ制御部は、前記モータ絶対角の前記暫定エンド位置対応舵角までの角度が第２角度未満になった場合に、該角度の減少に基づいて前記トルク指令値の絶対値を小さくする暫定エンド当て緩和制御を行うことが好ましい。
【００１８】
例えば車両の走行状況等によっては、左右いずれか一方のみのエンド当てが繰り返し発生することが想定される。しかし、左右両方のエンド当てが発生しなければ、制御舵角の原点が設定されず、エンド当て緩和制御が実行されないため、エンド当ての衝撃が運転者に不快感を与えるおそれがある。また、例えば転舵輪が縁石等に当たることで、左右いずれか一方のエンド位置対応モータ角が設定された場合を考慮すると、一回のエンド当てで設定されたエンド位置対応モータ角のみでは、設定されたエンド位置対応モータ角が実際のエンド位置と正確に対応するものではない可能性がある。
【００１９】
この点、上記構成によれば、制御舵角の原点が設定されていない状態、例えば適切な左右両方のエンド位置対応モータ角が設定されていない状態や左右一方のみのエンド位置対応モータ角が設定されている状態でも、複数の左右いずれかの一方エンド位置対応モータ角に基づくことで、実際のエンド位置に対応する適切な暫定エンド位置対応舵角を設定できる。そして、暫定エンド位置対応舵角に基づいて暫定エンド当て緩和制御を行うことで、制御舵角の原点が設定されていない状態で、いずれか一方のみのエンド当てが繰り返される場合にも、該一方のエンド当ての衝撃を緩和できる。
【００２０】
上記操舵制御装置において、前記暫定エンド位置対応舵角設定部は、前記複数の一方エンド位置対応モータ角が設定された後、前記モータ絶対角が該暫定エンド位置対応舵角よりもステアリング中立位置側に前記第２角度以上、近づいてから該複数の一方エンド位置対応モータ角に基づいて前記暫定エンド位置対応舵角を設定し、前記モータ制御部は、前記暫定エンド位置対応舵角の設定後に前記暫定エンド当て緩和制御を実行することが好ましい。
【００２１】
上記構成によれば、複数の一方エンド位置対応モータ角を設定した直後、すなわち転舵軸がまだエンド位置にある状態で暫定エンド位置対応舵角を設定することで、暫定エンド当て緩和制御が実行され、アクチュエータにより操舵反力が突然付与されることを防止できる。
【００２２】
上記操舵制御装置において、前記暫定エンド位置対応舵角設定部は、前記複数の一方エンド位置対応モータ角の平均値を前記暫定エンド位置対応舵角として設定することが好ましい。
【００２３】
上記構成によれば、暫定エンド位置対応舵角を好適に設定できる。
上記操舵制御装置において、前記暫定エンド位置対応舵角設定部は、前記暫定エンド位置対応舵角の基礎となる前記複数の一方エンド位置対応モータ角として、前記複数の一方エンド位置対応モータ角の一と、該一を設定してから切り戻し操舵が行われたことを示す所定操舵量以上、前記モータ絶対角が変化した後に設定された前記複数の一方エンド位置対応モータ角の他の一とを用いることが好ましい。
【００２４】
上記構成によれば、一方エンド位置対応モータ角の他の一が、一方エンド位置対応モータ角の一を設定した後に切り戻し操舵が行われてから設定されるため、一方エンド位置対応モータ角の一を設定した状況から車両が移動した後に、他の一が設定される可能性が高くなる。これにより、例えば複数の一方エンド位置対応モータ角のいずれもが、転舵輪が縁石に当たった状態で設定され、これらに基づいて暫定エンド位置対応舵角が設定されることを抑制できる。
【００２５】
上記操舵制御装置において、前記暫定エンド位置対応舵角設定部は、前記複数の一方エンド位置対応モータ角の一と他の一との差分が所定差分以下である場合に、前記暫定エンド位置対応舵角を設定することが好ましい。
【００２６】
エンド位置は操舵装置毎に予め決まっているため、転舵軸がエンド位置にある状態で、複数の一方エンド位置対応モータ角が設定された場合には、これらの差分は小さな値となる。一方、転舵輪が縁石に当たった際のモータ絶対角は状況毎に異なるため、転舵輪が縁石に当たった状態で一方エンド位置対応モータ角が設定された場合には、これらの差分が大きくなる。したがって、上記構成のように、複数の一方エンド位置対応モータ角の一と他の一との差分が所定差分以下である場合に、暫定エンド位置対応舵角を設定することで、例えば複数の一方エンド位置対応モータ角の一が、転舵輪が縁石に当たった状態で設定された場合に、暫定エンド位置対応舵角が設定されることを抑制できる。
【００２７】
上記操舵制御装置において、前記エンド位置判定部は、前記モータの角速度が停止状態を示す所定角速度以下であり、かつ前記操舵機構に付与されるトルクが所定トルク以上である場合に前記転舵軸がエンド位置にあると判定することが好ましい。
【００２８】
上記構成によれば、転舵軸がエンド位置にあることを容易かつ正確に判断できる。
【発明の効果】
【００２９】
本発明によれば、実際の舵角に対応した正確なモータ絶対角を取得できる。
【図面の簡単な説明】
【００３０】
【図１】電動パワーステアリング装置の概略構成図。
【図２】第１実施形態の操舵制御装置のブロック図。
【図３】エンド当て緩和制御の電流補正値と制御舵角との関係を示すマップ。
【図４】第１実施形態の制御舵角演算部の処理手順を示すフローチャート。
【図５】第１実施形態の制御舵角演算部のブロック図。
【図６】操舵機構の機械的な弾性変形とモータ絶対角との関係を示す模式図。
【図７】エンド位置対応モータ角の設定の処理手順を示すフローチャート。
【図８】制御舵角原点の設定の処理手順を示すフローチャート。
【図９】第２実施形態の操舵制御装置のブロック図。
【図１０】第２実施形態の制御舵角演算部の処理手順を示すフローチャート。
【図１１】暫定エンド当て緩和制御の電流補正値と制御舵角との関係を示すマップ。
【図１２】第２実施形態の制御舵角演算部のブロック図。
【図１３】複数の一方エンド位置対応モータ角の設定の処理手順を示すフローチャート。
【図１４】暫定エンド位置対応舵角の設定の処理手順を示すフローチャート。
【図１５】第３実施形態の電流指令値演算部のブロック図。
【図１６】第４実施形態の電流指令値演算部のブロック図。
【発明を実施するための形態】
【００３１】
（第１実施形態）
以下、操舵制御装置の第１実施形態を図面に従って説明する。
図１に示すように、制御対象となる操舵装置としての電動パワーステアリング装置（ＥＰＳ）１は、運転者によるステアリングホイール２の操作に基づいて転舵輪３を転舵させる操舵機構４を備えている。また、ＥＰＳ１は、操舵機構４にステアリング操作を補助するためのアシスト力を付与するアクチュエータとしてのＥＰＳアクチュエータ５と、ＥＰＳアクチュエータ５の作動を制御する操舵制御装置６とを備えている。
【００３２】
操舵機構４は、ステアリングホイール２が固定されるステアリングシャフト１１と、ステアリングシャフト１１の回転に応じて軸方向に往復動する転舵軸としてのラック軸１２と、ラック軸１２が往復動可能に挿通される略円筒状のラックハウジング１３とを備えている。なお、ステアリングシャフト１１は、ステアリングホイール２側から順にコラム軸１４、中間軸１５、及びピニオン軸１６を連結することにより構成されている。
【００３３】
ラック軸１２とピニオン軸１６とは、ラックハウジング１３内に所定の交差角をもって配置されており、ラック軸１２に形成されたラック歯１２ａとピニオン軸１６に形成されたピニオン歯１６ａとが噛合されることでラックアンドピニオン機構１７が構成されている。また、ラック軸１２の両端には、その軸端部に設けられたボールジョイントからなるラックエンド１８を介してタイロッド１９がそれぞれ回動自在に連結されている。タイロッド１９の先端は、転舵輪３が組付けられた図示しないナックルに連結されている。したがって、ＥＰＳ１では、ステアリング操作に伴うステアリングシャフト１１の回転がラックアンドピニオン機構１７によりラック軸１２の軸方向移動に変換され、この軸方向移動がタイロッド１９を介してナックルに伝達されることにより、転舵輪３の転舵角、すなわち車両の進行方向が変更される。
【００３４】
なお、ラックエンド１８がラックハウジング１３の左端に当接する位置が右方向に最大限操舵可能な位置であり、同位置が右側のエンド位置としてのラックエンド位置に相当する。また、ラックエンド１８がラックハウジング１３の右端に当接する位置が左方向に最大限操舵可能な位置であり、同位置が左側のエンド位置としてのラックエンド位置に相当する。
【００３５】
ＥＰＳアクチュエータ５は、駆動源であるモータ２１と、モータ２１に連結されるとともにコラム軸１４に連結されたウォームアンドホイール等の減速機構２２とを備えている。そして、ＥＰＳアクチュエータ５は、モータ２１の回転を減速機構２２により減速してコラム軸１４に伝達することによって、モータトルクＴmをアシスト力として操舵機構４に付与する。なお、本実施形態のモータ２１には、三相のブラシレスモータが採用されている。
【００３６】
操舵制御装置６には、車両の車速Ｖを検出する車速センサ３１、及び運転者の操舵によりステアリングシャフト１１に付与された操舵トルクＴsを検出するトルクセンサ３２が接続されている。また、操舵制御装置６には、モータ２１の回転角θmcを３６０°の範囲内の相対角で検出するモータ相対角検出部としての回転センサ３３が接続されている。なお、操舵トルクＴs及び回転角θmcは、一方向（本実施形態では、右）に操舵した場合に正の値、他方向（本実施形態では、左）に操舵した場合に負の値として検出する。そして、操舵制御装置６は、これら各センサから入力される各状態量を示す信号及びモータ２１の状態量を示す信号に基づいて、モータ２１に駆動電力を供給することにより、ＥＰＳアクチュエータ５の作動、すなわち操舵機構４に付与するアシスト力を制御する。
【００３７】
図２に示すように、操舵制御装置６は、制御信号を出力するモータ制御部としてのマイコン４１と、制御信号に基づいてモータ２１に駆動電力を供給する駆動回路４２とを備えている。なお、本実施形態の駆動回路４２には、複数のスイッチング素子（例えば、ＦＥＴ等）を有する周知のＰＷＭインバータが採用されている。そして、マイコン４１の出力する制御信号は、各スイッチング素子のオンオフ状態を規定するものとなっている。これにより、制御信号に応答して各スイッチング素子がオンオフし、各相のモータコイルへの通電パターンが切り替わることにより、バッテリ４３の直流電力が三相の駆動電力に変換されてモータ２１へと出力される。なお、以下に示す各制御ブロックは、マイコン４１が実行するコンピュータプログラムにより実現されるものであり、所定のサンプリング周期（検出周期）で各状態量を検出し、所定の演算周期毎に以下の各制御ブロックに示される各演算処理が実行される。
【００３８】
マイコン４１には、上記車速Ｖ、操舵トルクＴs、モータ２１の回転角θmcが入力される。また、マイコン４１には、駆動回路４２と各相のモータコイルとの間の接続線４４に設けられた電流センサ４５により検出されるモータ２１の各相電流値Ｉが入力される。なお、図２では、説明の便宜上、各相の接続線及び各相の電流センサ４５をそれぞれ１つにまとめて図示している。そして、マイコン４１は、これら各状態量に基づいて制御信号を出力する。
【００３９】
詳しくは、マイコン４１は、モータ２１に対する電力供給の目標値、すなわち目標アシスト力に対応する電流指令値Ｉd*，Ｉq*を演算する電流指令値演算部５１と、電流指令値Ｉd*，Ｉq*に基づいて制御信号を出力する制御信号出力部５２とを備えている。また、マイコン４１は、モータ２１の回転角θmcに基づいて、ラック軸１２がステアリング中立位置にある状態での角度を原点（ゼロ度）として回転数を積算（カウント）することにより、３６０°を超える範囲の絶対角で示される制御舵角θsを演算する制御舵角演算部５３と、回転角θmcを微分することによりモータ２１の角速度ωmを演算する角速度演算部５４と、メモリ５５を備えている。なお、制御舵角θsは、モータ２１の回転角θmcと同様に、ステアリング中立位置から一方向の回転角である場合に正の値、他方向の回転角である場合に負の値とし、電流指令値は、一方向への操舵をアシストする場合に正の値、他方向への操舵をアシストする場合に負の値とする。
【００４０】
電流指令値Ｉd*，Ｉq*は、モータ２１に供給すべき電流の目標値であり、ｄ／ｑ座標系におけるｄ軸上の電流指令値及びｑ軸上の電流指令値をそれぞれ示す。このうち、ｑ軸電流指令値Ｉq*は、モータ２１の出力トルクの目標値であるトルク指令値に相当する。なお、本実施形態では、ｄ軸電流指令値Ｉd*は、ゼロに固定されている。
【００４１】
詳しくは、電流指令値演算部５１は、ｑ軸電流指令値Ｉq*の基礎成分である基本電流指令値Ｉas*を演算する基本アシスト演算部６１と、基本電流指令値Ｉas*に対する電流補正値Ｉra*を演算する電流補正値演算部６２とを備えている。基本アシスト演算部６１には、操舵トルクＴs及び車速Ｖが入力される。そして、基本アシスト演算部６１は、操舵トルクＴs及び車速Ｖに基づいて基本電流指令値Ｉas*を演算する。具体的には、基本アシスト演算部６１は、操舵トルクＴsの絶対値が大きいほど、また車速Ｖが遅いほど、より大きな値（絶対値）を有する基本電流指令値Ｉas*を演算する。このように演算された基本電流指令値Ｉas*は、減算器６３に入力される。
【００４２】
電流補正値演算部６２は、後述する制御舵角演算部５３から出力される制御舵角θsに基づいて電流補正値Ｉra*を演算する。なお、電流補正値演算部６２は、制御舵角演算部５３から制御舵角θsが出力されない場合には、電流補正値Ｉra*を演算しない、又は電流補正値Ｉra*としてゼロを出力する。電流補正値Ｉra*は、ステアリングシャフト１１に操舵反力が付与されるように、基本電流指令値Ｉas*を補正する補正成分であり、電流補正値Ｉra*を出力することで、エンド当ての衝撃を緩和するエンド当て緩和制御を実行する。電流補正値演算部６２は、例えば図３に示すようなマップを有しており、このマップに基づいて制御舵角θsから電流補正値Ｉra*を演算する。このマップでは、ラックエンド１８がラックハウジング１３に当接するラックエンド位置（エンド位置対応モータ角θma_le，θma_re）での制御舵角θsよりも絶対値が第１角度θ1だけ小さい角度を示すエンド近傍舵角θneが設定されている。第１角度θ1は、エンド近傍舵角θneがラックエンド位置から離間しすぎないような比較的小さな角度に設定されている。そして、電流補正値Ｉra*は、このマップに従って制御舵角θsの絶対値がエンド近傍舵角θneの絶対値よりも大きくなった場合に、制御舵角θsの絶対値が大きくなるほど、大きな操舵反力が付与されるように演算される。このように演算された電流補正値Ｉra*は、減算器６３に入力される。
【００４３】
減算器６３は、基本アシスト演算部６１で演算された基本電流指令値Ｉas*に、電流補正値演算部６２で演算された電流補正値Ｉra*を減算することによりｑ軸電流指令値Ｉq*を演算する。そして、減算器６３は、演算したｑ軸電流指令値Ｉq*を制御信号出力部５２に出力する。これにより、マイコン４１は、制御舵角θsの絶対値がエンド近傍舵角θneの絶対値を超えた場合に、該制御舵角θsの絶対値の増大に基づいてトルク指令値となるｑ軸電流指令値Ｉq*の絶対値を小さくするエンド当て緩和制御を行う。
【００４４】
制御信号出力部５２は、電流指令値Ｉd*，Ｉq*、各相電流値Ｉ、及びモータ２１の回転角θmcに基づいてｄ／ｑ座標系における電流フィードバック制御を実行することにより、制御信号を生成する。詳しくは、制御信号出力部５２は、回転角θmcに基づいて各相電流値Ｉをｄ／ｑ座標上に写像することにより、ｄ／ｑ座標系におけるモータ２１の実電流値であるｄ軸電流値及びｑ軸電流値を演算する。そして、制御信号出力部５２は、ｄ軸電流値をｄ軸電流指令値Ｉd*に追従させるべく、またｑ軸電流値をｑ軸電流指令値Ｉq*に追従させるべく、それぞれ電流フィードバック制御を行うことにより制御信号を生成する。この制御信号が駆動回路４２に出力されることによりモータ２１に制御信号に応じた駆動電力が供給される。これにより、モータ２１の出力トルクが、ｑ軸電流指令値Ｉq*に対応したトルク指令値に追従するようにモータ２１の駆動が制御される。
【００４５】
次に、制御舵角演算部５３による制御舵角θsの演算について説明する。
制御舵角演算部５３には、操舵トルクＴs、モータ２１の回転角θmc、角速度ωm及び各相電流値Ｉが入力され、制御舵角演算部５３は、これらの状態量に基づいて制御舵角θsを演算する。ここで、制御舵角θsは、ステアリング中立位置にある状態での角度を原点としてモータ２１の回転数を積算することにより、３６０°を超える範囲の絶対角で示されるモータ絶対角θmaであり、制御舵角演算部５３は、モータ２１の回転角θmcと原点から回転数をカウントすることにより制御舵角θs（モータ絶対角θma）を演算する。制御舵角θsの原点は、操舵機構４のステアリング中立位置と対応付けられてメモリ５５に記憶されている。ところで、例えばバッテリ４３の交換等によりマイコン４１への電力供給が遮断されると、モータ２１の回転を検出できなくなるため、舵角が変化した場合に対応関係を維持できず、操舵機構４の舵角と対応付けられた制御舵角θsの原点が消失してしまう。そこで、制御舵角演算部５３は、制御舵角θsの原点が設定されていない場合には該原点を設定する。
【００４６】
制御舵角θsの原点の設定に際して、制御舵角演算部５３は、先ずラック軸１２が左右のラックエンド位置にあるときのモータ絶対角θmaを左右のエンド位置対応モータ角θma_le，θma_reとして設定する。そして、左右のエンド位置対応モータ角θma_le，θma_reに基づいて制御舵角θsの原点を設定する。なお、制御舵角演算部５３は、原点が設定されている場合には、取得したモータ２１の回転角θmcと原点から回転数をカウントすることにより制御舵角θsを演算し、電流補正値演算部６２に出力する。
【００４７】
具体的には、図４のフローチャートに示すように、制御舵角演算部５３は、各種状態量を取得すると（ステップ１０１）、制御舵角θsの原点を設定すべきことを示す制御フラグがセットされているか否かを判定する（ステップ１０２）。なお、この制御フラグは、操舵制御装置６への電力供給が停止された後に、再び電力供給が開始されるとセットされるように予め設定されている。
【００４８】
そして、制御舵角演算部５３は、制御フラグがセットされていない場合には（ステップ１０２：ＮＯ）、制御舵角θsを演算し、電流補正値演算部６２に出力する（ステップ１０３）。一方、制御フラグがセットされている場合には（ステップ１０２：ＹＥＳ）、左右のエンド位置対応モータ角θma_le，θma_reの設定処理を行い（ステップ１０４）、次いで制御舵角θsの原点の設定処理を行う（ステップ１０５）。
【００４９】
次に、左右のエンド位置対応モータ角θma_le，θma_reの設定について説明する。
図５に示すように、制御舵角演算部５３は、モータ絶対角検出部としてのモータ絶対角演算部７１と、出力切り替え部７２と、エンド位置判定部７３と、エンド位置対応モータ角設定部７４と、制御舵角原点設定部７５とを備えている。
【００５０】
モータ絶対角演算部７１には、モータ２１の回転角θmc、操舵トルクＴs及び各相電流値Ｉが入力される。そして、モータ絶対角演算部７１は、モータ２１の回転角θmc及び原点からの回転数から演算される素モータ絶対角から、操舵機構４に生じている機械的な弾性変形を差し引いたモータ絶対角θmaを演算する。なお、本実施形態のモータ絶対角演算部７１は、制御舵角θsの原点がメモリ５５に設定されていない場合には、最初に操舵制御装置６に電力供給された際のラック位置を仮の原点として記憶し、同原点から回転数を積算することによりモータ絶対角θmaを演算する。
【００５１】
詳しくは、モータ絶対角演算部７１は、運転者に付与される操舵トルクＴsと電流センサ４５により検出される実電流値である相電流値Ｉに基づいて演算されるモータトルクＴmとの和、すなわち操舵機構４に付与されるトルクの合計値であるピニオン軸トルクＴpを演算する。そして、モータ絶対角演算部７１は、操舵機構４に付与されたピニオン軸トルクＴpにより生じる操舵機構４の機械的な弾性変形に基づいて補正したモータ絶対角θmaを演算する。
【００５２】
ここで、図６に示すように、通常、運転者によりステアリング操作が行われると、操舵機構４に付与されたピニオン軸トルクＴpに応じて転舵輪３が転舵し、モータ絶対角θmaが増加する。そして、実際のラックエンド位置に対応するモータ絶対角θmaを若干超えたところから、ピニオン軸トルクＴpが増加してもモータ絶対角θmaがほとんど増加しなくなる。これは、ラック軸１２がラックエンド位置にあるため、ピニオン軸トルクＴpが増加することで、操舵機構４を構成するステアリングシャフト１１の捻れやラック軸１２の圧縮等の機械的な弾性変形によってモータ２１が僅かに回転するのみとなるからである。また、ステアリング操作によりラック軸１２が往復動する状態においても、操舵機構４には、ピニオン軸トルクＴpに応じた弾性変形が生じており、演算されるモータ絶対角θmaは、実際のラック軸１２の位置に対応するモータ絶対角θmaよりも操舵方向にずれた値となる。そして、モータ絶対角θmaに対するピニオン軸トルクＴpの傾きは操舵機構４の弾性係数Ｋに比例することから、モータ２１の回転角θmcに原点からの回転数を積算しただけの素モータ絶対角を基点に、当該傾きに従ってピニオン軸トルクＴpがゼロとなる位置でのモータ絶対角θmaが、実際のラックエンド位置と略一致する。
【００５３】
このことを踏まえ、モータ絶対角演算部７１は、素モータ絶対角から操舵機構４の弾性係数Ｋにピニオン軸トルクＴpを乗算して得られる弾性変形に基づくモータ２１の回転（Ｋ×Ｔp）を減算した値をモータ絶対角θmaとして検出する。なお、本実施形態では、操舵機構４の弾性係数Ｋは、操舵機構４の実機モデルを用いた実験やシミュレーション等により予め求められている。
【００５４】
図５に示すように、このように演算されたモータ絶対角θmaは、出力切り替え部７２に出力される。出力切り替え部７２は、制御舵角θsの原点の設定前には、モータ絶対角θmaをエンド位置対応モータ角設定部７４及び制御舵角原点設定部７５に出力する。また、制御舵角θsの原点の設定後には、同原点からの回転数に基づくモータ絶対角θma、すなわち制御舵角θsを電流補正値演算部６２に出力する。
【００５５】
エンド位置判定部７３には、操舵トルクＴs、各相電流値Ｉ及び角速度ωmが入力される。そして、エンド位置判定部７３は、モータ２１の角速度ωmが所定角速度ωth以上であり、かつピニオン軸トルクＴpが所定トルクＴth以上である状態が所定時間以上継続する場合に、ラック軸１２が左右いずれかのラックエンド位置にあると判定し、その旨を示す判定信号Ｓをエンド位置対応モータ角設定部７４に出力する。なお、所定角速度ωthは、モータ２１が停止していることを示す値であり、信号ノイズの影響等を考慮してゼロより若干大きな値に設定されている。また、所定トルクＴthは、通常の路面において転舵輪３を転舵可能なトルクを示すゼロよりも大きな適宜の値に設定されている。
【００５６】
エンド位置対応モータ角設定部７４は、入力されるモータ絶対角θmaの符号に基づいて操舵方向を判定し、ラック軸１２が左側のラックエンド位置にあると判定されたときのモータ絶対角θmaを左側のエンド位置対応モータ角θma_leとして設定する。また、エンド位置対応モータ角設定部７４は、ラック軸１２が右側のラックエンド位置にあると判定されたときのモータ絶対角θmaを右側のエンド位置対応モータ角θma_reとして設定する。さらに、エンド位置対応モータ角設定部７４は、左右のエンド位置対応モータ角θma_le，θma_reを一旦設定した後も、エンド位置対応モータ角θma_le，θma_reと同一符号かつ絶対値が大きいモータ絶対角θmaが検出されると、このモータ絶対角θmaを新たなエンド位置対応モータ角θma_le，θma_reとして更新する。
【００５７】
次に、エンド位置対応モータ角θma_le，θma_reの設定手順について説明する。
図７のフローチャートに示すように、制御舵角演算部５３は、各種状態量を取得すると（ステップ２０１）、演算したモータ絶対角θmaの符号に基づいて左操舵であるか否かを判定する（ステップ２０２）。左操舵である場合には（ステップ２０２：ＹＥＳ）、モータ２１の角速度ωmの絶対値が所定角速度ωth以下であるか否かを判定する（ステップ２０３）。続いて、角速度ωmの絶対値が所定角速度ωth以下である場合には（ステップ２０３：ＹＥＳ）、ピニオン軸トルクＴpの絶対値が所定トルクＴth以上であるか否かを判定する（ステップ２０４）。そして、ピニオン軸トルクＴpが所定トルクＴth以上である場合には（ステップ２０４：ＹＥＳ）、左エンドカウンタＣlをインクリメントし（ステップ２０５：Ｃl＝Ｃl＋１）、左エンドカウンタＣlが所定カウンタＣth以上であるか否かを判定する（ステップ２０６）。一方、角速度ωmの絶対値が所定角速度ωthよりも大きい場合（ステップ２０３：ＮＯ）、及びピニオン軸トルクＴpの絶対値が所定トルクＴth未満である場合には（ステップ２０４：ＮＯ）、左エンドカウンタＣlをリセットする（ステップ２０７：Ｃl＝０）。
【００５８】
続いて、ラック軸１２が左側のラックエンド位置にある状態でさらに運転者が切り込んでいる等して左エンドカウンタＣlが所定カウンタＣth以上になった場合には（ステップ２０６：ＹＥＳ）、今回の演算周期で演算したモータ絶対角θmaの絶対値がメモリ５５に記憶されている左側のエンド位置対応モータ角θma_leの絶対値よりも大きいか否かを判定する（ステップ２０８）。なお、メモリ５５には、左右のエンド位置対応モータ角θma_le，θma_reの初期値としてゼロが設定されている。そして、モータ絶対角θmaの絶対値が左側のエンド位置対応モータ角θma_leの絶対値よりも大きい場合には（ステップ２０８：ＹＥＳ）、当該モータ絶対角θmaを左側のエンド位置対応モータ角θma_leとして設定し、左エンドカウンタＣlをリセットする（ステップ２０９）。一方、左エンドカウンタＣlが所定カウンタＣth未満の場合（ステップ２０６：ＮＯ）、及びモータ絶対角θmaの絶対値が左側のエンド位置対応モータ角θma_leの絶対値以下の場合には（ステップ２０８：ＮＯ）、左側のエンド位置対応モータ角θma_leを設定・更新しない。
【００５９】
制御舵角演算部５３は、左操舵でない場合には（ステップ２０２：ＮＯ）、右操舵であるか否かを判定する（ステップ２１０）。右操舵である場合には（ステップ２１０：ＹＥＳ）、ステップ２０３，２０４と同様にエンド位置判定を行う（ステップ２１１，２１２）。エンド位置判定が成立した場合には（ステップ２１１，２１２：ＹＥＳ）、右エンドカウンタＣrをインクリメントし（ステップ２１３：Ｃr＝Ｃr＋１）、右エンドカウンタＣrが所定カウンタＣth以上であるか否かを判定する（ステップ２１４）。一方、エンド位置判定が成立しない場合には（ステップ２１１，２１２：ＮＯ）、右エンドカウンタＣrをリセットする（ステップ２１５：Ｃr＝０）。
【００６０】
右エンドカウンタＣrが所定カウンタＣth以上になった場合には（ステップ２１４：ＹＥＳ）、今回の演算周期で演算したモータ絶対角θmaの絶対値がメモリ５５に記憶されている右側のエンド位置対応モータ角θma_reの絶対値よりも大きいか否かを判定する（ステップ２１６）。そして、モータ絶対角θmaの絶対値が左側のエンド位置対応モータ角θma_leの絶対値よりも大きい場合には（ステップ２１６：ＹＥＳ）、当該モータ絶対角θmaを右側のエンド位置対応モータ角θma_reとして設定し、右エンドカウンタＣrをリセットする（ステップ２１７）。一方、右エンドカウンタＣrが所定カウンタＣth未満の場合（ステップ２１４：ＮＯ）、及びモータ絶対角θmaの絶対値が右側のエンド位置対応モータ角θma_reの絶対値以下の場合には（ステップ２１６：ＮＯ）、右側のエンド位置対応モータ角θma_reを設定・更新しない。なお、右操舵でない場合には（ステップ２１０：ＮＯ）、ステップ２０３〜２０９及びステップ２１１〜２１７の処理を行わない。
【００６１】
次に、制御舵角θsの原点の設定について説明する。
制御舵角原点設定部７５は、エンド位置対応モータ角θma_le，θma_reが設定又は更新された後に、検出されるモータ絶対角θmaが設定又は更新したエンド位置対応モータ角θma_le，θma_reよりもステアリング中立位置側に第１角度θ1以上近づいてから、メモリ５５に記憶されているエンド位置対応モータ角θma_le，θma_reに基づいて制御舵角θsの原点を設定する。
【００６２】
詳しくは、図８に示すように、制御舵角原点設定部７５は、各種状態量を取得すると（ステップ３０１）、モータ絶対角θmaが左右のエンド位置対応モータ角θma_le，θma_reよりも第１角度θ1以上ステアリング中立位置に近いか否かを判定する。具体的には、モータ絶対角θmaがラックエンド位置から離れている原点設定許可範囲（−θne≦θma≦θne）にあるか否かを判定する（ステップ３０２）。モータ絶対角θmaが原点設定許可範囲内にある場合には（ステップ３０２：ＹＥＳ）、左右のエンド位置対応モータ角θma_le，θma_reの絶対値の和であるストローク幅Ｗmaを演算する（ステップ３０３）。そして、ストローク幅Ｗmaがラック軸１２の全ストローク範囲に対応したモータ絶対角範囲を示すストローク閾値Ｗthよりも大きいか否かを判定する（ステップ３０４）。なお、ストローク閾値Ｗthは、モータ絶対角範囲よりも若干小さな値に設定されている。また、モータ絶対角θmaが原点設定許可範囲内にない場合には（ステップ３０２：ＮＯ）、ステップ３０３〜３０７の処理を実行しない。
【００６３】
制御舵角原点設定部７５は、ストローク幅Ｗmaがストローク閾値Ｗthよりも大きい場合には（ステップ３０４：ＹＥＳ）、左右のエンド位置対応モータ角θma_le，θma_reの平均値をオフセット角Δθとして演算する（ステップ３０５）。そして、検出されるモータ絶対角θmaからオフセット角を減算した角度（θma−Δθ）を、制御舵角θsの原点として設定し（ステップ３０６）、制御舵角θsの原点を設定すべきことを示す制御フラグをリセットする（ステップ３０７）。なお、ストローク幅Ｗmaがストローク閾値Ｗth以下の場合には（ステップ３０４：ＮＯ）、ステップ３０５〜３０７の処理を実行しない。
【００６４】
以上記述したように、本実施形態によれば、以下の作用効果を奏することができる。
（１）ラック軸１２がラックエンド位置にあると判定されたときのモータ絶対角θmaを左右のエンド位置対応モータ角θma_le，θma_reとして設定するようにした。そのため、例えば直進状態であると判定されたときのモータ絶対角をステアリング中立位置に対応する原点とし、エンド位置対応モータ角を推定する場合に比べ、正確なエンド位置対応モータ角θma_le，θma_reを設定できる。
【００６５】
（２）モータ絶対角演算部７１は、モータ絶対角θmaを操舵機構４に付与されたピニオン軸トルクＴpにより生じる機械的な弾性変形に基づいて補正した角度で取得するようにしたため、より正確なエンド位置対応モータ角θma_le，θma_reを設定できる。
【００６６】
（３）操舵機構４を、コラム軸１４、中間軸１５及びピニオン軸１６を連結してなるステアリングシャフト１１の回転をラックアンドピニオン機構１７を介してラック軸１２の往復動に変換して伝達するものとして構成し、ＥＰＳアクチュエータ５はモータ２１のモータトルクＴmをコラム軸１４に付与するようにした。このように本実施形態では、モータトルクＴmがコラム軸１４、中間軸１５、ピニオン軸１６及びラック軸１２等を介して転舵輪３に伝達されるため、ラック軸１２の圧縮のみならず、例えば中間軸１５の捻れ等、付与されるトルクによって操舵機構４の弾性変形が大きくなりやすい。したがって、操舵機構４に生じている弾性変形に基づいて補正したモータ絶対角θmaをエンド位置対応モータ角θma_le，θma_reとして設定する効果は大である。
【００６７】
（４）本実施形態のようにエンド位置判定部７３がピニオン軸トルクＴp及びモータ２１の角速度ωmに基づいて判定を行う場合には、転舵輪３が縁石等に当たっていると、実際にはラック軸１２がラックエンド位置になくても、それより手前の位置で誤ってラックエンド位置にあると判定するおそれがある。その結果、エンド位置対応モータ角θma_le，θma_reも不正確な角度が設定されるおそれがある。この点、本実施形態では、一旦、エンド位置対応モータ角θma_le，θma_reが設定されても、エンド位置対応モータ角θma_le，θma_reと同一符号かつ絶対値が大きいモータ絶対角θmaが検出された場合に更新されるため、誤ったエンド位置対応モータ角θma_le，θma_reが設定されることを抑制できる。
【００６８】
（５）左右のエンド位置対応モータ角θma_le，θma_reの平均値をオフセット角Δθとし、モータ絶対角θmaからオフセット角Δθを減算した角度を制御舵角θsの原点として設定するようにしたため、容易にステアリング中立位置に対応する原点を設定できる。
【００６９】
（６）例えば転舵輪３が縁石等に当たることで、ラック軸１２がラックエンド位置にあると判定され、誤ったエンド位置対応モータ角θma_le，θma_reが設定された場合には、左右のエンド位置対応モータ角θma_le，θma_reの絶対値の和であるストローク幅Ｗmaがストローク閾値Ｗthよりも小さくなる。この点を踏まえ、ストローク幅Ｗmaがストローク閾値Ｗth未満である場合には原点を設定しないようにしたため、誤った制御舵角θsの原点を設定することを抑制できる。
【００７０】
（７）操舵制御装置６は、制御舵角θsの絶対値がエンド近傍舵角θneの絶対値を超えた場合に、制御舵角θsの絶対値の増大に基づいてトルク指令値であるｑ軸電流指令値Ｉq*の絶対値を小さくするエンド当て緩和制御を行う。そして、制御舵角θsの原点を設定する際において、左右のエンド位置対応モータ角θma_le，θma_reが設定された後、モータ絶対角θmaがエンド位置対応モータ角θma_le，θma_reよりもステアリング中立位置側に第１角度θ1以上近づいてから、該左右のエンド位置対応モータ角θma_le，θma_reに基づいて原点を設定するようにした。そのため、左右のエンド位置対応モータ角θma_le，θma_reを設定した直後、すなわちラック軸１２がまだラックエンド位置にある状態で制御舵角θsの原点を設定することで、エンド当て緩和制御が実行され、ＥＰＳアクチュエータ５により操舵反力が突然付与されることを防止できる。
【００７１】
（８）モータ２１の角速度ωmが停止状態を示す所定角速度ωth以下であり、かつ操舵機構４に付与されるピニオン軸トルクＴpが所定トルクＴth以上である場合にラック軸１２がラックエンド位置であると判定するようにしたため、ラック軸１２がラックエンド位置にあることを容易かつ正確に判断できる。
【００７２】
（第２実施形態）
次に、操舵制御装置の第２実施形態を図面に従って説明する。なお、説明の便宜上、同一の構成については上記第１実施形態と同一の符号を付してその説明を省略する。
【００７３】
図９に示すように、本実施形態の電流指令値演算部５１は、基本アシスト演算部６１及び電流補正値演算部６２に加え、暫定電流補正値演算部８１を備えている。また、制御舵角演算部５３は、上記第１実施形態と同様に制御舵角θsを演算することに加え、制御舵角θsの原点が未設定の状態で、左右いずれかのエンド当てが複数回行われた場合に、該エンド当てが行われた方向のラックエンド位置でのモータ絶対角θmaにより表される暫定エンド位置対応舵角θma_xeを設定する。そして、暫定エンド位置対応舵角θma_xeからモータ絶対角θmaを減算した値である暫定エンド離間角θsxを暫定電流補正値演算部８１に出力し、該暫定電流補正値演算部８１から暫定電流補正値Ｉrb*が出力されるようにする。なお、制御舵角演算部５３は、制御舵角θsの原点の設定後は、暫定エンド離間角θsxを演算せず、制御舵角θsのみを演算する。
【００７４】
具体的には、図１０のフローチャートに示すように、制御舵角演算部５３は、ステップ１０５の制御舵角原点設定処理が行われた後に、第１及び第２一方エンド位置対応モータ角θma_x1，ma_x2を設定する複数の一方エンド位置対応モータ角設定処理を行い（ステップ４０１）、暫定エンド位置対応舵角設定処理を行う（ステップ４０２）。そして、ステップ４０２で設定された暫定エンド位置対応舵角θma_xeに基づいて、暫定エンド離間角θsxを演算する（ステップ４０３）。なお、ステップ４０１〜４０３以外の処理は、上記第１実施形態と同様に行われる。
【００７５】
暫定電流補正値演算部８１は、制御舵角演算部５３から出力される暫定エンド離間角θsx及び角速度ωmに基づいて暫定電流補正値Ｉrb*を演算する。なお、暫定電流補正値演算部８１は、制御舵角演算部５３から暫定エンド離間角θsxが出力されない場合には、暫定電流補正値Ｉrb*を演算しない、又は暫定電流補正値Ｉrb*としてゼロを出力する。暫定電流補正値Ｉrb*は、ステアリングシャフト１１に操舵反力が付与されるように、基本電流指令値Ｉas*を補正する補正成分であり、暫定電流補正値Ｉrb*を減算器６３に出力することで、エンド当ての衝撃を緩和する暫定エンド当て緩和制御を実行する。
【００７６】
暫定電流補正値演算部８１は、例えば図１１に示すようなマップを有しており、このマップに基づいて暫定エンド離間角θsx及び角速度ωmから暫定電流補正値Ｉrb*を演算する。このマップでは、暫定エンド離間角θsxの絶対値がゼロに近いほど、また角速度ωmの絶対値が大きいほど、大きな暫定電流補正値Ｉrb*が演算されるように設定されており、暫定エンド離間角θsxの絶対値が第２角度θ2以上になると、暫定電流補正値Ｉrb*がゼロとなるように設定されている。第２角度θ2は、暫定エンド位置対応舵角θma_xeから該暫定エンド位置対応舵角θma_xeよりもステアリング中立位置に近い暫定エンド近傍舵角θnxeまでの角度であり、該暫定エンド近傍舵角θnxeが暫定エンド位置対応舵角θma_xeから離間しすぎないような比較的小さな角度に設定されている。なお、本実施形態の第２角度θ2の大きさは、第１角度θ1の大きさと等しく設定されている。つまり、電流指令値演算部５１は、モータ絶対角θmaの暫定エンド近傍舵角θnxeまでの角度が第２角度θ2未満になった場合に、暫定エンド当て緩和制御を行う。
【００７７】
減算器６３には、基本電流指令値Ｉas*に加え、制御舵角演算部５３が制御舵角θs及び暫定エンド離間角θsxのいずれを演算するかに応じて、電流補正値Ｉra*又は暫定電流補正値Ｉrb*が入力される。そして、減算器６３は、基本アシスト演算部６１で演算された基本電流指令値Ｉas*から、電流補正値Ｉra*又は暫定電流補正値Ｉrb*を減算することによりｑ軸電流指令値Ｉq*を演算する。これにより、マイコン４１は、制御舵角θsの絶対値がエンド近傍舵角θneの絶対値を超えた場合に、該制御舵角θsの絶対値の増大に基づいてトルク指令値となるｑ軸電流指令値Ｉq*の絶対値を小さくするエンド当て緩和制御、又は暫定エンド離間角θsxが第２角度θ2未満になった場合に、該暫定エンド離間角θsxの減少に基づいてトルク指令値となるｑ軸電流指令値Ｉq*の絶対値を小さくする暫定エンド当て緩和制御を実行する。
【００７８】
次に、暫定エンド位置対応舵角θma_xeの設定について説明する。
図１２に示すように、本実施形態の制御舵角演算部５３は、上記第１実施形態の各ブロックに加え、一方エンド位置対応モータ角設定部９１と、暫定エンド位置対応舵角設定部９２と、暫定エンド離間角演算部９３とを備えている。
【００７９】
一方エンド位置対応モータ角設定部９１には、判定信号Ｓ及びモータ絶対角θmaが入力される。一方エンド位置対応モータ角設定部９１は、メモリ５５に接続されている。そして、一方エンド位置対応モータ角設定部９１は、エンド位置対応モータ角設定部７４によりエンド位置対応モータ角θma_le，θma_reのいずれかがメモリ５５に設定されると、該エンド位置対応モータ角θma_le，θma_reのいずれかを一方エンド位置対応モータ角の一である第１一方エンド位置対応モータ角θma_x1として設定する。また、一方エンド位置対応モータ角設定部９１は、第１一方エンド位置対応モータ角θma_x1を設定してから切り戻し操舵が行われたことを示す所定操舵量θth以上、モータ絶対角θmaが変化した後に、ラック軸１２が同一方向のエンド位置にある旨の判定信号Ｓが入力されたときのモータ絶対角θmaを第２一方エンド位置対応モータ角θma_x2として設定する。なお、所定操舵量θthは、例えばストローク閾値Ｗthの半分程度、すなわちラックエンド位置からステアリング中立位置までの操舵量等に設定されており、回転センサ３３の検出誤差に比べて十分に大きな値に設定される。
【００８０】
具体的には、図１３のフローチャートに示すように、一方エンド位置対応モータ角設定部９１は、ステップ４０１の処理として、ステップ５０１〜ステップ５１４の処理を実行する。一方エンド位置対応モータ角設定部９１は、各種状態量を取得すると（ステップ５０１）、制御フラグがセットされているか否かを判定し（ステップ５０２）、制御フラグがセットされている場合には（ステップ５０２：ＹＥＳ）、暫定フラグがセットされているか否かを判定する（ステップ５０３）。暫定フラグは、暫定エンド位置対応舵角θma_xeの基礎となる第１及び第２一方エンド位置対応モータ角θma_x1，ma_x2がメモリ５５に設定されているか否かを示すフラグであり、操舵制御装置６への電力供給が再開された時点ではリセットされている。なお、制御フラグがセットされていない場合（ステップ５０２：ＮＯ）、及び暫定フラグがセットされている場合には（ステップ５０３：ＹＥＳ）、これ以降のステップ４０２の処理を実行しない。
【００８１】
続いて、一方エンド位置対応モータ角設定部９１は、暫定フラグがセットされていない場合には（ステップ５０３：ＮＯ）、第１一方エンド位置対応モータ角θma_x1が設定されているか否かを判定する（ステップ５０４）。第１一方エンド位置対応モータ角θma_x1が設定されていない場合には（ステップ５０４：ＮＯ）、上記ステップ１０４において設定された左右いずれかのエンド位置対応モータ角θma_le，θma_reが設定されているか否かを判定する（ステップ５０５）。そして、左右いずれかのエンド位置対応モータ角θma_le，θma_reが設定されている場合には（ステップ５０５：ＹＥＳ）、当該角度を第１一方エンド位置対応モータ角θma_x1として設定する（ステップ５０６）。なお、操舵制御装置６への電力供給が停止された後に、再び電力供給が開始されると、エンド位置対応モータ角θma_le，θma_reのいずれか一方が先にメモリ５５に設定される。そのため、第１一方エンド位置対応モータ角θma_x1が設定されていない状態で、エンド位置対応モータ角θma_le，θma_reの双方がメモリ５５に設定されている状態は発生しない。一方、第１一方エンド位置対応モータ角θma_x1が設定されている場合には（ステップ５０４：ＹＥＳ）、ステップ５０６の処理を実行せずに、ステップ５０７に移行する。また、左右いずれかのエンド位置対応モータ角θma_le，θma_reが設定されていない場合には（ステップ５０５：ＮＯ）、これ以降のステップ４０２の処理を実行しない。
【００８２】
続いて、一方エンド位置対応モータ角設定部９１は、ステップ５０７において、モータ絶対角θmaの符号に基づいて、操舵方向が第１一方エンド位置対応モータ角θma_x1のエンド方向と同一であるか否かを判定する。操舵方向が第１一方エンド位置対応モータ角θma_x1のエンド方向と同一である場合には（ステップ５０７：ＹＥＳ）、学習許可フラグがセットされているか否かを判定する（ステップ５０８）。学習許可フラグは、エンド位置判定部７３によりラック軸１２がラックエンド位置にあると判定されたときのモータ絶対角θmaを第２一方エンド位置対応モータ角θma_x2として設定してもよいか否かを示すフラグであり、操舵制御装置６への電力供給が再開された時点ではリセットされている。
【００８３】
一方エンド位置対応モータ角設定部９１は、学習許可フラグがセットされていない場合には（ステップ５０８：ＮＯ）、第１一方エンド位置対応モータ角θma_x1からモータ絶対角θmaを減算した値の絶対値が所定操舵量θthよりも大きいか否かを判定する（ステップ５０９）。該減算した値の絶対値が所定操舵量θthよりも大きい場合には（ステップ５０９：ＹＥＳ）、学習許可フラグをセットする（ステップ５１０）。なお、該減算した値の絶対値が所定操舵量θth以下の場合には（ステップ５０９：ＮＯ）、学習許可フラグをセットしない。
【００８４】
一方、学習許可フラグがセットされている場合には（ステップ５０８：ＹＥＳ）、ラック軸１２がラックエンド位置にある旨の判定信号Ｓが入力されたか否かを判定する（ステップ５１１）。そして、ラック軸１２がラックエンド位置にある旨の判定信号Ｓが入力された場合には（ステップ５１１：ＹＥＳ）、同演算周期でのモータ絶対角θmaを第２一方エンド位置対応モータ角θma_x2として設定し（ステップ５１２）、暫定フラグをセットし（ステップ５１３）、学習許可フラグをリセットする（ステップ５１４）。
【００８５】
図１２に示すように、暫定エンド位置対応舵角設定部９２は、メモリ５５に第１及び第２一方エンド位置対応モータ角θma_x1，θma_x2の両方が設定されている場合には、第１一方エンド位置対応モータ角θma_x1と第２一方エンド位置対応モータ角θma_x2との差分αを演算する。そして、暫定エンド位置対応舵角設定部９２は、差分αが所定差分αth以下である場合には、第１及び第２一方エンド位置対応モータ角θma_x1，ma_x2の平均値を暫定エンド位置対応舵角θma_xeとして演算する。なお、所定差分αthは、回転センサ３３の検出誤差や、トルクセンサ３２の検出誤差等に起因して生じる機械的な弾性変形に基づくモータ絶対角θmaの補正量のばらつき等を考慮して、ゼロよりもやや大きな値に設定されている。続いて、暫定エンド位置対応舵角設定部９２は、モータ絶対角θmaが演算した暫定エンド位置対応舵角θma_xeよりもステアリング中立位置側に第２角度θ2以上近づいている場合に、該暫定エンド位置対応舵角θma_xeをメモリ５５に設定する。
【００８６】
具体的には、図１４のフローチャートに示すように、暫定エンド位置対応舵角設定部９２は、ステップ４０２の処理として、ステップ６０１〜ステップ６１０の処理を実行する。暫定エンド位置対応舵角設定部９２は、各種状態量を取得すると（ステップ６０１）、暫定エンド位置対応舵角θma_xeが設定されているか否かを判定する（ステップ６０２）。暫定エンド位置対応舵角θma_xeが設定されている場合には（ステップ６０２：ＹＥＳ）、これ以降のステップ４０３の処理を実行しない。これに対し、暫定エンド位置対応舵角θma_xeが設定されていない場合には（ステップ６０２：ＮＯ）、第１及び第２一方エンド位置対応モータ角θma_x1，θma_x2がメモリ５５に設定されているか否かを判定する（ステップ６０３）。第１及び第２一方エンド位置対応モータ角θma_x1，θma_x2が設定されていない場合には（ステップ６０３：ＮＯ）、これ以降のステップ４０３の処理を実行しない。これに対し、第１及び第２一方エンド位置対応モータ角θma_x1，θma_x2が設定されている場合には（ステップ６０３：ＹＥＳ）、暫定エンド位置対応舵角θma_xeが演算済みであるか否かを判定する（ステップ６０４）。暫定エンド位置対応舵角θma_xeがまだ演算されていない場合には（ステップ６０４：ＮＯ）、第１一方エンド位置対応モータ角θma_x1と第２一方エンド位置対応モータ角θma_x2との差分αが所定差分αth以下であるか否かを判定する（ステップ６０５）。そして、差分αが所定差分αth以下である場合には（ステップ６０５：ＹＥＳ）、第１一方エンド位置対応モータ角θma_x1及び第２一方エンド位置対応モータ角θma_x2の平均値を暫定エンド位置対応舵角θma_xeとして演算し（ステップ６０６）、ステップ６０７に移行する。なお、暫定エンド位置対応舵角θma_xeが演算済みである場合には（ステップ６０４：ＹＥＳ）、ステップ６０５，６０６の処理を実行せずにステップ６０７に移行する。
【００８７】
続いて、暫定エンド位置対応舵角設定部９２は、ステップ６０７において、暫定エンド位置対応舵角θma_xeからモータ絶対角θmaを減算した値の絶対値が第２角度θ2以上であるか否か、すなわちモータ絶対角θmaが暫定エンド位置対応舵角θma_xeよりもステアリング中立位置側に第２角度θ2以上近づいたか否かを判定する。モータ絶対角θmaが暫定エンド位置対応舵角θma_xeよりもステアリング中立位置側に第２角度θ2以上近づいた場合には（ステップ６０７：ＹＥＳ）、演算した暫定エンド位置対応舵角θma_xeをメモリ５５に設定する（ステップ６０８）。一方、モータ絶対角θmaが暫定エンド位置対応舵角θma_xeよりもステアリング中立位置側に第２角度θ2以上近づいていない場合には（ステップ６０７：ＮＯ）、ステップ６０８の処理を実行しない。
【００８８】
また、暫定エンド位置対応舵角設定部９２は、差分αが所定差分αthよりも大きい場合には（ステップ６０５：ＮＯ）、第１及び第２一方エンド位置対応モータ角θma_x1，ma_x2のうちのいずれか大きい方を第１一方エンド位置対応モータ角θma_x1として更新し、他方を削除する（ステップ６０９）。そして、暫定フラグをリセットする（ステップ６１０）。
【００８９】
図１２に示すように、暫定エンド離間角演算部９３には、モータ絶対角θmaが入力される。そして、暫定エンド離間角演算部９３は、メモリ５５に暫定エンド位置対応舵角θma_xeが設定されている場合には、暫定エンド位置対応舵角θma_xeからモータ絶対角θmaを減算した値を暫定エンド離間角θsxとして暫定電流補正値演算部８１に出力する。これにより、暫定電流補正値演算部８１から暫定電流補正値Ｉrb*が出力され、暫定エンド当て緩和制御が実行される。なお、暫定エンド離間角演算部９３は、メモリ５５に暫定エンド位置対応舵角θma_xeが設定されていない場合、及び制御舵角θsの原点が設定されている場合には、暫定エンド離間角θsxを演算せず、暫定電流補正値演算部８１に出力しない。
【００９０】
次に、本実施形態の作用効果について記載する。なお、本実施形態では、上記第１実施形態の（１）〜（８）の作用効果に加えて以下の作用効果を有する。
（９）本実施形態の操舵制御装置６は、制御舵角θsの原点が未設定の状態において、第１及び第２一方エンド位置対応モータ角θma_x1，ma_x2に基づいて、暫定エンド位置対応舵角θma_xeを設定し、暫定エンド離間角θsxの減少に基づいてトルク指令値であるｑ軸電流指令値Ｉq*の絶対値を小さくする暫定エンド当て緩和制御を行うようにした。
【００９１】
ここで、例えば車両の走行状況等によっては、左右いずれか一方のみのエンド当てが繰り返し発生することが想定される。しかし、左右両方のエンド当てが発生しなければ、制御舵角θsの原点が設定されず、エンド当て緩和制御が実行されないため、エンド当ての衝撃が運転者に不快感を与えるおそれがある。また、例えば転舵輪３が縁石等に当たることで、左右いずれか一方のエンド位置対応モータ角θma_le，θma_reが設定された場合を考慮すると、一回のエンド当てで設定されたエンド位置対応モータ角のみでは、設定されたエンド位置対応モータ角が実際のエンド位置と正確に対応するものではない可能性がある。
【００９２】
この点、本実施形態では、制御舵角θsの原点が設定されていない状態、例えば適切な左右両方のエンド位置対応モータ角θma_le，θma_reが設定されていない状態や左右一方のみのエンド位置対応モータ角θma_le，θma_reが設定されている状態でも、第１及び第２一方エンド位置対応モータ角θma_x1，ma_x2に基づくことで、実際のラックエンド位置に対応する適切な暫定エンド位置対応舵角θma_xeを設定できる。そして、暫定エンド位置対応舵角θma_xeに基づいて暫定エンド当て緩和制御を行うことで、制御舵角θsの原点が設定されていない状態で、いずれか一方のみのエンド当てが繰り返される場合にも、該一方のエンド当ての衝撃を緩和できる。
【００９３】
（１０）暫定エンド位置対応舵角設定部９２は、暫定エンド位置対応舵角θma_xeを演算した後、モータ絶対角θmaが暫定エンド位置対応舵角θma_xeよりもステアリング中立位置側に第２角度θ2以上近づいてから暫定エンド位置対応舵角θma_xeを設定するようにした。そのため、第１及び第２一方エンド位置対応モータ角θma_x1，ma_x2を設定した直後、すなわちラック軸１２がまだエンド位置にある状態で暫定エンド位置対応舵角θma_xeを設定することで、暫定エンド当て緩和制御が実行され、ＥＰＳアクチュエータ５により操舵反力が突然付与されることを防止できる。
【００９４】
（１１）暫定エンド位置対応舵角設定部９２は、第１及び第２一方エンド位置対応モータ角θma_x1，ma_x2の平均値を暫定エンド位置対応舵角θma_xeとして設定するため、暫定エンド位置対応舵角θma_xeを好適に設定できる。
【００９５】
（１２）暫定エンド位置対応舵角設定部９２は、第１一方エンド位置対応モータ角θma_x1と、第１一方エンド位置対応モータ角θma_x1を設定してから所定操舵量θth以上、モータ絶対角θmaが変化した後に設定された第２一方エンド位置対応モータ角θma_x2とを用いて暫定エンド位置対応舵角θma_xeを設定するようにした。そのため、第２一方エンド位置対応モータ角θma_x2が、第１一方エンド位置対応モータ角θma_x1を設定した後に切り戻し操舵が行われてから設定されるため、第１一方エンド位置対応モータ角θma_x1を設定した状況から車両が移動した後に、第２一方エンド位置対応モータ角θma_x2が設定される可能性が高くなる。これにより、例えば第１及び第２一方エンド位置対応モータ角θma_x1，ma_x2のいずれもが、転舵輪３が縁石に当たった状態で設定され、これらに基づいて暫定エンド位置対応舵角θma_xeが設定されることを抑制できる。
【００９６】
（１３）暫定エンド位置対応舵角設定部９２は、第１一方エンド位置対応モータ角θma_x1と第２一方エンド位置対応モータ角θma_x2との差分αが所定差分αth以下である場合に、暫定エンド位置対応舵角θma_xeを設定するようにした。
【００９７】
ここで、ラックエンド位置はＥＰＳ１毎に予め決まっているため、ラック軸１２がラックエンド位置にある状態で、第１及び第２一方エンド位置対応モータ角θma_x1，ma_x2が設定された場合には、これらの差分αは小さな値となる。一方、転舵輪３が縁石に当たった際のモータ絶対角θmaは状況毎に異なるため、転舵輪３が縁石に当たった状態で第１及び第２一方エンド位置対応モータ角θma_x2が設定された場合には、これらの差分αが大きくなる。したがって、本実施形態のように、差分αが所定差分αth以下である場合に、暫定エンド位置対応舵角θma_xeを設定することで、例えば第１一方エンド位置対応モータ角θma_x1が、転舵輪３が縁石に当たった状態で設定された場合に、暫定エンド位置対応舵角θma_xeが設定されることを抑制できる。
【００９８】
（第３実施形態）
次に、操舵制御装置の第３実施形態を図面に従って説明する。なお、本実施形態と上記第１実施形態との主たる相違点は、上記第１実施形態では基本電流指令値Ｉas*から電流補正値Ｉra*を差し引くことによりエンド当て緩和制御を実行したのに対し、本実施形態では基本電流指令値Ｉas*にガード処理を施すことにより同制御を実行する点である。このため、説明の便宜上、同一の構成については上記第１実施形態と同一の符号を付してその説明を省略する。
【００９９】
図１５に示すように、本実施形態の電流指令値演算部５１は、基本アシスト演算部６１と、基本電流指令値Ｉas*を制御舵角θsに基づいて制限するガード処理部１０１と備えており、上記第１実施形態の電流補正値演算部６２は備えていない。
【０１００】
ガード処理部１０１には、基本アシスト演算部６１から出力される基本電流指令値Ｉas*及び制御舵角演算部５３（図２参照）から出力される制御舵角θsが入力される。ガード処理部１０１は、基本電流指令値Ｉas*の絶対値を電流制限値Ｉga以下に制限し、ｑ軸電流指令値Ｉq*として出力する。そして、ガード処理部１０１は、制御舵角θsの絶対値がエンド近傍舵角θneを超えた場合に、その増大に基づいて電流制限値Ｉgaの絶対値を減少させる。
【０１０１】
具体的には、ガード処理部１０１は、例えば図１５に示すようなマップを有しており、このマップに基づいて制御舵角θsに応じた電流制限値Ｉgaを演算する。このマップでは、電流制限値Ｉgaは、制御舵角θsの絶対値がエンド近傍舵角θneを超えるまでは、所定電流値Ｉmaxとされ、制御舵角θsの絶対値がエンド近傍舵角θneの絶対値よりも大きくなると、制御舵角θsの絶対値が大きくなるほど、電流制限値Ｉgaの絶対値が小さくなるように設定されている。なお、所定電流値Ｉmaxは、基本アシスト演算部６１で演算される基本電流指令値Ｉas*の最大値、すなわち基本電流指令値Ｉas*を制限しないような値に設定されている。
【０１０２】
そして、ガード処理部１０１は、制御舵角θsに応じた電流制限値Ｉgaを演算し、入力される基本電流指令値Ｉas*の絶対値が電流制限値Ｉga以下の場合には、基本電流指令値Ｉas*の値をそのままｑ軸電流指令値Ｉq*として出力する。一方、入力される基本電流指令値Ｉas*の絶対値が電流制限値Ｉgaよりも大きい場合には、基本電流指令値Ｉas*の値を電流制限値Ｉgaの値に制限してｑ軸電流指令値Ｉq*として出力する。なお、ガード処理部１０１は、制御舵角演算部５３から制御舵角θsが出力されない場合には、基本電流指令値Ｉas*の値をそのままｑ軸電流指令値Ｉq*として出力する。これにより、マイコン４１は、制御舵角θsの絶対値がエンド近傍舵角θneの絶対値を超えた場合に、該制御舵角θsの絶対値の増大に基づいてトルク指令値となるｑ軸電流指令値Ｉq*の絶対値を小さくするエンド当て緩和制御を実行する。
【０１０３】
以上、本実施形態では、上記第１実施形態の（１）〜（８）の作用効果と同様の作用効果を有する。
（第４実施形態）
次に、操舵制御装置の第４実施形態を図面に従って説明する。なお、本実施形態と上記第２実施形態との主たる相違点は、上記第２実施形態では基本電流指令値Ｉas*から暫定電流補正値Ｉrb*を差し引くことにより、暫定エンド当て緩和制御を実行したのに対し、本実施形態では基本電流指令値Ｉas*に暫定ガード処理を施すことにより同制御を実行する点である。このため、説明の便宜上、同一の構成については上記第２実施形態と同一の符号を付してその説明を省略する。
【０１０４】
図１６に示すように、本実施形態の電流指令値演算部５１は、基本アシスト演算部６１と、基本電流指令値Ｉas*を制御舵角θsに基づいて制限するガード処理部１１１と、ガード処理後の基本電流指令値Ｉas**を暫定エンド離間角θsxに基づいて制限する暫定ガード処理部１１２とを備えている。なお、上記第２実施形態の電流補正値演算部６２、及び暫定電流補正値演算部８１は備えていない。
【０１０５】
ガード処理部１１１は、上記第３実施形態のガード処理部１０１と同様に構成されており、制御舵角θsに基づいて基本電流指令値Ｉas*を制限する。暫定ガード処理部１１２には、ガード処理後の基本電流指令値Ｉas**、制御舵角演算部５３（図９参照）から出力される暫定エンド離間角θsx、及び角速度演算部５４（図９参照）から出力される角速度ωmが入力される。暫定ガード処理部１１２は、ガード処理後の基本電流指令値Ｉas**の絶対値を暫定電流制限値Ｉgb以下に制限し、ｑ軸電流指令値Ｉq*として出力する。そして、暫定ガード処理部１１２は、暫定エンド離間角θsxの絶対値が第２角度θ2未満になった場合に、その減少に基づいて暫定電流制限値Ｉgbの絶対値を減少させる。
【０１０６】
具体的には、暫定ガード処理部１１２は、例えば図１６に示すようなマップを有しており、このマップに基づいて暫定エンド離間角θsxに応じた暫定電流制限値Ｉgbを演算する。このマップでは、暫定電流制限値Ｉgbは、暫定エンド離間角θsxの絶対値がゼロに近いほど、電流制限値Ｉgaの絶対値が小さくなるように設定されている。また、暫定電流制限値Ｉgbは、暫定エンド離間角θsxの絶対値が第２角度θ2以上になると、暫定電流制限値Ｉgbが所定電流値Ｉmaxとなるように設定されている。さらに、暫定電流制限値Ｉgbは、角速度ωmの絶対値が小さいほど、暫定エンド離間角θsxの絶対値が第２角度θ2未満となった後に所定電流値Ｉmaxとなる範囲が長くなるように設定されている。
【０１０７】
そして、暫定ガード処理部１１２は、暫定エンド離間角θsxに応じた暫定電流制限値Ｉgbを演算し、入力されるガード処理後の基本電流指令値Ｉas**の絶対値が暫定電流制限値Ｉgb以下の場合には、該基本電流指令値Ｉas*の値をそのままｑ軸電流指令値Ｉq*として出力する。一方、入力されるガード処理後の基本電流指令値Ｉas**の絶対値が暫定電流制限値Ｉgbよりも大きい場合には、該基本電流指令値Ｉas*の値を暫定電流制限値Ｉgbの値に制限してｑ軸電流指令値Ｉq*として出力する。なお、暫定ガード処理部１１２は、制御舵角演算部５３から暫定エンド離間角θsxが出力されない場合には、ガード処理後の基本電流指令値Ｉas**の値をそのままｑ軸電流指令値Ｉq*として出力する。これにより、マイコン４１は、暫定エンド離間角θsxが第２角度θ2未満になった場合に、該暫定エンド離間角θsxの減少に基づいてトルク指令値となるｑ軸電流指令値Ｉq*の絶対値を小さくする暫定エンド当て緩和制御を実行する。
【０１０８】
以上、本実施形態では、上記第１実施形態の（１）〜（８）及び上記第２実施形態の（９）〜（１３）の作用効果と同様の作用効果を有する。
上記各実施形態は、以下のように変更して実施することができる。各実施形態及び以下の変形例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
【０１０９】
・上記第２及び第４実施形態において、第１角度θ1と第２角度θ2との大きさを互いに異なるように設定してもよい。
・上記第２実施形態では、暫定電流補正値演算部８１は、制御舵角演算部５３から出力される暫定エンド離間角θsxに基づいて暫定電流補正値Ｉrb*を演算した。しかし、これに限らず、例えば制御舵角演算部５３からモータ絶対角θmaが出力される構成とし、該モータ絶対角θmaの絶対値が暫定エンド近傍舵角θnxeの絶対値を超えた場合に、暫定電流補正値Ｉrb*を演算するようにしてもよい。また、制御舵角演算部５３からエンド位置対応モータ角θma_le，θma_reと制御舵角θsとの差分であるエンド離間角が電流補正値演算部６２に出力される構成とし、電流補正値演算部６２がエンド離間角に基づいて電流補正値Ｉra*を演算するようにしてもよい。なお、エンド離間角に基づいて電流補正値Ｉra*を演算する構成を上記第１実施形態にも適用可能であることは言うまでもない。
【０１１０】
・上記第２実施形態では、暫定電流補正値演算部８１は、角速度ωmが大きいほど、大きな暫定電流補正値Ｉrb*を演算したが、これに限らず、例えば角速度ωmに関係なく、暫定エンド離間角θsxのみに基づいて暫定電流補正値Ｉrb*を演算してもよい。また、電流補正値演算部６２について、角速度ωmが大きいほど、大きな電流補正値Ｉra*を演算するようにしてもよい。なお、角速度ωmに基づいて電流補正値Ｉra*を演算する構成を上記第１実施形態にも適用可能であることは言うまでもない。
【０１１１】
・上記第４実施形態では、暫定ガード処理部１１２は、角速度ωmの絶対値が小さいほど、暫定エンド離間角θsxの絶対値が第２角度θ2未満となった後に暫定電流制限値Ｉgbが所定電流値Ｉmaxとなる範囲が長くなるように設定した。しかし、これに限らず、例えば角速度ωmに関係なく、暫定エンド離間角θsxのみに基づいて暫定電流制限値Ｉgbを演算してもよい。また、ガード処理部１０１について、角速度ωmの絶対値が小さいほど、制御舵角θsの絶対値がエンド近傍舵角θneを超えた後に電流制限値Ｉgaが所定電流値Ｉmaxとなる範囲が長くなるように設定してもよい。なお、角速度ωmに基づいて電流制限値Ｉgaを演算する構成を上記第３実施形態にも適用可能であることは言うまでもない。
【０１１２】
・上記第３及び第４実施形態において、基本電流指令値Ｉas*に操舵感の向上等を目的とする補償量（例えばダンピング補償量）を適用してもよい。なお、この場合には、基本電流指令値Ｉas*に補償量を適用した後の指令値に対してガード処理又は暫定ガード処理を施すようにすればよい。
【０１１３】
・上記第２及び第４実施形態において、第１一方エンド位置対応モータ角θma_x1と第２一方エンド位置対応モータ角θma_x2との差分αが所定差分αthより大きい場合でも、これらに基づいて暫定エンド位置対応舵角θma_xeを設定してもよい。
【０１１４】
・上記第２及び第４実施形態では、第１及び第２一方エンド位置対応モータ角θma_x1，ma_x2の平均値を暫定エンド位置対応舵角θma_xeとして設定した。しかし、これに限らず、例えば第１一方エンド位置対応モータ角θma_x1をそのまま暫定エンド位置対応舵角θma_xeとして設定してもよく、暫定エンド位置対応舵角θma_xeを演算する方法は適宜変更可能である。
【０１１５】
・上記第２及び第４実施形態において、第２一方エンド位置対応モータ角θma_x2を、第１一方エンド位置対応モータ角θma_x1を設定してから切り戻し操舵が行われたことを示す所定操舵量θth以上、モータ絶対角θmaが変化する前に設定してもよい。
【０１１６】
・上記第２及び第４実施形態において、暫定エンド位置対応舵角θma_xeを演算すると同時に設定し、モータ絶対角θmaが暫定エンド位置対応舵角θma_xeよりもステアリング中立位置側に第２角度θ2以上近づく前に暫定エンド当て緩和制御を実行してもよい。
【０１１７】
・上記各実施形態では、制御舵角演算部５３は、制御舵角θsの原点を設定すべきことを示す制御フラグがセットされているか否かに基づいて、制御舵角θsの原点を設定したが、これに限らない。例えばユーザによる所定の操作をトリガとして制御舵角θsの原点を設置してもよく、その態様は適宜変更可能である。また、制御フラグについて、例えばイグニッションのオンオフが所定回数以上行われたときにセットされるようにしてもよく、その設定は適宜変更可能である。
【０１１８】
・上記各実施形態では、モータ２１の角速度ωm及びピニオン軸トルクＴpに基づいてラック軸１２がラックエンド位置にあるか否かのエンド位置判定を行ったが、これに限らず、例えばピニオン軸トルクＴpのみに基づいてエンド位置判定を行ってもよい。また、例えばモータ２１の角加速度を用いてエンド位置判定を行ってもよい。この場合、例えば角速度ωmに代えてモータ２１の角加速度を用いることができる。さらに、ラックエンド１８に接触センサを設け、同センサの信号に基づいてエンド位置判定を行ってもよく、その判定態様は適宜変更可能である。
【０１１９】
・上記各実施形態において、左右のエンド位置対応モータ角θma_le，θma_reが設定された直後にこれらに基づいて制御舵角θsの原点を設定してもよい。
・上記各実施形態では、ストローク幅Ｗmaがストローク閾値Ｗth未満であるか否かを判定したが、ストローク幅Ｗmaがストローク閾値Ｗth未満であるか否かを判定せずに、制御舵角θsの原点を設定してもよい。
【０１２０】
・上記各実施形態では、左右のエンド位置対応モータ角θma_le，θma_reの平均値をオフセット角Δθとし、モータ絶対角θmaからオフセット角Δθを減算した角度を制御舵角θsのステアリング中立位置に対応する原点として設定した。しかし、これに限らず、制御舵角θsのステアリング中立位置に対応する原点を演算する方法は適宜変更可能である。
【０１２１】
・上記各実施形態において、一旦、エンド位置対応モータ角θma_le，θma_reを設定した後は、それ以降にエンド位置対応モータ角θma_le，θma_reと同一符号かつ絶対値が大きいモータ絶対角θmaが検出されても、エンド位置対応モータ角θma_le，θma_reを更新しないようにしてもよい。
【０１２２】
・上記各実施形態では、素モータ絶対角から、操舵機構４の弾性係数Ｋにピニオン軸トルクＴpを乗算して得られる弾性変形に基づくモータ２１の回転（Ｋ×Ｔp）を減算した値をモータ絶対角θmaとして検出した。しかし、これに限らず、ピニオン軸トルクＴp以外の成分、例えばモータ２１の角加速度等を考慮して、弾性変形に基づくモータ２１の回転を推定し、この推定された回転を素モータ絶対角から減算することでモータ絶対角θmaとして検出してもよい。
【０１２３】
・上記各実施形態では、モータ絶対角演算部７１は、モータ絶対角θmaを操舵機構４に付与されたピニオン軸トルクＴpにより生じる機械的な弾性変形に基づいて補正した角度で取得するようにしたが、これに限らず、機械的な弾性変形に基づいて補正しなくてもよい。
【０１２４】
・上記各実施形態では、ステアリング中立位置を原点とするモータ絶対角θmaで示される制御舵角θsに基づいてエンド当て緩和制御を行うようにしたが、これに限らず、制御舵角θsの原点は、例えば左右いずれかのラックエンド位置でもよく、適宜変更可能である。
【０１２５】
・上記各実施形態では、制御舵角θsに基づいてエンド当て緩和制御を行ったが、これに限らず、例えばステアリングホイール２の切り戻し時に、円滑にステアリング中立位置に戻るようにアシストする制御等を制御舵角θsに基づいて行ってもよく、制御舵角θsに基づいて各種制御を行うことが可能である。
【０１２６】
・上記各実施形態では、操舵制御装置６は、ＥＰＳアクチュエータ５がコラム軸１４にモータトルクＴmを付与する形式のＥＰＳ１を制御対象としたが、これに限らず、例えばボール螺子ナットを介してラック軸１２にモータトルクＴmを付与する形式の操舵装置を制御対象としてもよい。また、ＥＰＳに限らず、運転者による操作される操舵部と、転舵輪を転舵させる転舵部とか機械的に分離されたステアバイワイヤ式の操舵装置を制御対象とし、転舵部に設けられる転舵アクチュエータのモータの回転角に基づいて制御舵角を演算してもよい。
【０１２７】
次に、上記各実施形態及び別例から把握できる技術的思想について、それらの効果とともに以下に追記する。
（イ）前記操舵機構は、コラム軸、中間軸及びピニオン軸を連結してなるステアリングシャフトの回転を、ラックアンドピニオン機構を介して前記転舵軸としてのラック軸の往復動に変換して伝達するものであり、前記アクチュエータは、前記コラム軸に前記モータのモータトルクを付与するものである操舵制御装置。上記構成では、モータトルクがコラム軸、中間軸、ピニオン軸及びラック軸等を介して転舵輪に伝達されるため、ラック軸の圧縮のみならず、例えば中間軸の捻れ等、付与されるトルクによって操舵機構の弾性変形が大きくなりやすい。したがって、操舵機構に生じている弾性変形に基づいて補正したモータ絶対角をエンド位置対応モータ角として設定する効果は大である。
【符号の説明】
【０１２８】
１…電動パワーステアリング装置（ＥＰＳ）、３…転舵輪、４…操舵機構、５…ＥＰＳアクチュエータ（アクチュエータ）、６…操舵制御装置、１１…ステアリングシャフト、１２…ラック軸、１３…ラックハウジング、１４…コラム軸、１５…中間軸、１６…ピニオン軸、１７…ラックアンドピニオン機構、１８…ラックエンド、２１…モータ、４３…バッテリ、５３…制御舵角演算部、５５…メモリ、６１…基本アシスト演算部、６２…電流補正値演算部、７１…モータ絶対角演算部、７３…エンド位置判定部、７４…エンド位置対応モータ角設定部、７５…制御舵角原点設定部、８１…暫定電流補正値演算部、９１…一方エンド位置対応モータ角設定部、９２…暫定エンド位置対応舵角設定部、９３…暫定エンド離間角演算部、１０１，１１１…ガード処理部、１１２…暫定ガード処理部、Δθ…オフセット角、θs…制御舵角、θsx…暫定エンド離間角、θth…所定操舵量、θ1…第１角度、θ2…第２角度、θma…モータ絶対角、θmc…回転角、θne…エンド近傍舵角、θnxe…暫定エンド近傍舵角、θma_le…左側のエンド位置対応モータ角、θma_re…右側のエンド位置対応モータ角、θma_x1…第１一方エンド位置対応モータ角、θma_x2…第２一方エンド位置対応モータ角、ωm…角速度、Tm…モータトルク、Ｔp…ピニオン軸トルク、Ｔs…操舵トルク、Ｔth…所定トルク、Ｉd*…ｄ軸電流指令値、Ｉq*…ｑ軸電流指令値、Ｉga…電流制限値、Ｉgb…暫定電流制限値、Ｉas*…基本電流指令値、Ｉra*…電流補正値、Ｉrb*…暫定電流補正値、Ｗma…ストローク幅、Ｗth…ストローク閾値、α…差分、αth…所定差分。
【図１】
2019104476.tif 000003
【図２】
2019104476.tif 000004
【図３】
2019104476.tif 000005
【図４】
2019104476.tif 000006
【図５】
2019104476.tif 000007
【図６】
2019104476.tif 000008
【図７】
2019104476.tif 000009
【図８】
2019104476.tif 000010
【図９】
2019104476.tif 000011
【図１０】
2019104476.tif 000012
【図１１】
2019104476.tif 000013
【図１２】
2019104476.tif 000014
【図１３】
2019104476.tif 000015
【図１４】
2019104476.tif 000016
【図１５】
2019104476.tif 000017
【図１６】
2019104476.tif 000018