(57)【要約】  イグニッションスイッチがオン状態となるとクラッチを開放状態に切り替え、イグニッションスイッチがオフ状態となるとクラッチを連結状態に切り替えるクラッチ状態切り替え部（６０）と、クラッチの連結状態への切り替え時に、操舵輪の操舵角に応じて算出したクラッチの回転角度である操舵側クラッチ角と転舵輪の転舵角に応じて算出したクラッチの回転角度である転舵側クラッチ角との位相差であるクラッチ位相角を算出するクラッチ位相角算出部（６２）と、クラッチの開放状態への切り替え時に、クラッチ位相角算出部（６２）が算出したクラッチ位相角及び操舵輪の操舵角に基づいて、転舵輪の転舵角を算出する転舵角算出部（６６）を備える。
2014049937.tif 000002
【特許請求の範囲】
【請求項１】
ステアリングホイールと転舵輪との間のトルク伝達経路を機械的に分離する開放状態と、前記トルク伝達経路を機械的に連結する連結状態と、を切り替えるクラッチを備え、前記クラッチを開放状態に切り替えた状態で前記ステアリングホイールの操舵角に応じた目標転舵角を算出し、当該算出した目標転舵角に応じて前記転舵輪を転舵制御する車両用操舵制御装置であって、
車両のイグニッションスイッチがオン状態となると前記クラッチを前記開放状態に切り替え、前記イグニッションスイッチがオフ状態となると前記クラッチを前記連結状態に切り替えるクラッチ状態切り替え部と、
前記クラッチの前記連結状態への切り替え時に、前記ステアリングホイールの絶対角に基づく操舵角に応じて算出した前記クラッチの回転角度である操舵側クラッチ角と、前記転舵輪の絶対角以外の角度に基づく転舵角に応じて算出した前記クラッチの回転角度である転舵側クラッチ角と、の位相差であるクラッチ位相角を算出するクラッチ位相角算出部と、
前記クラッチの前記開放状態への切り替え時に、前記クラッチ位相角算出部が算出したクラッチ位相角及び前記ステアリングホイールの操舵角に基づいて、前記転舵輪の転舵角を算出する転舵角算出部と、を備えることを特徴とする車両用操舵制御装置。
【請求項２】
前記転舵角算出部は、前記操舵側クラッチ角に前記クラッチ位相角を加算した回転角である加算済回転角に基づいて、前記転舵輪の転舵角を算出することを特徴とする請求項１に記載した車両用操舵制御装置。
【請求項３】
前記イグニッションスイッチがオフ状態となった時点の前記転舵輪の転舵角を記憶する転舵角記憶部を備え、
前記転舵角算出部は、前記イグニッションスイッチがオフ状態である間に前記ステアリングホイールの操舵角が変化しない場合、前記転舵角記憶部が記憶した転舵角を前記転舵輪の転舵角として算出することを特徴とする請求項１または請求項２に記載した車両用操舵制御装置。
【請求項４】
ステアリングホイールと操向輪とが機械的に分離され、前記ステアリングホイールの操舵状態に基づいて前記操向輪を転舵する転舵制御を行う車両用操舵制御装置であって、
前記ステアリングホイールの絶対角に基づく操舵角を検出する操舵角検出部と、
前記転舵制御の終了時の前記ステアリングホイールの操舵角とステアリングラックのラックギヤと噛合する歯車の回転角との偏差を記憶する偏差記憶部と、
前記操舵角検出部が検出した操舵角と前記偏差記憶部が記憶している前回の前記転舵制御の終了時の偏差との加算結果を前記歯車の回転角の推定値として算出する角度推定値算出部と、
前記操向輪を転舵駆動する転舵モータと、
前記転舵モータの絶対角以外の角度に基づく回転角に応じて周期的に変化する信号を出力するレゾルバと、
前記転舵制御の開始時に、前記レゾルバが出力した信号に基づいて前記歯車の回転角の換算値を算出する角度換算値算出部と、
前記転舵制御の開始時に、前記角度換算値算出部が算出した換算値と該換算値の上限値の整数倍値との加算結果または減算結果である候補値のうちから前記角度推定値算出部が算出した推定値に最も近い候補値を前記歯車の回転角の初期値として抽出する初期値抽出部と、
前記転舵制御の実行中に、前記レゾルバが出力した信号および前記初期値抽出部が抽出した初期値に基づいて前記歯車の回転角を算出する回転角算出部と、
前記転舵制御の実行中に、前記操舵角検出部が検出した操舵角および前記回転角算出部が算出した回転角に基づいて前記転舵モータを制御する転舵モータ制御部と、を備えたことを特徴とする車両用操舵制御装置。
【請求項５】
前記転舵制御の終了時に前記操舵角検出部が検出した操舵角を記憶する終了時操舵角記憶部と、
前記ステアリングホイールの操舵トルクを検出する操舵トルク検出部と、を備え、
前記初期値抽出部は、
前記転舵制御の開始時に、前記角度換算値算出部が算出した換算値と該換算値の上限値の整数倍値との加算結果または減算結果である候補値のうちに、前記角度推定値算出部が算出した推定値に最も近い候補値が２つ存在するか否かを判定する候補値判定部と、
前記候補値判定部が候補値が２つ存在すると判定した場合には、前記操舵角検出部が検出した操舵角の絶対値が前記終了時操舵角記憶部が記憶している操舵角の絶対値以上であり、且つ、前記操舵トルク検出部が検出した操舵トルクが操舵角の絶対値を増大させる方向のものである場合に、２つ存在する候補値のうち、絶対値が小さい候補値を前記歯車の回転角の初期値として抽出する抽出実行部と、を備えたことを特徴とする請求項４に記載した車両用操舵制御装置。
【請求項６】
前記ステアリングホイールの操舵トルクを検出する操舵トルク検出部を備え、
前記角度推定値算出部は、前記操舵角検出部が検出した操舵角と前記偏差記憶部が記憶している偏差との加算結果を算出し、算出した加算結果の絶対値が前記操舵トルク検出部が検出した操舵トルクの絶対値が大きくなるほど小さくなるように該加算結果を補正した補正結果を前記歯車の回転角の推定値とすることを特徴とする請求項４または請求項５に記載した車両用操舵制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操舵輪と転舵輪との間のトルク伝達経路を機械的に分離した状態で、転舵輪を、操舵輪の操作に応じた目標転舵角に転舵モータを介して転舵させる、車両用操舵制御装置に関する。
【背景技術】
【０００２】
従来から、操舵輪（ステアリングホイール）と転舵輪との間のトルク伝達経路を機械的に分離した状態で、転舵輪を、操舵輪の操作に応じた目標転舵角に転舵モータを介して転舵させる操舵制御装置がある。このような操舵制御装置は、一般的に、ステア・バイ・ワイヤ（ＳＢＷ：Ｓｔｅｅｒ  Ｂｙ  Ｗｉｒｅ、以降の説明では、「ＳＢＷ」と記載する場合がある）と呼称するシステム（ＳＢＷシステム）を形成する装置であり、例えば、特許文献１に記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０‐２１７９８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載されている技術も含め、従来のＳＢＷシステムでは、イグニッションスイッチがオフ状態となった時点で、操舵輪と転舵輪との間のトルク伝達経路が、クラッチにより機械的に連結される。そして、イグニッションスイッチがオン状態となると、トルク伝達経路がクラッチにより機械的に分離され、イグニッションスイッチがオフ状態となった時点で記憶した転舵輪の転舵角に応じて、ＳＢＷシステムの制御を開始する。【０００５】
したがって、イグニッションスイッチがオフ状態である間に操舵輪が操舵されると、転舵輪も連動して転舵される。このため、イグニッションスイッチがオフ状態となった時点で記憶した転舵輪の転舵角と、イグニッションスイッチがオン状態となった時点における、実際の転舵輪の転舵角が異なる状態が発生し、ＳＢＷシステムの適切な制御が困難となるという問題がある。
本発明は、上記のような問題点に着目してなされたもので、イグニッションスイッチがオフ状態である間に操舵輪が操舵された場合であっても、ＳＢＷシステムを適切に制御することが可能な車両用操舵制御装置を提供することを課題とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明の一態様は、クラッチの開放状態への切り替え時に、クラッチ位相角及びステアリングホイールの操舵角に基づいて、転舵輪の転舵角を算出する。ここで、クラッチ位相角は、クラッチの連結状態への切り替え時に、ステアリングホイールの操舵角に応じて算出したクラッチの回転角度である操舵側クラッチ角と、転舵輪の転舵角に応じて算出したクラッチの回転角度である転舵側クラッチ角との位相差である。
【発明の効果】
【０００７】
本発明の一態様によれば、イグニッションスイッチがオン状態となった時点で、操舵輪の操舵角と、操舵側クラッチ角と転舵側クラッチ角との位相差であるクラッチ位相角に基づいて、転舵輪の転舵角を算出する。
このため、イグニッションスイッチがオフ状態である間に操舵輪が操作されて、イグニッションスイッチがオフ状態となった時点で記憶した転舵角と実際の転舵角が異なる状態であっても、実際の転舵角を算出する精度を向上させることが可能となる。
【図面の簡単な説明】
【０００８】
【図１】本発明の第一実施形態の車両用操舵制御装置を備えた車両の概略構成を示す図である。
【図２】本発明の第一実施形態の操舵制御装置の概略構成を示すブロック図である。
【図３】ＳＢＷシステムのステアリング構造を示す図である。
【図４】指令演算部の構成を示すブロック図である。
【図５】指令演算部が行なう処理を示すフローチャートである。
【図６】起動時の処理を示すブロック図である。
【図７】終了時の処理を示すブロック図である。
【図８】本発明の第一実施形態の操舵制御装置を用いた車両の動作を示すタイムチャートである。
【図９】本発明の第二実施形態の操舵制御装置を適用した車両の全体構成図である。
【図１０】極対数が３のレゾルバの電気角と機械角との関係を表すグラフである。
【図１１】操舵制御装置の制御ブロック図である。
【図１２】ピニオン絶対角算出部の制御ブロック図である。
【図１３】実施条件判定処理を表すフローチャートである。
【図１４】各種診断結果と算出実施条件との関係を表すテーブルである。
【図１５】推定角算出処理を表すフローチャートである。
【図１６】候補角算出処理を表すフローチャートである。
【図１７】ピニオン角初期値算出処理を表すフローチャートである。
【図１８】ピニオン絶対角算出処理を表すフローチャートである。
【図１９】ピニオン角初期値算出処理を表すフローチャートである。
【図２０】ピニオン角初期値算出処理を表すフローチャートである。
【図２１】推定角算出処理を表すフローチャートである。
【図２２】トルクセンサ値Ｔと補正角θｔｒｑとの関係を表す図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について図面を参照しつつ説明する。
（第一実施形態）
以下、本発明の第一実施形態について、図面を参照しつつ説明する。
（構成）
図１は、本実施形態の車両用操舵制御装置１（以下、「操舵制御装置」と記載する場合がある）を備えた車両の概略構成を示す図である。また、図２は、本実施形態の操舵制御装置１の概略構成を示すブロック図である。
【００１０】
本実施形態の操舵制御装置１を備えた車両は、ＳＢＷシステムを適用した車両である。
ここで、ＳＢＷシステムでは、車両の運転者が操舵操作する操舵輪の操作に応じて転舵モータを駆動制御して、転舵輪を転舵する制御を行うことにより、車両の進行方向を変化させる。転舵モータの駆動制御は、操舵輪と転舵輪との間に介装するクラッチを、通常状態である開放状態に切り替えて、操舵輪（ステアリングホイール）と転舵輪との間のトルク伝達経路を機械的に分離した状態で行う。
そして、例えば、断線等、ＳＢＷシステムの一部に異常が発生した場合には、開放状態のクラッチを締結状態に切り替えて、トルク伝達経路を機械的に接続することにより、運転者が操舵輪に加える力を用いて、転舵輪の転舵を継続する。
【００１１】
図１及び図２中に示すように、本実施形態の操舵制御装置１は、転舵モータ２と、転舵モータ制御部４と、クラッチ６と、反力モータ８と、反力モータ制御部１０を備える。
転舵モータ２は、転舵モータ制御部４が出力する転舵モータ駆動電流に応じて駆動するモータであり、回転可能な転舵モータ出力軸１２を有する。また、転舵モータ２は、転舵モータ駆動電流に応じて駆動することにより、転舵輪を転舵させるための転舵トルクを出力する。
転舵モータ出力軸１２の先端側には、ピニオンギヤを用いて形成した転舵出力歯車１２ａを設けてある。
転舵出力歯車１２ａは、ステアリングラック１４に挿通させたラック軸１８の両端部間に設けたラックギヤ１８ａと噛合する。
【００１２】
また、転舵モータ２には、転舵モータ角度センサ１６を設ける。
転舵モータ角度センサ１６は、転舵モータ２の絶対角以外の角度、例えば、転舵モータ２の相対角に基づいて、転舵モータ２の回転角（転舵角）を検出する。そして、検出した回転角（以降の説明では、「転舵モータ回転角」と記載する場合がある）を含む情報信号を、転舵モータ制御部４を介して、反力モータ制御部１０へ出力する。
ステアリングラック１４は、円筒形状に形成してあり、転舵モータ出力軸１２の回転、すなわち、転舵出力歯車１２ａの回転に応じて車幅方向へ変位するラック軸１８を挿通させる。
【００１３】
また、ステアリングラック１４の内部には、ラック軸１８の外径面を全周から覆うストッパ部１４ａを二つ設ける。二つのストッパ部１４ａは、それぞれ、ステアリングラック１４の内部において、転舵出力歯車１２ａよりも車幅方向右側及び左側に設ける。なお、図１中では、二つのストッパ部１４ａのうち、転舵出力歯車１２ａよりも車幅方向右側に設けたストッパ部１４ａの図示を省略する。
【００１４】
ラック軸１８の、ステアリングラック１４に挿通させて内部に配置した部分のうち、ストッパ部１４ａよりも車幅方向右側及び左側の部分には、それぞれ、ストッパ部１４ａとラック軸１８の軸方向で対向する端当て部材１８ｂを設ける。なお、図１中では、二つの端当て部材１８ｂのうち、ストッパ部１４ａよりも車幅方向右側に設けた端当て部材１８ｂの図示を省略する。
ラック軸１８の両端は、それぞれ、タイロッド２０及びナックルアーム２２を介して、転舵輪２４に連結する。また、ラック軸１８とタイロッド２０との間には、タイヤ軸力センサ２６を設ける。
タイヤ軸力センサ２６は、ラック軸１８の軸方向（車幅方向）に作用する軸力を検出し、この検出した軸力（以降の説明では、「タイヤ軸力」と記載する場合がある）を含む情報信号を、反力モータ制御部１０へ出力する。
【００１５】
転舵輪２４は、車両の前輪（左右前輪）であり、転舵モータ出力軸１２の回転に応じてラック軸１８が車幅方向へ変位すると、タイロッド２０及びナックルアーム２２を介して転舵し、車両の進行方向を変化させる。なお、本実施形態では、転舵輪２４を、左右前輪で形成した場合を説明する。これに伴い、図１中では、左前輪で形成した転舵輪２４を、転舵輪２４Ｌと示し、右前輪で形成した転舵輪２４を、転舵輪２４Ｒと示す。
転舵モータ制御部４は、反力モータ制御部１０と、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やＦｌｅｘＲａｙシステム等の通信ライン２８を介して、情報信号の入出力を行う。なお、ＦｌｅｘＲａｙシステムとしては、例えば、車載通信ネットワークのシステムがある。
【００１６】
また、転舵モータ制御部４は、転舵位置サーボ制御部３０を有する。
転舵位置サーボ制御部３０は、転舵モータ２を駆動させるための転舵モータ駆動電流を演算し、この演算した転舵モータ駆動電流を、転舵モータ２へ出力する。
ここで、転舵モータ駆動電流は、上述した転舵トルクを制御して、操舵輪の操作に応じた目標転舵角を算出し、この算出した目標転舵角に応じて転舵モータ２を駆動制御するための電流である。
転舵モータ駆動電流の演算は、反力モータ制御部１０が出力する転舵モータ電流指令と、実際に転舵モータ２へ通電している電流（転舵モータ実電流）の指令値（以降の説明では、「転舵モータ電流指令Ｉｔ」と記載する場合がある）に基づいて行う。具体的には、転舵モータ電流指令Ｉｔを用いて転舵モータ電流指令を補正し、転舵モータ駆動電流を演算する。
【００１７】
また、転舵位置サーボ制御部３０は、転舵モータ電流指令Ｉｔを計測し、この計測した転舵モータ電流指令Ｉｔに基づいて、転舵モータ２の温度Ｔｔを推定する。そして、推定した転舵モータ２の温度Ｔｔを含む情報信号を、反力モータ制御部１０へ出力する。これは、電流の通電による抵抗発熱に起因するモータ類（転舵モータ２、反力モータ８）の過熱を推定するためである。
なお、転舵モータ電流指令Ｉｔは、例えば、転舵モータ２に基板温度センサ（図示せず）を内蔵し、この内蔵した基板温度センサを用いて計測する。
【００１８】
ここで、転舵モータ電流指令Ｉｔに基づいて転舵モータ２の温度Ｔｔを推定する方法としては、例えば、大電流域では、計測した実際の電流値を用いて転舵モータ電流指令Ｉｔを求める。具体的には、計測した実際の電流値と予め記憶している電流閾値とを比較し、計測した実際の電流値が電流閾値よりも大きい場合は、計測した実際の電流値を、転舵モータ電流指令Ｉｔとして採用する。
【００１９】
一方、小電流域では、転舵モータ２の回転数とトルクとの関係を定めたモータＮＴ特性を用い、転舵モータ２の回転数に基づいて、転舵モータ電流指令Ｉｔを推定する。具体的には、計測した実際の電流値を転舵モータ電流指令Ｉｔとして採用せず、モータＮＴ特性を用い、転舵モータ２の回転数に基づいて推定した電流値を、転舵モータ電流指令Ｉｔとして採用する。
そして、上記のように採用した転舵モータ電流指令Ｉｔを用いて、転舵モータ２の温度Ｔｔを推定する。
【００２０】
クラッチ６は、運転者が操作する操舵輪３２（ステアリングホイール）と転舵輪２４との間に介装し、反力モータ制御部１０が出力するクラッチ駆動電流に応じて、開放状態または締結状態を切り替える。なお、クラッチ６は、通常状態では、開放状態である。
ここで、クラッチ６の状態を開放状態に切り替えると、操舵輪３２と転舵輪２４との間のトルク伝達経路を機械的に分離させて、操舵輪３２の操舵操作が転舵輪２４へ伝達されない状態とする。一方、クラッチ６の状態を締結状態に切り替えると、操舵輪３２と転舵輪２４との間のトルク伝達経路を機械的に連結させて、操舵輪３２の操舵操作が転舵輪２４へ伝達される状態とする。
【００２１】
また、操舵輪３２とクラッチ６との間には、操舵角センサ３４と、操舵トルクセンサ３６と、反力モータ８と、反力モータ角度センサ３８を配置する。
操舵角センサ３４は、例えば、操舵輪３２を回転可能に支持するステアリングコラムに設ける。
また、操舵角センサ３４は、操舵輪３２の絶対角に基づいて、操舵輪３２の現在の回転角度（操舵操作量）である現在操舵角を検出する。そして、操舵角センサ３４は、検出した操舵輪３２の現在操舵角を含む情報信号を、反力モータ制御部１０へ出力する。なお、以降の説明では、現在操舵角を、「現在操舵角θ」と記載する場合がある。
【００２２】
ここで、近年の車両は、操舵輪３２の操舵角を検出可能なセンサを、標準的に備えている場合が多い。このため、本実施形態では、操舵角センサ３４として、車両に既存のセンサである、操舵輪３２の操舵角を検出可能なセンサを用いた場合について説明する。
操舵トルクセンサ３６は、操舵角センサ３４と同様、例えば、操舵輪３２を回転可能に支持するステアリングコラムに設ける。
また、操舵トルクセンサ３６は、運転者が操舵輪３２に加えているトルクである操舵トルクを検出する。そして、操舵トルクセンサ３６は、検出した操舵トルクを含む情報信号を、反力モータ制御部１０へ出力する。なお、以降の説明では、操舵トルクを、「トルクセンサ値Ｖｔｓ」と記載する場合がある。
なお、反力モータ８及び反力モータ角度センサ３８に関する説明は、後述する。
【００２３】
また、クラッチ６は、開放状態で互いに離間し、締結状態で互いに噛合する一対のクラッチ板４０を有する。なお、図１中及び以降の説明では、一対のクラッチ板４０のうち、操舵輪３２側に配置するクラッチ板４０を、「操舵輪側クラッチ板４０ａ」とし、転舵輪２４側に配置するクラッチ板４０を、「転舵輪側クラッチ板４０ｂ」とする。
操舵輪側クラッチ板４０ａは、操舵輪３２と共に回転するステアリングシャフト４２に取り付けてあり、ステアリングシャフト４２と共に回転する。
【００２４】
転舵輪側クラッチ板４０ｂは、ピニオン軸４４の一端に取り付けてあり、ピニオン軸４４と共に回転する。
ピニオン軸４４の他端は、ピニオン４６内に配置してある。ピニオン４６には、ラックギヤ１８ａと噛合するステアリングギヤ（図示せず）を内蔵する。
ステアリングギヤは、ピニオン軸４４と共に回転する。すなわち、ステアリングギヤは、ピニオン軸４４を介して、転舵輪側クラッチ板４０ｂと共に回転する。
【００２５】
反力モータ８は、反力モータ制御部１０が出力する反力モータ駆動電流に応じて駆動するモータであり、操舵輪３２と共に回転するステアリングシャフト４２を回転させて、操舵輪３２へ操舵反力を出力可能である。ここで、反力モータ８が操舵輪３２へ出力する操舵反力は、クラッチ６を開放状態に切り替えて、操舵輪３２と転舵輪２４との間のトルク伝達経路を機械的に分離させている状態で、転舵輪２４に作用しているタイヤ軸力や操舵輪３２の操舵状態に応じて演算する。これにより、操舵輪３２を操舵する運転者へ、適切な操舵反力を伝達する。すなわち、反力モータ８が操舵輪３２へ出力する操舵反力は、運転者が操舵輪３２を操舵する操作方向とは反対方向へ作用する反力である。
【００２６】
反力モータ角度センサ３８は、反力モータ８に設けるセンサである。
また、反力モータ角度センサ３８は、反力モータ８の回転角度（転舵角度）を検出し、この検出した回転角度（以降の説明では、「反力モータ回転角」と記載する場合がある）を含む情報信号を、反力モータ制御部１０へ出力する。
反力モータ制御部１０は、転舵モータ制御部４と、通信ライン２８を介して、情報信号の入出力を行う。これに加え、反力モータ制御部１０は、通信ライン２８を介して、車速センサ５０及びエンジンコントローラ５２が出力する情報信号の入力を受ける。
【００２７】
また、反力モータ制御部１０は、通信ライン２８を介して入力を受けた情報信号や、各種センサから入力を受けた情報信号に基づき、反力モータ８を駆動制御する。
車速センサ５０は、例えば、公知の車速センサであり、車両の車速を検出し、この検出した車速を含む情報信号を、反力モータ制御部１０へ出力する。
エンジンコントローラ５２（エンジンＥＣＵ）は、エンジン（図示せず）の状態（エンジン駆動、または、エンジン停止）を含む情報信号を、反力モータ制御部１０へ出力する。
【００２８】
また、反力モータ制御部１０は、指令演算部５４と、反力サーボ制御部５６と、クラッチ制御部５８を有する。
指令演算部５４は、車速センサ５０、操舵角センサ３４、エンジンコントローラ５２、操舵トルクセンサ３６、反力モータ角度センサ３８、タイヤ軸力センサ２６及び転舵モータ角度センサ１６が出力した情報信号の入力を受ける。
なお、指令演算部５４の詳細な構成についての説明は、後述する。
【００２９】
反力サーボ制御部５６は、反力モータ８を駆動させるための反力モータ駆動電流を反力モータ８へ出力する。
また、反力サーボ制御部５６は、実際に反力モータ８へ通電している電流（反力モータ実電流）の値（以降の説明では、「反力モータ電流値Ｉｈ」と記載する場合がある）を計測する。
ここで、反力モータ駆動電流の演算は、指令演算部５４が出力する反力モータ電流指令（後述）と、反力モータ電流値Ｉｈに基づいて行う。具体的には、反力モータ電流値Ｉｈを用いて反力モータ電流指令を補正し、反力モータ駆動電流を演算する。
【００３０】
また、反力サーボ制御部５６は、計測した反力モータ電流値Ｉｈに基づいて、反力モータ８の温度Ｔｈを推定する。なお、反力モータ８の温度Ｔｈの推定は、例えば、転舵位置サーボ制御部３０が行う転舵モータ２の温度Ｔｔの推定と、同様の手順で行う。
クラッチ制御部５８は、指令演算部５４が出力するクラッチ電流指令（後述）に基づいて、開放状態のクラッチ６を締結状態へ切り替えるために必要な電流を、クラッチ駆動電流として演算する。そして、演算したクラッチ駆動電流を、クラッチ６へ出力する。
【００３１】
次に、図１及び図２を参照しつつ、図３を用いて、詳細なステアリング構造について説明する。
図３は、ＳＢＷシステムのステアリング構造を示す図である。
操舵輪３２は、ステアリングシャフト４２の一端に連結してある。
ステアリングシャフト４２は、ステアリングコラム５によって回転自在に保持されている。
また、ステアリングシャフト４２の他端は、ユニバーサルジョイント７を介して中間シャフト９の一端に連結している。
ステアリングコラム５には、ステアリングシャフト４２に連結した反力モータ８を設けている。
【００３２】
反力モータ８は、転舵角に応じて転舵輪側からステアリングホイール方向へ伝達される路面反力に応じた反力トルクをステアリングシャフト４２へ付与する。これにより、クラッチ６が解放されているときであっても、運転者は、転舵状態に応じた路面反力を把握できる。
中間シャフト９の他端は、ユニバーサルジョイント１１を介してクラッチ入力軸１３の一端に連結してある。
クラッチ入力軸１３の他端は、クラッチ６を介してクラッチ出力軸１７の一端に同軸で対向しており、クラッチ６は、クラッチ入力軸１３とクラッチ出力軸１７との断続（締結及び遮断）を行う。
【００３３】
クラッチ出力軸１７の他端は、ユニバーサルジョイント１９を介して中間シャフト２１の一端に連結してある。
中間シャフト２１の他端は、ユニバーサルジョイント２３を介してピニオンシャフト２５の一端に連結してあり、ピニオンシャフト２５の他端は、ラック＆ピニオン式のステアリングギヤ２７に連結してある。なお、図示は省略するが、ステアリングギヤ２７の出力側となるラックの両端は、夫々、左右のタイロッドの一端に連結してあり、タイロッドの他端は、車輪に連結してある。
【００３４】
したがって、クラッチ６を締結した状態では、操舵操作子１を回転させると、ステアリングシャフト４２、中間シャフト９、クラッチ入力軸１３、クラッチ出力軸１７、及び中間シャフト２１を介して、ピニオン４６及びピニオンシャフト２５が回転する。ピニオンシャフト２５の回転運動は、ステアリングギヤ２７によってラックの進退運動となり、ラックの進退に応じてタイロッドを押したり引いたりすることで、車輪が転舵される。
【００３５】
ステアリングシャフト４２には、反力モータ８を連結してあり、クラッチ６を遮断した状態で、反力モータ８を駆動すると、ステアリングシャフト４２に反力トルクが付与される。したがって、車輪を転舵したときに路面から受ける反力を検出又は推定し、検出又は推定した反力に応じて反力モータ８を駆動制御することで、運転者のステアリング操作に対して操作反力が付与される。
【００３６】
通常は、クラッチ６を遮断した状態で、転舵モータ３１を駆動制御すると共に、反力モータ８を駆動制御することで、ステア・バイ・ワイヤを実行し、所望のステアリング特性や旋回挙動特性を実現し、且つ良好な操作フィーリングを実現する。一方、システムに異常が生じた場合には、ステア・バイ・ワイヤを中止し、フェールセーフとしてクラッチ６を締結状態に戻すことで、機械的なバックアップを確保する。
【００３７】
ステアリングコラム５は、チルトピボット４１を介して揺動可能な状態で車体に支持してある。車体横方向から見て、ステアリングシャフト４２及び中間シャフト９間のユニバーサルジョイント７の中心位置と、チルトピボット４１の中心位置とは相違させたレイアウトとしている。
中間シャフト９、及び中間シャフト２１は、夫々、軸方向に伸縮可能に構成してある。
クラッチ６は、ブラケット４３を介してダッシュパネル４５に固定してある。
【００３８】
（指令演算部５４の詳細な構成）
次に、図１から図３を参照しつつ、図４を用いて、指令演算部５４の詳細な構成について説明する。
図４は、指令演算部５４の構成を示すブロック図である。
図４中に示すように、指令演算部５４は、クラッチ状態切り替え部６０と、クラッチ位相角算出部６２と、転舵角記憶部６４と、転舵角算出部６６を備える。
クラッチ状態切り替え部６０は、エンジンコントローラ５２からエンジンの状態を含む情報信号の入力を受ける。
【００３９】
そして、クラッチ状態切り替え部６０は、エンジンの状態を含む情報信号が、エンジン駆動の状態を含む場合、車両のイグニッションスイッチがオン状態であると判定し、クラッチ６を開放状態に切り替えるためのクラッチ電流指令を生成する。そして、生成したクラッチ電流指令を含む情報信号を、クラッチ位相角算出部６２及びクラッチ制御部５８へ出力する。
【００４０】
また、クラッチ状態切り替え部６０は、エンジンの状態を含む情報信号が、エンジン停止の状態を含む場合、車両のイグニッションスイッチがオフ状態であると判定し、クラッチ６を連結状態に切り替えるためのクラッチ電流指令を生成する。そして、生成したクラッチ電流指令を含む情報信号を、クラッチ位相角算出部６２及びクラッチ制御部５８へ出力する。
クラッチ位相角算出部６２は、クラッチ状態切り替え部６０から、クラッチ電流指令を含む情報信号の入力をうける。これに加え、クラッチ位相角算出部６２は、操舵角センサ３４から、現在操舵角θを含む情報信号の入力を受ける。さらに、クラッチ位相角算出部６２は、転舵モータ角度センサ１６から、転舵モータ回転角を含む情報信号の入力を受ける。
【００４１】
そして、クラッチ位相角算出部６２は、クラッチ６の連結状態への切り替え時に、操舵側クラッチ角と転舵側クラッチ角との位相差であるクラッチ位相角を算出し、この算出したクラッチ位相角を含む情報信号を、転舵角算出部６６へ出力する。
ここで、操舵側クラッチ角は、操舵輪３２の操舵角に応じて算出したクラッチ６の回転角度であり、操舵輪側クラッチ板４０ａの、予め設定した中立位置からの回転角度である。また、転舵側クラッチ角は、転舵輪２４の転舵角に応じて算出したクラッチ６の回転角度であり、転舵輪側クラッチ板４０ｂの、予め設定した中立位置からの回転角度である。
【００４２】
転舵角記憶部６４は、クラッチ状態切り替え部６０から、クラッチ電流指令を含む情報信号の入力をうける。これに加え、転舵角記憶部６４は、転舵モータ角度センサ１６から、転舵モータ回転角を含む情報信号の入力を受ける。
そして、転舵角記憶部６４は、イグニッションスイッチがオフ状態となった時点の、転舵輪２４の転舵角を記憶する。
転舵角算出部６６は、クラッチ状態切り替え部６０から、クラッチ電流指令を含む情報信号の入力をうける。これに加え、転舵角算出部６６は、クラッチ位相角算出部６２から、クラッチ位相角を含む情報信号の入力を受ける。また、転舵角算出部６６は、転舵モータ角度センサ１６から、転舵モータ回転角を含む情報信号の入力を受ける。
【００４３】
そして、転舵角算出部６６は、クラッチ６の開放状態への切り替え時に、クラッチ位相角算出部６２が算出したクラッチ位相角及び操舵輪３２の操舵角に基づいて、転舵輪２４の転舵角を算出する。さらに、算出した転舵輪２４の転舵角を含む情報信号を、転舵位置サーボ制御部３０へ出力する。
なお、本実施形態では、一例として、転舵角算出部６６の構成を、加算済回転角に基づいて、転舵輪２４の転舵角を算出する構成とする。
ここで、加算済回転角は、上述した操舵側クラッチ角に、クラッチ位相角算出部６２が算出したクラッチ位相角を加算した回転角である。
【００４４】
また、本実施形態では、一例として、転舵角算出部６６の構成を、イグニッションスイッチがオフ状態である間に、操舵輪３２の操舵角が変化しない場合、転舵角記憶部６４が記憶した転舵角を、転舵輪２４の転舵角として算出する構成とする。なお、転舵角記憶部６４が記憶した転舵角は、イグニッションスイッチがオフ状態である間に、操舵輪３２の操舵角が変化しない場合に、転舵角記憶部６４から取得する。
【００４５】
（指令演算部５４が行なう処理）
次に、図１から図４を参照しつつ、図５から図７を用いて、指令演算部５４が行なう処理について説明する。
図５は、指令演算部５４が行なう処理を示すフローチャートである。なお、指令演算部５４は、予め設定した周期（例えば、５［ｍｓ］）で、以下に説明する処理を行う。
図５中に示すフローチャートでは、例えば、イグニッションスイッチがオフ状態からオン状態に切り替わると、指令演算部５４が処理を開始（ＳＴＡＲＴ）し、ステップＳ１０の処理を行う。
ステップＳ１０では、イグニッションスイッチがオフ状態である間に、操舵輪３２の操舵角が変化しているか否かを判定する処理（図中に示す「ＩＧＮ−ＯＦＦ間に操舵操作有り？」）を行う。
【００４６】
なお、ステップＳ１０における判定では、例えば、イグニッションスイッチがオフ状態となった時点における操舵角を操舵角センサ３４で検出しておき、さらに、イグニッションスイッチがオン状態となった時点における操舵角を操舵角センサ３４で検出する。そして、両者の偏差があれば、イグニッションスイッチがオフ状態である間に、操舵輪３２の操舵角が変化していると判定する。
ステップＳ１０において、イグニッションスイッチがオフ状態である間に、操舵輪３２の操舵角が変化している（図中に示す「Ｙｅｓ」）と判定した場合、指令演算部５４が行なう処理は、ステップＳ２０へ移行する。
【００４７】
一方、ステップＳ１０において、イグニッションスイッチがオフ状態である間に、操舵輪３２の操舵角が変化していない（図中に示す「Ｎｏ」）と判定した場合、指令演算部５４が行なう処理は、ステップＳ３０へ移行する。
ステップＳ２０では、後述する起動時の処理（図中に示す「起動時の処理」）を行い、ピニオン４６（ステアリングギヤ２７）の絶対角を算出する。ステップＳ２０で起動時の処理によりピニオン４６の絶対角を算出すると、指令演算部５４が行なう処理は、ステップＳ５０へ移行する。
【００４８】
ステップＳ３０では、現在の処理を行なう前（前回）に、イグニッションスイッチがオフ状態となった時点で、転舵モータ角度センサ１６により検出した転舵モータ２の回転角度を取得（図中に示す「前回終了時の転舵モータ回転角度を取得」）する。ステップＳ３０で転舵モータ２の回転角度を取得すると、指令演算部５４が行なう処理は、ステップＳ４０へ移行する。
ステップＳ４０では、以下に示す式（１）を用いて、ピニオン４６（ステアリングギヤ２７）の絶対角を算出（図中に示す「ピニオン絶対角を算出」）する。ステップＳ４０でピニオン４６の絶対角を算出すると、指令演算部５４が行なう処理は、ステップＳ５０へ移行する。
θｐｉｎ＝Ｍ２Ｐ（θｅ＋３６０＊Ｎｚ）  …  （１）
【００４９】
ここで、上式（１）では、ピニオン４６の絶対角を「θｐｉｎ」で示し、初期状態・中立状態における転舵角に対するピニオン４６の絶対角を示す係数を「Ｍ２Ｐ」で示す。これに加え、転舵モータ２の回転角度が０°（初期状態・中立状態）である場合の転舵モータ２の回転角度を「θｅ」で示す。さらに、ステップＳ３０で取得した転舵モータ２の回転角度を「Ｎｚ」で示す。
なお、上述した係数Ｍ２Ｐと、回転角度θｅは、予め設定して、指令演算部５４に記憶しておく。
【００５０】
ステップＳ５０では、ステップＳ２０またはステップＳ４０で算出したピニオン４６の絶対角を用いて、ＳＢＷシステムを制御する処理（図中に示す「ピニオン絶対角算出→ＳＢＷ制御」）を行なう。ステップＳ５０でＳＢＷシステムを制御する処理を行なうと、指令演算部５４が行なう処理は、ステップＳ６０へ移行する。
ステップＳ６０では、エンジンの状態を含む情報信号を参照し、エンジンの状態を含む情報信号がエンジン停止の状態を含む場合に、ＳＢＷシステムの制御を終了する処理（図中に示す「ＳＢＷ制御終了（ＩＧＮ−ＯＦＦ）」）を行う。ステップＳ６０でＳＢＷシステムの制御を終了する処理を行なうと、指令演算部５４が行なう処理は、ステップＳ７０へ移行する。
【００５１】
ステップＳ７０では、ステップＳ６０でイグニッションスイッチがオフ状態となった時点で、転舵角記憶部６４により、転舵モータ角度センサ１６により検出した転舵モータ２の回転角度を記憶（図中に示す「終了時の転舵モータ回転角度を記憶」）する。
これに加え、ステップＳ７０では、後述する終了時の処理（図中に示す「終了時の処理」）を行い、上述したクラッチ位相角を算出する。
ステップＳ７０で、転舵角記憶部６４によりイグニッションスイッチがオフ状態となった時点の転舵角を記憶するとともに、終了時の処理によりクラッチ位相角を算出すると、指令演算部５４が行なう処理は、ステップＳ１０へ復帰（ＲＥＴＵＲＮ）する。
【００５２】
（起動時の処理）
以下、図１から図５を参照しつつ、図６を用いて、上述したステップＳ２０で行なう起動時の処理について説明する。
図６は、起動時の処理を示すブロック図である。
図６中に示すように、起動時の処理では、まず、イグニッションスイッチがオン状態となった時点における操舵角（図中に示す「起動時の操舵角」）である、ユニバーサルジョイント７（図中に示す「ＪＯＩＮＴ１」）の入力側の操舵角θ１ｉｎを検出する。
そして、検出した操舵角をユニバーサルジョイント７の入力側の操舵角θ１ｉｎとしてマップＭＪ１に適合させ、ユニバーサルジョイント７の出力側の操舵角θ１ｏｕｔを算出する。
【００５３】
操舵角θ１ｏｕｔを算出した後、ユニバーサルジョイント１１（図中に示す「ＪＯＩＮＴ２）用のマップであるマップＭＪ２に、操舵角θ１ｏｕｔを、ユニバーサルジョイント１１の入力側の操舵角θ２ｉｎとして適合させる。これにより、ユニバーサルジョイント１１の出力側の操舵角θ２ｏｕｔを算出する。
操舵角θ２ｏｕｔを算出した後、ユニバーサルジョイント１９（図中に示す「ＪＯＩＮＴ３）用のマップであるマップＭＪ３に、操舵角θ２ｏｕｔを、ユニバーサルジョイント１９の入力側の操舵角θ３ｉｎとして適合させる。これにより、ユニバーサルジョイント１９の出力側の操舵角θ３ｏｕｔを算出する。
【００５４】
ここで、前回の処理において、クラッチ位相角Δθｃｌを算出・記憶している場合は、マップＭＪ３に対し、操舵角θ２ｏｕｔにクラッチ位相角Δθｃｌを加算した値を適合させた値を、操舵角θ３ｉｎとして用いる。すなわち、図６中に示すΔθｃｌは、前回の処理を終了した時点で記憶したクラッチ位相角（図中に示す「前回終了時に記憶したクラッチ位相角」）である。
【００５５】
操舵角θ３ｏｕｔを算出した後、ユニバーサルジョイント２３（図中に示す「ＪＯＩＮＴ４）用のマップであるマップＭＪ４に、操舵角θ３ｏｕｔを、ユニバーサルジョイント２３の入力側の操舵角θ４ｉｎとして適合させる。これにより、ユニバーサルジョイント２３の出力側の操舵角θ４ｏｕｔを算出し、この算出した操舵角θ４ｏｕｔを、ピニオン４６の絶対角（ピニオン絶対角）θｐｉｎとして算出し、起動時の処理を完了する。
【００５６】
以上説明したように、起動時の処理では、転舵角算出部６６が、操舵角θ２ｏｕｔを、操舵輪３２の操舵角に応じて算出したクラッチ６の回転角度（操舵輪側クラッチ板４０ａの回転角度）である操舵側クラッチ角として用いる。これに加え、操舵側クラッチ角（操舵角θ２ｏｕｔ）にクラッチ位相角Δθｃｌを加算した回転角である加算済回転角（θ２ｏｕｔ＋Δθｃｌ）に基づいて、転舵輪２４の転舵角を算出することとなる。
【００５７】
（終了時の処理）
以下、図１から図６を参照しつつ、図７を用いて、上述したステップＳ７０で行なう終了時の処理について説明する。
図７は、終了時の処理を示すブロック図である。
図７中に示すように、終了時の処理では、まず、イグニッションスイッチがオフ状態となった時点における操舵角（図中に示す「シャットダウン時の操舵角」）を検出する。
【００５８】
そして、検出した操舵角をユニバーサルジョイント７の入力側の操舵角θ１ｉｎとしてマップＭＪ１に適合させ、ユニバーサルジョイント７の出力側の操舵角θ１ｏｕｔを算出する。
操舵角θ１ｏｕｔを算出した後、マップＭＪ２に、操舵角θ１ｏｕｔを、ユニバーサルジョイント１１の入力側の操舵角θ２ｉｎとして適合させて、ユニバーサルジョイント１１の出力側の操舵角θ２ｏｕｔを算出する。
【００５９】
また、イグニッションスイッチがオフ状態となった時点における操舵角に基づいて、目標転舵角を算出（図中に示す「操舵角→目標転舵角」）する。
そして、イグニッションスイッチがオフ状態となった時点における操舵角に基づいて算出した目標転舵角を、マップＭＪ４に、ユニバーサルジョイント２３の入力側の操舵角θ４ｉｎとして適合させる。これにより、ユニバーサルジョイント２３の出力側の操舵角θ４ｏｕｔを算出する。
操舵角θ４ｏｕｔを算出した後、マップＭＪ３に、操舵角θ４ｏｕｔを、ユニバーサルジョイント１９の入力側の操舵角θ３ｉｎとして適合させて、ユニバーサルジョイント１９の出力側の操舵角θ３ｏｕｔを算出する。
【００６０】
次に、上記のように算出した操舵角θ２ｏｕｔを、操舵側クラッチ角θｃｌ＿ｕｐｐｅｒとして算出する。これに加え、上記のように算出した操舵角θ３ｏｕｔを、転舵側クラッチ角θｃｌ＿ｌｏｗｅｒとして算出する。そして、操舵側クラッチ角θｃｌ＿ｕｐｐｅｒと転舵側クラッチ角θｃｌ＿ｌｏｗｅｒとの位相差を、クラッチ位相角Δθｃｌとして算出し、終了時の処理を完了する。
【００６１】
（動作）
次に、図１から図７を参照しつつ、図８を用いて、本実施形態の操舵制御装置１を用いて行なう動作の一例を説明する。なお、図８は、本実施形態の操舵制御装置１を用いた車両の動作を示すタイムチャートである。
図８中に示すタイムチャートは、イグニッションスイッチがオフ状態であり、トルク伝達経路が機械的に連結している状態（図中に示す「シャットダウン中＝ＭａｎｕａｌＳｔｅｅｒ」）からスタートする。
【００６２】
そして、イグニッションスイッチがオフ状態であり、トルク伝達経路が機械的に連結している状態において、例えば、車両のドア（フロントドア）を開錠する時点ｔ１で、操舵制御装置１が起動（図中に示す「コントローラＷａｋｅＵｐ」）する。
なお、操舵制御装置１を起動させる動作は、上述したドアの開錠以外に、例えば、イグニッションスイッチを、オフ状態からＡＣＣ（アクセサリー電源）状態となる動作としてもよい。
【００６３】
操舵制御装置１を起動させると、イグニッションスイッチがオフ状態である間に、操舵輪３２の操舵角が変化しているか否かを判定する処理を行う（ステップＳ１０参照）。
時点ｔ１の後に、イグニッションスイッチがオン状態（図中に示す「ＩＧＮ  ＯＮ」）となった時点ｔ２で、連結状態のクラッチ６を開放状態に切り替えて、ＳＢＷシステムの制御を開始する。
ここで、時点ｔ２では、時点ｔ１において、イグニッションスイッチがオフ状態である間に、操舵輪３２の操舵角が変化していると判定すると、上述した起動時の処理（図中に示す「起動時の処理」）を行う（ステップＳ２０参照）。これにより、前回の処理で算出・記憶しているクラッチ位相角Δθｃｌと、マップＭＪ４を用いて算出した操舵角θ４ｏｕｔに基づいて、ピニオン４６の絶対角（ピニオン絶対角）θｐｉｎを算出する。
【００６４】
一方、時点ｔ２では、時点ｔ１において、イグニッションスイッチがオフ状態である間に、操舵輪３２の操舵角が変化していないと判定すると、上式（１）を用いてピニオン４６の絶対角を算出する（ステップＳ３０、ステップＳ４０参照）。
そして、時点ｔ２以降は、上記のように算出したピニオン４６の絶対角θｐｉｎを用いて、ＳＢＷシステムの制御を実施する（ステップＳ５０参照）。ここで、ＳＢＷシステムの制御とは、例えば、高速走行時には低速走行時よりも操舵角に対する転舵角の変化度合いを減少させる制御（可変ギヤ制御）等、車速に応じた転舵角の制御である。
【００６５】
ＳＢＷシステムの制御を実施している状態（図中に示す「ＳＢＷシステム制御中」）において、車両の停車・駐車時等に、イグニッションスイッチがオフ状態（図中に示す「ＩＧＮ  ＯＦＦ」）となった時点ｔ３で、開放状態のクラッチ６を連結状態に切り替える。これにより、ＳＢＷシステムの制御を終了する（ステップＳ６０参照）。また、時点ｔ３では、操舵制御装置１の状態を、起動時よりも消費電力の少ない待機状態とする（図中に示す「コントローラＳｌｅｅｐ」）する。
時点３から、イグニッションスイッチの操作等が行なわれない状態で、予め設定した時間が経過すると、この時点ｔ４において、操舵制御装置１を待機状態から停止状態（図中に示す「コントローラＳｈｕｔＤｏｗｎ」）とする。
【００６６】
また、時点ｔ４では、上述した終了時の処理（図中に示す「終了時の処理」）を行う（ステップＳ７０参照）。これにより、操舵側クラッチ角θｃｌ＿ｕｐｐｅｒと転舵側クラッチ角θｃｌ＿ｌｏｗｅｒとの位相差を、クラッチ位相角Δθｃｌとして算出・記憶する。
時点ｔ４において、操舵制御装置１を停止状態とした後は、例えば、車両のドアを開錠する等の動作により、操舵制御装置１が起動するまで、イグニッションスイッチがオフ状態である状態を維持する。すなわち、時点ｔ４から操舵制御装置１が起動するまでの間は、トルク伝達経路が機械的に連結している状態（図中に示す「シャットダウン中＝ＭａｎｕａｌＳｔｅｅｒ」）を維持する。
【００６７】
以上により、本実施形態の操舵制御装置１では、イグニッションスイッチがオフ状態である間に、操舵輪３２の操舵角が変化している場合であっても、以下に説明するように、上述した車速に応じた転舵角の制御を、適切に実施することが可能となる。
すなわち、上述した車速に応じた転舵角の制御を行なう際には、操舵角に対する転舵角の変化度合いが、車速に応じて異なる（操舵角：転舵角＝１：Ｘ  低速時には１＜Ｘ、高速時にはＸ＜１）。これに対し、イグニッションスイッチがオフ状態である間に、操舵輪３２の操舵角が変化している場合、クラッチ６が連結状態であるため、操舵角の変化度合いと転舵角の変化度合いは等しい（操舵角：転舵角＝１：１）。
【００６８】
したがって、例えば、車両の駐車時等の低速走行時においては、操舵角に対する転舵角の変化度合いを増加させて、転舵角の変化量が少なくても転舵角の変化量を増加させる。この場合、転舵角を中立位置から転舵した状態で、イグニッションスイッチがオフ状態となってクラッチ６を連結状態としている間に、操舵輪３２の操舵角が変化すると、イグニッションスイッチがオフ状態となった時点における転舵角と操舵角との関係が変化する。そして、転舵角と操舵角との関係が変化した状態を基準として、上述した車速に応じた転舵角の制御を行なうと、転舵角と操舵角との関係が変化したままでＳＢＷシステムを制御することとなり、ＳＢＷシステムの制御が不適切となる。
【００６９】
これに対し、本実施形態の操舵制御装置１では、クラッチ６の開放状態への切り替え時に、クラッチ位相角Δθｃｌ及び操舵輪３２の操舵角に基づいて、転舵輪２４の転舵角を算出するため、転舵角と操舵角との関係を適切に算出することが可能となる。これにより、イグニッションスイッチがオフ状態である間に、操舵輪３２の操舵角が変化している場合であっても、上述した車速に応じた転舵角の制御を、適切に実施することが可能となる。
【００７０】
（第一実施形態の効果）
本実施形態では、以下に記載する効果を奏することが可能となる。
（１）クラッチ位相角算出部６２が、クラッチの開放状態から連結状態への切り替え時に、操舵側クラッチ角θｃｌ＿ｕｐｐｅｒと転舵側クラッチ角θｃｌ＿ｌｏｗｅｒとの位相差であるクラッチ位相角Δθｃｌを算出する。これに加え、転舵角算出部６６が、クラッチの連結状態から開放状態への切り替え時に、クラッチ位相角算出部が算出したクラッチ位相角Δθｃｌ及び操舵輪３２の操舵角に基づいて、転舵輪２４の転舵角を算出する。
【００７１】
このため、イグニッションスイッチがオフ状態である間に操舵輪３２が操作されて、イグニッションスイッチがオフ状態となった時点で記憶した転舵角と実際の転舵角が異なる状態であっても、ピニオン４６の絶対角の算出精度を向上させることが可能となる。
その結果、実際の転舵角を算出する精度を向上させることが可能となり、イグニッションスイッチがオフ状態である間に操舵輪３２が操舵された場合であっても、ＳＢＷシステムを適切に制御することが可能となる。
【００７２】
（２）転舵角算出部６６が、操舵側クラッチ角θｃｌ＿ｕｐｐｅｒにクラッチ位相角Δθｃｌを加算した回転角である加算済回転角に基づいて、転舵輪２４の転舵角を算出する。
このため、クラッチ６を連結状態としている状態では、ＳＢＷシステムの制御が終了した時点のクラッチ位相角Δθｃｌと、クラッチ６よりも操舵輪３２側で算出する操舵輪３２の操舵角に基づいて、転舵角を算出することとなる。
その結果、イグニッションスイッチがオフ状態となった時点で記憶した転舵角と実際の転舵角が異なる状態であっても、実際の転舵角を算出する精度を向上させることが可能となる。
【００７３】
（３）転舵角記憶部６４が、イグニッションスイッチがオフ状態となった時点の転舵輪２４の転舵角を記憶する。これに加え、転舵角算出部６６が、イグニッションスイッチがオフ状態である間に操舵輪３２の操舵角が変化しない場合、転舵角記憶部６４が記憶した転舵角を、転舵輪２４の転舵角として算出する。
その結果、イグニッションスイッチがオフ状態である間に操舵輪３２の操舵角が変化しない場合は、転舵輪２４の転舵角を算出する処理工程を減少させることが可能となる。
【００７４】
（第二実施形態）
次に、本発明の第二実施形態について、図面を参照しつつ説明する。
なお、上述した第一実施形態と同様の構成等については、同一の符号を使用する。
本実施形態は、本発明を、車両Ｃの車両用操舵制御装置１（以下、「操舵制御装置」と記載する場合がある）に適用したものである。
【００７５】
（全体構成）
まず、操舵制御装置１の構成を説明する。
図９は、操舵制御装置１を適用した車両Ｃの全体構成図である。
図９に示すように、車両Ｃは、前輪２４ＦＬ、２４ＦＲと後輪２４ＲＬ、２４ＲＲのうち、前輪２４ＦＬ、２４ＦＲを、転舵を行う転舵輪（操向輪）とする。操舵制御装置１は、操舵輪３２（ステアリングホイール）と前輪２４ＦＬ、２４ＦＲとが機械的に分離され、操舵輪３２の操舵状態に基づいて前輪２４ＦＬ、２４ＦＲを転舵する転舵制御を行うステア・バイ・ワイヤシステムである。また、操舵制御装置１は、操舵角に対する転舵角の比である舵角比を可変に制御する。
【００７６】
（操舵側機構１ａ）
操舵制御装置１は、操舵側機構１ａと、転舵機構１ｂと、バックアップ機構１ｃと、制御機構１ｄを備える。
操舵側機構１ａは、運転者が操舵を行う操舵輪３２と、操舵輪３２に連結したステアリングシャフト４２と、操舵輪３２の操舵角（絶対角）を検出する操舵角センサ３４を備える。操舵角は、操舵輪３２を右方向に回転させる方向を正方向とし、左方向に回転させる方向を負方向とする。
【００７７】
また、操舵側機構１ａは、操舵輪３２の操舵トルクを検出する操舵トルクセンサ３６を備える。操舵トルクは、操舵輪３２を右方向に回転させる方向を正方向とし、左方向に回転させる方向を負方向とする。さらに、操舵側機構１ａは、操舵輪３２にステアリングシャフト４２を介して接続され、ステアリングシャフト４２を経由して操舵輪３２に操舵反力を付与する反力モータ８を備える。また、操舵側機構１ａは、反力モータ８の回転角を検出する反力モータ角度センサ３８を備える。反力モータ角度センサ３８としては、例えば、反力モータ８の回転角に応じて周期的に変化するアナログ信号を出力するレゾルバがある。
【００７８】
（転舵機構１ｂ）
転舵機構１ｂは、前輪２４ＦＬ、２４ＦＲを転舵駆動する転舵モータ２と、転舵モータ２の回転角（相対角）を検出する転舵モータ角度センサ１６を備える。転舵モータ角度センサ１６としては、例えば、反力モータ角度センサ３８と同様に、転舵モータ２の回転角に応じて周期的に変化するアナログ信号を出力するレゾルバがある。
また、転舵機構１ｂは、転舵モータ２の転舵モータ出力軸１２の端部に接続した転舵出力歯車１２ａ（転舵モータ側ピニオン）と、転舵出力歯車１２ａと噛合するラックギヤ１８ａを備えるステアリングラック１４を備える。さらに、転舵機構１ｂは、ステアリングラック１４に入力された軸方向の力を前輪２４ＦＬ、２４ＦＲに転舵力として伝達するラック軸１８を備える。また、転舵機構１ｂは、ステアリングラック１４に入力された軸方向の力を路面から前輪２４ＦＬ、２４ＦＲに作用する転舵反力として検出するタイヤ軸力センサ２６を備える。
【００７９】
（レゾルバ）
ここで、転舵モータ角度センサ１６に用いるレゾルバについて説明する。
図１０は、極対数が３のレゾルバの電気角と機械角との関係を表すグラフである。
図１０に示すように、極対数が３のレゾルバは、電気角３６０ｄｅｇの範囲で機械角１２０ｄｅｇの範囲を検出することが可能となっている。ここで、図１０では、機械角０ｄｅｇのときに電気角０ｄｅｇを対応させているため、電気角０ｄｅｇ、１８０ｄｅｇ、３６０ｄｅｇは、レゾルバの検出値（アナログ信号）としては、それぞれ、０ｄｅｇ、６０ｄｅｇ、１２０ｄｅｇを示す。
【００８０】
また、極対数が３のレゾルバは、機械角１２０ｄｅｇの範囲を検出可能であるため、例えば、機械角が−７２０ｄｅｇ〜７２０ｄｅｇの範囲は、極対数が３のレゾルバでは、１２周期分となる。すなわち、極対数が３のレゾルバは、機械角−７２０ｄｅｇから−６００ｄｅｇが１周期、−６００ｄｅｇから−４８０ｄｅｇが２周期、−４８０ｄｅｇから−３６０ｄｅｇが３周期となる。さらに、極対数が３のレゾルバは、−３６０ｄｅｇから−２４０ｄｅｇが４周期、−２４０ｄｅｇから−１２０ｄｅｇが５周期、−１２０ｄｅｇから０ｄｅｇが６周期となる。また、極対数が３のレゾルバは、機械角０ｄｅｇから１２０ｄｅｇが７周期、１２０ｄｅｇから２４０ｄｅｇが８周期、２４０ｄｅｇから３６０ｄｅｇが９周期となる。さらに、極対数が３のレゾルバは、３６０ｄｅｇから４８０ｄｅｇが１０周期、４８０ｄｅｇから６００ｄｅｇが１１周期、６００ｄｅｇから７２０ｄｅｇが１２周期となる。このため、例えば、レゾルバの検出値（アナログ信号）が６０ｄｅｇのとき、機械角は、−６６０ｄｅｇ、−５４０ｄｅｇ、−４２０ｄｅｇ、−３００ｄｅｇ、−１８０ｄｅｇ、−６０ｄｅｇのいずれかであることが分かるだけである。同様に、例えば、レゾルバの検出値（アナログ信号）が６０ｄｅｇのとき、機械角は、６０ｄｅｇ、１８０ｄｅｇ、３００ｄｅｇ、４２０ｄｅｇ、５４０ｄｅｇ、６６０ｄｅｇのいずれかであることが分かるだけである。すなわち、極対数が３のレゾルバは、機械角１２０ｄｅｇの範囲で検出可能であるが、センサ値が、−６６０ｄｅｇ、−５４０ｄｅｇ、−４２０ｄｅｇ、−３００ｄｅｇ、−１８０ｄｅｇ、−６０ｄｅｇのいずれの角度であるかは検出できない。同様に、極対数が３のレゾルバは、機械角１２０ｄｅｇの範囲で検出可能であるが、センサ値が、６０ｄｅｇ、１８０ｄｅｇ、３００ｄｅｇ、４２０ｄｅｇ、５４０ｄｅｇ、６６０ｄｅｇのいずれの角度であるかは検出できない。以下では、レゾルバの検出値（アナログ信号）が表す０ｄｅｇ〜１２０ｄｅｇ未満の範囲内の機械角を相対角と呼ぶ。
【００８１】
（バックアップ機構１ｃ）
図９に戻り、バックアップ機構１ｃは、操舵輪３２と前輪２４ＦＬ、２４ＦＲとを機械的に締結・分離可能なクラッチ６と、クラッチ６を介して操舵輪３２の操舵トルクを伝達するピニオン軸４４を備える。また、バックアップ機構１ｃは、ピニオン軸４４の端部に接続するとともに、ステアリングラック１４のラックギヤ１８ａと噛合される歯車であるピニオン４６（ステアリング側ピニオン）を備える。
なお、ステアリングラック１４のラックギヤ１８ａと噛合される歯車としては、転舵モータ２の転舵モータ出力軸１２の端部に接続した転舵出力歯車１２ａ（転舵モータ側ピニオン）を用いてもよい。
【００８２】
（制御機構１ｄ）
制御機構１ｄは、車速を検出する車速センサ５０と、反力モータ８とクラッチ６を制御する反力モータ制御部１０と、転舵モータ２とクラッチ６を制御する転舵モータ制御部４を備える。なお、反力モータ制御部１０と転舵モータ制御部４とは、ＦｌｅｘＲａｙシステム等の通信ライン２８によって互いに通信可能に接続され、それぞれが入力した情報を共有可能な構成となっている。
反力モータ制御部１０は、反力モータ８の制御、クラッチ６の制御、転舵指令角（後述）の算出、操舵輪３２の操舵角（絶対角）の算出等を行っている。
【００８３】
具体的には、反力モータ制御部１０は、操舵角センサ３４が検出した操舵角（絶対角）と、反力モータ角度センサ３８が検出した反力モータ８の回転角と、タイヤ軸力センサ２６が検出した転舵反力とを取得する。また、反力モータ制御部１０は、車速センサ５０が検出した車速と、反力モータ８が検出した反力モータモニタ値とを取得する。反力モータモニタ値としては、例えば、反力モータ８の駆動電流や温度等がある。そして、反力モータ制御部１０は、タイヤ軸力センサ２６が検出した転舵反力に基づいて操舵輪３２へ付与する操舵反力（以下、操舵反力指令値とも呼ぶ）を算出する。続いて、反力モータ制御部１０は、算出した操舵反力指令値に基づいて反力モータ８を制御する。これにより、反力モータ制御部１０は、操舵輪３２の操舵反力を制御する。
【００８４】
また、反力モータ制御部１０は、イグニッションスイッチがオフ状態となった場合等、転舵制御を実行できなくなった場合には、操舵輪３２と前輪２４ＦＬ、２４ＦＲとを機械的に締結させる指令（以下、締結指令とも呼ぶ）をクラッチ６に出力する。また、反力モータ制御部１０は、イグニッションスイッチがオン状態となった場合等、転舵制御が開始された場合には、操舵輪３２と前輪２４ＦＬ、２４ＦＲとを機械的に分離させる指令（以下、開放指令とも呼ぶ）をクラッチ６に出力する。
【００８５】
さらに、反力モータ制御部１０は、操舵角センサ３４が検出した操舵角（絶対角）と、車速センサ５０が検出した車速とに基づいてピニオン４６へ付与する転舵角（以下、転舵指令角とも呼ぶ）を算出する。転舵指令角の算出方法としては、例えば、可変舵角比マップを参照して、車速Ｖに応じた舵角比を設定し、設定した舵角比と操舵角（絶対角）との乗算結果を転舵指令角とする方法がある。可変舵角比マップとしては、例えば、車速Ｖが０である場合に舵角比を最大値とし、車速Ｖが高くなるほど舵角比を低くするマップがある。続いて、反力モータ制御部１０は、算出した転舵指令角を転舵モータ制御部４に出力する。また、反力モータ制御部１０は、操舵角センサ３４が検出した操舵角（絶対角）と反力モータ角度センサ３８が検出した反力モータ８の回転角とに基づいて操舵輪３２の操舵角（絶対角）を算出する。続いて、反力モータ制御部１０は、算出した操舵角（絶対角）を転舵モータ制御部４に出力する。
転舵モータ制御部４は、転舵モータ２の制御、クラッチ６の制御、ピニオン４６の回転角の絶対角（以下、ピニオン絶対角とも呼ぶ）の算出等を行っている。
【００８６】
具体的には、転舵モータ制御部４は、操舵トルクセンサ３６が検出した操舵輪３２の操舵トルクと、転舵モータ２が検出した転舵モータモニタ値と、転舵モータ角度センサ１６が検出した転舵モータ２の回転角（以下、転舵モータ角とも呼ぶ）とを取得する。また、転舵モータ制御部４は、反力モータ制御部１０が算出した操舵角（絶対角）及び転舵指令角を取得する。転舵モータモニタ値としては、例えば、転舵モータ２の駆動電流や温度等がある。続いて、転舵モータ制御部４は、反力モータ制御部１０が算出した操舵角（絶対角）と、転舵モータ角度センサ１６が検出した転舵モータ角（相対角）とに基づいてピニオン絶対角を算出する。続いて、転舵モータ制御部４は、算出したピニオン絶対角と反力モータ制御部１０が算出した転舵指令角との偏差に応じた転舵モータ駆動電流を転舵モータ２に出力する。これにより、転舵モータ制御部４は、ピニオン絶対角、つまり、前輪２４ＦＬ、２４ＦＲの転舵角を制御する。
【００８７】
また、転舵モータ制御部４は、転舵モータモニタ値や、反力モータモニタ値が異常を表す値になった場合には、クラッチ６に締結指令を出力する。その際、転舵モータ制御部４は、操舵トルクセンサ３６が検出した操舵輪３２の操舵トルクに基づいて、運転者の操舵トルクを補助するように転舵モータ２を駆動制御する。
【００８８】
（制御ブロック）
次に、操舵制御装置１の制御ブロックを説明する。
図１１は、操舵制御装置１の制御ブロック図である。図１１では、反力モータ制御部１０については操舵輪３２の操舵角（絶対角）の算出、転舵モータ制御部４については転舵モータ２の制御、ピニオン絶対角の算出について記載している。
【００８９】
（反力モータ制御部１０）
反力モータ制御部１０は、操舵絶対角算出部６８と、ピニオン角指令値算出部７０と、反力側偏差記憶部７２と、を備える。
操舵絶対角算出部６８は、操舵角精度向上処理を実行する。操舵角精度向上処理では、操舵角センサ３４が検出した操舵角（絶対角）θｈａｂｓと、反力モータ角度センサ３８が検出した反力モータ８の回転角θｈｍｏｔとを取得する。そして、操舵角精度向上処理では、操舵絶対角算出部６８は、取得した操舵角（絶対角）θｈａｂｓと反力モータ８の回転角θｈｍｏｔとに基づいて、操舵角（絶対角）θｈを算出する。
【００９０】
なお、本実施形態では、操舵角センサ３４が検出した操舵角（絶対角）θｈａｂｓと、反力モータ角度センサ３８が検出した反力モータ８の回転角θｈｍｏｔとに基づいて操舵角（絶対角）θｈを算出する例を示したが、他の構成を採用することもできる。例えば、操舵角センサ３４が検出した操舵角（絶対角）θｈａｂｓの精度が十分に高い場合には、操舵角（絶対角）θｈａｂｓを、そのまま操舵角（絶対角）θｈとする構成としてもよい。
【００９１】
ピニオン角指令値算出部７０は、転舵指令角算出処理を実行する。転舵指令角算出処理では、ピニオン角指令値算出部７０は、車速センサ５０が検出した車速Ｖと、操舵絶対角算出部６８が算出した操舵角（絶対角）θｈとを取得する。そして、転舵指令角算出処理では、ピニオン角指令値算出部７０は、取得した車速Ｖと操舵角（絶対角）θhとに基づいて転舵指令角θｐｃｍｄを算出する。
【００９２】
反力側偏差記憶部７２は、転舵制御の終了時に、操舵絶対角算出部６８が算出した操舵角（絶対角）θｈとピニオン絶対角算出部７４が算出したピニオン絶対角θｐとの偏差（以下、ピニオン角−操舵角偏差とも呼ぶ）θｐｈを算出する。そして、反力側偏差記憶部７２は、算出したピニオン角−操舵角偏差θｐｈを、不揮発性メモリに記憶する。これにより、転舵側偏差記憶部７６は、イグニッションスイッチがオフ状態となり、反力側偏差記憶部７２への電源供給が停止しても、前回の転舵制御の終了時のピニオン角−操舵角偏差θｐｈを保持する。
【００９３】
（転舵モータ制御部４）
転舵モータ制御部４は、転舵側偏差記憶部７６と、ピニオン絶対角算出部７４と、転舵角制御部７８と、電流制御ドライバ８０と、バックアップモード切替部８２を備える。
転舵側偏差記憶部７６は、転舵制御の終了時に、操舵絶対角算出部６８が算出した操舵角（絶対角）θｈとピニオン絶対角算出部７４が算出したピニオン絶対角θｐとの偏差（ピニオン角−操舵角偏差）θｐｈを算出する。そして、転舵側偏差記憶部７６は、算出したピニオン角−操舵角偏差θｐｈを不揮発性メモリに記憶する。これにより、転舵側偏差記憶部７６は、イグニッションスイッチがオフ状態となり、転舵側偏差記憶部７６への電源供給が停止しても、前回の転舵制御の終了時のピニオン角−操舵角偏差θｐｈを保持する。
【００９４】
図１２は、ピニオン絶対角算出部７４の制御ブロック図である。
ピニオン絶対角算出部７４は、Ａ／Ｄ（Ａｎａｌｏｇ  ｔｏ  Ｄｉｇｉｔａｌ）変換回路、Ｄ／Ａ（Ｄｉｇｉｔａｌ  ｔｏ  Ａｎａｌｏｇ）変換回路等から構成した集積回路を備える。これに加え、ピニオン絶対角算出部７４は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）及びＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等から構成した集積回路を備える。ＲＯＭは、各種処理を実現する１または２以上のプログラムを記憶している。ＣＰＵは、ＲＯＭが記憶している１または２以上のプログラムに従って、各種処理（実施条件判定処理、推定角算出処理、候補角算出処理、ピニオン角初期値算出処理、ピニオン角−操舵角偏差記憶処理、ピニオン絶対角算出処理）を実行する。そして、ＣＰＵは、図１２に示すように、推定角算出処理を実行する推定角算出部７４ａと、候補角算出処理を実行する候補角算出部７４ｂと、ピニオン角初期値算出処理及びピニオン角−操舵角偏差記憶処理を実行するピニオン角初期値算出部７４ｃを実現する。さらに、ＣＰＵは、ピニオン絶対角算出処理を実行する絶対角算出実行部７４ｄを実現する。また、ＣＰＵは、各処理を実行することにより、操舵絶対角算出部６８が算出した操舵角（絶対角）θｈと、転舵モータ角度センサ１６が検出した転舵モータ角（相対角）θｍと、転舵側偏差記憶部７６が記憶しているピニオン角−操舵角偏差θｐｈとを取得する。そして、ＣＰＵは、取得した操舵角（絶対角）θｈと転舵モータ角（相対角）とピニオン角−操舵角偏差θｐｈとに基づいて、ピニオン絶対角θｐを算出する。推定角算出処理、候補角算出処理、ピニオン角初期値算出処理、ピニオン角−操舵角偏差記憶処理、及びピニオン絶対角算出処理の詳細な内容については後述する。
【００９５】
図１１に戻り、転舵角制御部７８は、ピニオン角指令値算出部７０が算出した転舵指令角θｐｃｍｄと、ピニオン絶対角算出部７４が算出したピニオン絶対角θｐとを取得する。そして、転舵角制御部７８は、取得した転舵指令角θｐｃｍｄとピニオン絶対角θｐとの偏差に応じた電流指令値Ｉｐｃｍｄを算出する。
電流制御ドライバ８０は、転舵角制御部７８が算出した電流指令値Ｉｐｃｍｄと転舵モータ２の転舵モータモニタ値である駆動実電流Ｉｐｒｅａｌとを取得する。そして、電流制御ドライバ８０は、取得した電流指令値Ｉｐｃｍｄに駆動実電流Ｉｐｒｅａｌが一致するように、転舵モータ２に供給する駆動電流Ｉｐｄｒｉを制御する。
【００９６】
バックアップモード切替部８２は、ピニオン絶対角算出部７４が算出したピニオン絶対角θpを取得する。そして、バックアップモード切替部８２は、ピニオン絶対角算出部７４からピニオン絶対角θｐを取得不可であった場合には、電流指令値Ｉｐｃｍｄの算出停止指令を転舵角制御部７８に出力し、クラッチ６に締結指令を出力する。
【００９７】
（実施条件判定処理）
次に、ピニオン絶対角算出部７４が実行する実施条件判定処理の詳細について説明する。実施条件判定処理は、イグニッションスイッチがオフ状態からオン状態となった場合、つまり、転舵制御が開始された場合に実行される割り込み処理である。
図１３は、実施条件判定処理を表すフローチャートである。
図１３に示すように、ステップＳ１０１では、ピニオン絶対角算出部７４は、イグニッションスイッチがオン状態であるか否かを判定する。そして、ピニオン絶対角算出部７４は、イグニッションスイッチがオン状態であると判定した場合には（Ｙｅｓ）ステップＳ１０２に移行する。一方、ピニオン絶対角算出部７４は、イグニッションスイッチがオフ状態であると判定した場合には（Ｎｏ）この判定を再度実行する。
【００９８】
続いてステップＳ１０２に移行して、ピニオン絶対角算出部７４は、操舵角センサ３４の診断が完了したか否かを診断する。操舵角センサ３４の診断としては、例えば、操舵角センサ３４が正常に動作する状態（以下、「正常」とも呼ぶ）であるか、正常に動作しない状態（以下、「異常」とも呼ぶ）であるかの診断がある。そして、ピニオン絶対角算出部７４は、操舵角センサ３４の診断が完了したと判定した場合には（Ｙｅｓ）ステップＳ１０３に移行する。一方、ピニオン絶対角算出部７４は、操舵角センサ３４の診断が完了していないと判定した場合には（Ｎｏ）この判定を再度実行する。これにより、ピニオン絶対角算出部７４は、操舵角センサ３４の診断が完了するまで、つまり、操舵角センサ３４について「正常」「異常」の診断結果が得られるまで待機状態となる。
【００９９】
前記ステップＳ１０３では、ピニオン絶対角算出部７４は、操舵角センサ３４の診断結果が「正常」であるか否かを判定する。そして、ピニオン絶対角算出部７４は、操舵角センサ３４の診断結果が「正常」であると判定した場合には（Ｙｅｓ）ステップＳ１０４に移行する。一方、ピニオン絶対角算出部７４は、操舵角センサ３４の診断結果が「異常」であると判定した場合には（Ｎｏ）ステップＳ１０７に移行する。
【０１００】
続いてステップＳ１０４に移行して、ピニオン絶対角算出部７４は、ＦｌｅｘＲａｙシステムの診断が完了したか否かを診断する。ＦｌｅｘＲａｙシステムの診断としては、例えば、ＦｌｅｘＲａｙシステムが正常に動作する状態（「正常」）であるか、正常に動作しない状態（「異常」）であるかの診断がある。そして、ピニオン絶対角算出部７４は、ＦｌｅｘＲａｙシステムの診断が完了したと判定した場合には（Ｙｅｓ）ステップＳ１０５に移行する。一方、ピニオン絶対角算出部７４は、ＦｌｅｘＲａｙシステムの診断が完了していないと判定した場合には（Ｎｏ）この判定を再度実行する。これにより、ピニオン絶対角算出部７４は、ＦｌｅｘＲａｙシステムの診断が完了するまで、つまり、ＦｌｅｘＲａｙシステムについて「正常」「異常」の診断結果が得られるまで待機状態となる。
【０１０１】
前記ステップＳ１０５では、ピニオン絶対角算出部７４は、ＦｌｅｘＲａｙシステムの診断結果が「正常」であるか否かを判定する。そして、ピニオン絶対角算出部７４は、ＦｌｅｘＲａｙシステムの診断結果が「正常」であると判定した場合には（Ｙｅｓ）ステップＳ１０６に移行する。一方、ピニオン絶対角算出部７４は、ＦｌｅｘＲａｙシステムの診断結果が「異常」であると判定した場合には（Ｎｏ）前記ステップＳ１０７に移行する。
【０１０２】
図１４は、各種診断結果と算出実施条件との関係を表すテーブルである。
前記ステップＳ１０６では、ピニオン絶対角算出部７４は、推定角算出処理、候補角算出処理、及びピニオン角算出処理の実施条件（以下、算出実施条件とも呼ぶ）を満たすと判定した後、この演算処理を終了する。これにより、ピニオン絶対角算出部７４は、図１４に示すように、操舵絶対角センサの診断結果及びＦｌｅｘＲａｙシステムの診断結果の両方が「正常」である場合に、算出実施条件を満たすと判定する。そして、ピニオン絶対角算出部７４は、推定角算出処理、候補角算出処理、及びピニオン角算出処理を実行する。
【０１０３】
一方、前記ステップＳ１０７では、ピニオン絶対角算出部７４は、算出実施条件を満たさないと判定した後、この演算処理を終了する。これにより、ピニオン絶対角算出部７４は、操舵絶対角センサの診断結果及びＦｌｅｘＲａｙシステムの診断結果の少なくとも一方が「異常」である場合に、算出実施条件を満たさないと判定する。そして、ピニオン絶対角算出部７４は、推定角算出処理、候補角算出処理、及びピニオン角算出処理を実行しない。この場合、ピニオン絶対角算出部７４は、ピニオン角初期値θｐｏ（後述）として０を出力し、ピニオン絶対角検出結果（後述）の診断結果として「異常」を出力する。
【０１０４】
（推定角算出処理）
次に、推定角算出部７４ａが実行する推定角算出処理の詳細について説明する。推定角算出処理は、算出実施条件が満たされた場合に実行される処理である。推定角算出処理では、推定角算出部７４ａは、イグニッションスイッチがオン状態となり、クラッチ６が開放された直後のピニオン絶対角θｐの推定値（以下、推定角θｅｓｔとも呼ぶ）を算出する。
【０１０５】
図１５は、推定角算出処理を表すフローチャートである。
図１５に示すように、ステップＳ２０１では、推定角算出部７４ａは、イグニッションスイッチがオン状態であるか否かを判定する。そして、推定角算出部７４ａは、イグニッションスイッチがオン状態であると判定した場合には（Ｙｅｓ）ステップＳ２０２に移行する。一方、推定角算出部７４ａは、イグニッションスイッチがオフ状態であると判定した場合には（Ｎｏ）この判定を再度実行する。
【０１０６】
前記ステップＳ２０２では、推定角算出部７４ａは、操舵角センサ３４から操舵角（絶対角）θｈを取得できたか否かを判定する。そして、推定角算出部７４ａは、操舵角（絶対角）θｈを取得できたと判定した場合には（Ｙｅｓ）ステップＳ２０３に移行する。一方、推定角算出部７４ａは、操舵角（絶対角）θｈを取得できなかったと判定した場合には（Ｎｏ）ステップＳ２０６に移行する。
【０１０７】
前記ステップＳ２０３では、推定角算出部７４ａは、転舵モータ制御部４、つまり、転舵側偏差記憶部７６からピニオン角−操舵角偏差θｐｈを取得できたか否かを判定する。そして、推定角算出部７４ａは、転舵側偏差記憶部７６からピニオン角−操舵角偏差θｐｈを取得できたと判定した場合には（Ｙｅｓ）ステップＳ２０５に移行する。一方、推定角算出部７４ａは、転舵側偏差記憶部７６からピニオン角−操舵角偏差θｐｈを取得できなかったと判定した場合には（Ｎｏ）ステップＳ２０４に移行する。
【０１０８】
前記ステップＳ２０４では、推定角算出部７４ａは、反力モータ制御部１０、つまり、反力側偏差記憶部７２からピニオン角−操舵角偏差θｐｈを取得できたか否かを判定する。そして、推定角算出部７４ａは、反力側偏差記憶部７２からピニオン角−操舵角偏差θｐｈを取得できたと判定した場合には（Ｙｅｓ）前記ステップＳ２０５に移行する。一方、推定角算出部７４ａは、反力側偏差記憶部７２からピニオン角−操舵角偏差θｐｈを取得できなかったと判定した場合には（Ｎｏ）前記ステップＳ２０６に移行する。
【０１０９】
前記ステップＳ２０５では、推定角算出部７４ａは、操舵角センサ３４が検出した操舵角（絶対角）θｈと反力側偏差記憶部７２及び転舵側偏差記憶部７６が記憶しているピニオン角−操舵角偏差θｐｈに基づき、下記（２）式に従って推定角θｅｓｔを算出する。その後、この演算処理を終了する。下記（２）式では、操舵角（絶対角）θｈにピニオン角−操舵角偏差θｐｈ（つまり、イグニッションスイッチがオフ状態となり、クラッチ６が締結された直後のピニオン絶対角θｐと操舵角（絶対角）θｈとの偏差）を加算し、加算結果を推定角θｅｓｔとする。これにより、推定角算出部７４ａは、イグニッションスイッチがオン状態となり、クラッチ６が開放された直後のピニオン絶対角θｐの推定値（推定角）θｅｓｔを算出する。
θｅｓｔ＝θｈ＋θｐｈ  ………（２）
前記ステップＳ２０６では、推定角算出部７４ａは、推定角θｅｓｔを算出することができないと判定した後、この演算処理を終了する。
【０１１０】
（候補角算出処理）
次に、候補角算出部７４ｂが実行する候補角算出処理の詳細について説明する。候補角算出処理は、算出実施条件が満たされた場合に実行される処理である。候補角算出処理では、候補角算出部７４ｂは、イグニッションスイッチがオン状態となり、クラッチ６が開放された直後のピニオン絶対角θｐの候補値（以下、候補角θｃａｎｄとも呼ぶ）を算出する。
【０１１１】
図１６は、候補角算出処理を表すフローチャートである。
図１６に示すように、ステップＳ３０１では、候補角算出部７４ｂは、イグニッションスイッチがオン状態であるか否かを判定する。そして、候補角算出部７４ｂは、イグニッションスイッチがオン状態であると判定した場合には（Ｙｅｓ）ステップＳ３０２に移行する。一方、候補角算出部７４ｂは、イグニッションスイッチがオフ状態であると判定した場合には（Ｎｏ）この判定を再度実行する。
【０１１２】
前記ステップＳ３０２では、候補角算出部７４ｂは、転舵モータ角度センサ１６から転舵モータ角（相対角）を取得できたか否かを判定する。すなわち、候補角算出部７４ｂは、イグニッションスイッチがオン状態となり、クラッチ６が開放された直後の転舵モータ角（以下、初期転舵モータ角θｍｏとも呼ぶ）を取得できたか否かを判定する。そして、候補角算出部７４ｂは、初期転舵モータ角θｍｏを取得できたと判定した場合には（Ｙｅｓ）ステップＳ３０３に移行する。一方、候補角算出部７４ｂは、初期転舵モータ角θｍｏを取得できなかったと判定した場合には（Ｎｏ）ステップＳ３０５に移行する。
【０１１３】
なお、本実施形態では、転舵モータ角度センサ１６から取得した転舵モータ角（相対角）を初期転舵モータ角θｍｏとする例を示したが、他の構成を採用することもできる。例えば、転舵モータ角度センサ１６から取得した転舵モータ角（相対角）から車両Ｃの直進時の転舵モータ角（相対角）を減算した減算結果を、初期転舵モータ角θｍｏとしてもよい。
【０１１４】
前記ステップＳ３０３では、候補角算出部７４ｂは、転舵モータ角度センサ１６から取得した転舵モータ角（相対角）、つまり、レゾルバが出力した信号に基づき、下記（３）式に従って、初期ピニオン角換算値（相対角）θｐｃｏｎｖを算出する。下記（３）式では、初期転舵モータ角（相対角）θｍｏを、転舵出力歯車１２ａとピニオン４６とのギヤ比Ｇｒで除算し、除算結果を初期ピニオン角換算値θｐｃｏｎｖとする。これにより、候補角算出部７４ｂは、イグニッションスイッチがオン状態となり、クラッチ６が開放された直後のピニオン絶対角θｐの推定値（初期ピニオン角換算値）θｐｃｏｎｖを算出する。ここで、初期転舵モータ角θｍｏは、図１０に示すように、転舵モータ２の回転角が−７２０ｄｅｇ〜７２０ｄｅｇの範囲内で変化することに応じて、周期的に０ｄｅｇ〜１２０ｄｅｇ（＝３６０ｄｅｇ／３）の範囲内で変化する。この変化は、上述したように、転舵モータ角度センサ１６が極対数ｎが３のレゾルバである場合に発生する。それゆえ、例えば、ギヤ比Ｇｒが１３．５である場合、初期ピニオン角換算値θｐｃｏｎｖは、周期的に０ｄｅｇ〜８．８８８ｄｅｇ（＝１２０／１３．５：上限値）未満の範囲内で変化する。この変化は、転舵モータ２の回転角が−７２０ｄｅｇ〜７２０ｄｅｇ（−７２０ｄｅｇ以上で且つ７２０ｄｅｇ未満）の範囲内で変化することに応じて発生する。
θｐｃｏｎｖ＝θｍｏ／Ｇｒ  ………（３）
【０１１５】
続いてステップＳ３０４に移行して、候補角算出部７４ｂは、ｉ＝０、±１、±２、±３、±４、±５、±６毎に、下記（４）式に従って候補角θｃａｎｄを算出する。この算出は、前記ステップＳ３０３で算出した初期ピニオン角換算値θｐｃｏｎｖと極対数ｎとギヤ比Ｇｒとに基づいて行う。下記（４）式では、初期ピニオン角換算値θｐｃｏｎｖと該初期ピニオン角換算値θｐｃｏｎｖの上限値（８．８８８ｄｅｇ）の整数倍値との加算結果または減算結果を候補角θｃａｎｄとする。これにより、候補角算出部７４ｂは、初期転舵モータ角θｍｏ、つまり、ピニオン角と厳密な比例関係にあるセンサ値を基に複数の候補角θｃａｎｄを算出する。それゆえ、複数の候補角θｃａｎｄは、推定角θｅｓｔと比較して、より精度が高い候補角θｃａｎｄを含む。
θｃａｎｄ＝θｐ＋｛（３６０／ｎ／Ｇｒ）×ｉ｝  ………（４）
一方、前記ステップＳ３０５では、候補角算出部７４ｂは、候補角θｃａｎｄを算出することができないと判定した後、この演算処理を終了する。
【０１１６】
（ピニオン角初期値算出処理）
次に、ピニオン角初期値算出部７４ｃが実行するピニオン角算出処理の詳細について説明する。ピニオン角算出処理は、算出実施条件が満たされた場合に実行される処理である。ピニオン角算出処理では、ピニオン角初期値算出部７４ｃは、イグニッションスイッチがオン状態となり、クラッチ６が開放された直後のピニオン絶対角θｐの初期値（以下、ピニオン角初期値θｐｏとも呼ぶ）を算出する。
【０１１７】
図１７は、ピニオン角初期値算出処理を表すフローチャートである。
図１７に示すように、ステップＳ４０１では、ピニオン角初期値算出部７４ｃは、イグニッションスイッチがオン状態であるか否かを判定する。そして、ピニオン角初期値算出部７４ｃは、イグニッションスイッチがオン状態であると判定した場合には（Ｙｅｓ）ステップＳ４０２に移行する。一方、ピニオン角初期値算出部７４ｃは、イグニッションスイッチがオフ状態であると判定した場合には（Ｎｏ）この判定を再度実行する。
【０１１８】
前記ステップＳ４０２では、ピニオン角初期値算出部７４ｃは、推定角算出部７４ａから推定角θｅｓｔを取得する。続いて、ピニオン角初期値算出部７４ｃは、推定角算出部７４ａから推定角θｅｓｔを取得できたか否かを判定する。そして、ピニオン角初期値算出部７４ｃは、推定角θｅｓｔを取得できたと判定した場合には（Ｙｅｓ）ステップＳ４０３に移行する。一方、ピニオン角初期値算出部７４ｃは、推定角θｅｓｔを取得できなかったと判定した場合には（Ｎｏ）ステップＳ４０５に移行する。
【０１１９】
前記ステップＳ４０３では、ピニオン角初期値算出部７４ｃは、候補角算出部７４ｂから複数の候補角θｃａｎｄを取得する。続いて、ピニオン角初期値算出部７４ｃは、複数の候補角θｃａｎｄを取得できたか否かを判定する。そして、ピニオン角初期値算出部７４ｃは、複数の候補角θｃａｎｄを取得できたと判定した場合には（Ｙｅｓ）ステップＳ４０４に移行する。一方、ピニオン角初期値算出部７４ｃは、複数の候補角θｃａｎｄを取得できなかったと判定した場合には（Ｎｏ）ステップＳ４０５に移行する。
【０１２０】
前記ステップＳ４０４では、ピニオン角初期値算出部７４ｃは、前記ステップＳ４０３で取得した複数の候補角θｃａｎｄのうちから、前記ステップＳ４０２で取得した推定角θｅｓｔに最も近い候補角θｃａｎｄを、ピニオン角初期値θｐｏとして抽出する。すなわち、推定角θｅｓｔから候補角θｃａｎｄを減算した場合の減算結果の絶対値｜θｅｓｔ−θｃａｎｄ｜が最も小さくなる候補角θｃａｎｄを、ピニオン角初期値θｐｏとして抽出する。これにより、ピニオン角初期値算出部７４ｃは、イグニッションスイッチがオン状態となり、推定角θｅｓｔと比較して、より精度が高い候補角θｃａｎｄをピニオン角初期値θｐｏとして抽出する。
一方、前記ステップＳ４０５では、ピニオン角初期値算出部７４ｃは、ピニオン角初期値θｐｏを抽出することができないと判定した後、この演算処理を終了する。
【０１２１】
（ピニオン絶対角算出処理）
次に、絶対角算出実行部７４ｄが実行するピニオン絶対角算出処理の詳細について説明する。ピニオン絶対角算出処理は、イグニッションスイッチがオン状態である場合に、設定時間（例えば、５ｍｓｅｃ.）が経過するたびに実行される割り込み処理である。
図１８は、ピニオン絶対角算出処理を表すフローチャートである。
図１８に示すように、ステップＳ５０１では、絶対角算出実行部７４ｄは、ピニオン角初期値算出部７４ｃからピニオン角初期値θｐｏを取得する。続いて、絶対角算出実行部７４ｄは、ピニオン角初期値θｐｏを取得できたか否かを判定する。そして、絶対角算出実行部７４ｄは、ピニオン角初期値θｐｏを取得できたと判定した場合には（Ｙｅｓ）ステップＳ５０２に移行する。一方、絶対角算出実行部７４ｄは、ピニオン角初期値θｐｏを取得できなかったと判定した場合には（Ｙｅｓ）ステップＳ５０３に移行する。
【０１２２】
前記ステップＳ５０２では、絶対角算出実行部７４ｄは、この演算処理の前回実行時に算出したピニオン絶対角θｐと現在のピニオン絶対角θｐとの偏差（以下、ピニオン角偏差Δθｐとも呼ぶ）を算出する。この算出は、転舵モータ角度センサ１６が検出した転舵モータ角（相対角）に基づいて行う。続いて、絶対角算出実行部７４ｄは、算出したピニオン角偏差Δθｐとこの演算処理の前回実行時に算出したピニオン角（以下、前回ピニオン絶対角θｐｏｌｄとも呼ぶ）とに基づき、下記（５）式に従って現在のピニオン絶対角θｐを算出する。なお、絶対角算出実行部７４ｄは、イグニッションキーがオン状態とされた後、この演算処理の最初の実行時には、前記ステップＳ５０１で取得したピニオン角初期値θｐｏを設定する。
θｐ＝θｐｏｌｄ＋Δθｐ  ………（５）
一方、前記ステップＳ５０３では、絶対角算出実行部７４ｄは、ピニオン絶対角θｐを算出することができないと判定した後、この演算処理を終了する。
【０１２３】
（ピニオン角−操舵角偏差記憶処理）
次に、ピニオン角初期値算出部７４ｃが実行するピニオン角−操舵角偏差記憶処理の詳細について説明する。ピニオン角−操舵角偏差記憶処理は、算出実施条件が満たされた場合に実行される処理である。ピニオン角−操舵角偏差記憶処理では、ピニオン角初期値算出部７４ｃは、イグニッションスイッチがオフ状態となり、クラッチ６が締結された直後のピニオン角−操舵角偏差θｐｈを、転舵側偏差記憶部７６に記憶させる。
【０１２４】
図１９は、ピニオン角初期値算出処理を表すフローチャートである。
図１９に示すように、ステップＳ６０１では、ピニオン角初期値算出部７４ｃは、イグニッションスイッチがオフ状態であるか否かを判定する。そして、ピニオン角初期値算出部７４ｃは、イグニッションスイッチがオフ状態であると判定した場合には（Ｙｅｓ）ステップＳ６０２に移行する。一方、ピニオン角初期値算出部７４ｃは、イグニッションスイッチがオン状態であると判定した場合には（Ｎｏ）この判定を再度実行する。
【０１２５】
前記ステップＳ６０２では、ピニオン角初期値算出部７４ｃは、操舵絶対角算出部６８から操舵角（絶対角）θｈを取得する。続いて、ピニオン角初期値算出部７４ｃは、ピニオン絶対角算出部７４からピニオン絶対角（絶対値）θｐを取得する。
続いてステップＳ６０３に移行して、ピニオン角初期値算出部７４ｃは、前記ステップＳ６０２で取得した操舵角（絶対角）θｈとピニオン絶対角θｐとに基づき、下記（６）式に従って、ピニオン角−操舵角偏差θｐｈを算出する。
θｐｈ＝θｐ―θｈ  ………（６）
【０１２６】
続いてステップＳ６０４に移行して、ピニオン角初期値算出部７４ｃは、前記ステップＳ６０３で算出したピニオン角−操舵角偏差θｐｈを、反力モータ制御部１０の反力側偏差記憶部７２と転舵モータ制御部４の転舵側偏差記憶部７６とに記憶させる。その後、この演算処理を終了する。これにより、イグニッションスイッチがオフ状態となり、クラッチ６が締結された直後の、ピニオン絶対角θｐと操舵角（絶対角）θｈとの偏差を記憶する。
【０１２７】
（動作その他）
次に、操舵制御装置１の動作について説明する。
イグニッションスイッチがオフ状態、つまり、クラッチ６が締結状態であるときに、運転者が、イグニッションスイッチをオン状態にしたとする。すると、転舵モータ制御部４は、クラッチ６に開放指令を出力する。続いて、クラッチ６が、転舵モータ制御部４から開放指令が出力されると該クラッチ６を開放する。ここで、操舵角センサ３４の診断結果及びＦｌｅｘＲａｙシステムの診断結果の両方が「正常」であったとする。この場合、ピニオン絶対角算出部７４が、推定角算出処理、候補角算出処理、及びピニオン角算出処理の実施条件を満たすと判定する（図１３のステップＳ１０１、Ｓ１０２、Ｓ１０３、Ｓ１０４、Ｓ１０５、Ｓ１０６、図１４「算出実施条件：○」）。ここで、推定角算出処理、候補角算出処理、及びピニオン角算出処理の実施条件とは、つまり、算出実施条件である。そして、算出実施条件が満たされると、ピニオン絶対角算出部７４が、操舵絶対角算出部６８が算出した操舵角（絶対角）θｈとピニオン角−操舵角偏差θｐｈとに基づき、クラッチ６が開放された直後のピニオン絶対角θｐの推定値（推定角）θｅｓｔを算出する。これは、図１５のステップＳ２０１、Ｓ２０２、Ｓ２０３、Ｓ２０５に対応する。
【０１２８】
続いて、ピニオン絶対角算出部７４が、転舵モータ角度センサ１６から取得した転舵モータ角（相対角）に基づき、初期ピニオン角換算値θｐｃｏｎｖを算出する（図１６のステップＳ３０１、Ｓ３０２、Ｓ３０３）。続いて、ピニオン絶対角算出部７４が、算出した初期ピニオン角換算値θｐｃｏｎｖと極対数ｎとギヤ比Ｇｒとに基づき、複数の候補角θｃａｎｄを算出する（図１６のステップＳ３０４）。ここで、ピニオン絶対角算出部７４は、初期転舵モータ角θｍｏ、つまり、ピニオン角と厳密な比例関係にあるセンサ値を基に、複数の候補角θｃａｎｄを算出する。それゆえ、複数の候補角θｃａｎｄのうちには、推定角θｅｓｔと比較して、より精度が高い候補値（候補角θｃａｎｄ）が含まれている。続いて、ピニオン絶対角算出部７４が、算出した複数の候補角θｃａｎｄのうち、推定角θｅｓｔに最も近い候補角θｃａｎｄ、つまり、｜θｅｓｔ−θｃａｎｄ｜が最も小さい候補角θｃａｎｄを、ピニオン角初期値θｐｏとして抽出する。これにより、ピニオン絶対角算出部７４は、ピニオン角と厳密な比例関係にある初期転舵モータ角θｍｏを基に、複数の候補角θｃａｎｄを算出する。それゆえ、複数の候補角θｃａｎｄは、推定角θｅｓｔと比較して、より精度が高い候補角θｃａｎｄを、ピニオン角初期値θｐｏとして抽出する（図１７のステップＳ４０１、Ｓ４０２、Ｓ４０３、Ｓ４０４）。
【０１２９】
そして、ピニオン絶対角算出部７４が、算出したピニオン角初期値θｐｏを基に、現在のピニオン絶対角θｐを順次算出する（図１８のステップＳ５０１、Ｓ５０２）。これにより、転舵角制御部７８が、図１１に示すように、算出したピニオン絶対角θｐと、ピニオン角指令値算出部７０が算出した転舵指令角θｐｃｍｄとの偏差に応じた電流指令値Ｉｐｃｍｄを算出する。続いて、電流制御ドライバ８０が、算出した電流指令値Ｉｐｃｍｄに駆動実電流Ｉｐｒｅａｌが一致するように、転舵モータ２に供給する駆動電流Ｉｐｄｒｉを制御する。そして、転舵モータ２が、ピニオン絶対角θｐ（転舵角）を制御する。
【０１３０】
本実施形態では、図９の前輪２４ＦＬ、２４ＦＲが、操向輪を構成する。以下、同様に、操舵絶対角θｈが、操舵状態を構成する。また、図９のピニオン４６が、ラックギヤと噛合する歯車を構成する。さらに、ピニオン角−操舵角偏差θｐｈが、操舵角と歯車の回転角との偏差を構成する。また、図９、図１１の反力モータ制御部１０、転舵モータ制御部４及び図１１の、反力側偏差記憶部７２及び転舵側偏差記憶部７６が、偏差記憶部を構成する。また、図９、図１１の転舵モータ制御部４、図１１のピニオン絶対角算出部７４、図１１、図１２の推定角算出部７４ａ及び図１５のステップＳ２０５が、角度推定値算出部を構成する。さらに、図９の転舵モータ角度センサ１６が、レゾルバを構成する。さらに、図９、図１１の転舵モータ制御部４、図１１のピニオン絶対角算出部７４、図１１、図１２の候補角算出部７４ｂ及び図１６のステップＳ３０３が、角度換算値算出部を構成する。また、図９、図１１の転舵モータ制御部４、図１１のピニオン絶対角算出部７４、図１１、図１２の候補角算出部７４ｂ、ピニオン角初期値算出部７４ｃ、図１６のステップＳ３０４及び図１７のステップＳ４０４が、初期値抽出部を構成する。さらに、図９、図１１の転舵モータ制御部４、図１１のピニオン絶対角算出部７４、図１１、図１２の絶対角算出実行部７４ｄ、図１８のステップＳ５０２が、回転角算出部を構成する。また、図９、図１１の転舵モータ制御部４、図１１の転舵角制御部７８、電流制御ドライバ８０が、転舵モータ制御部を構成する。
【０１３１】
（第二実施形態の効果）
本実施形態は、次のような効果を奏する。
（１）候補角算出部７４ｂが、転舵制御の開始時に、転舵モータ角度センサ１６（レゾルバ）が出力した信号に基づいて、ピニオン４６の回転角の換算値（初期ピニオン角換算値θｐｃｏｎｖ）を算出する。続いて、ピニオン角初期値算出部７４ｃが、算出した換算値（初期ピニオン角換算値θｐｃｏｎｖ）と該換算値（初期ピニオン角換算値θｐｃｏｎｖ）の上限値（８．８８８ｄｅｇ）の整数倍値との加算または減算を行う。さらに、ピニオン角初期値算出部７４ｃが、上記の加算結果または減算結果である候補値（候補角θｃａｎｄ）を算出する。続いて、ピニオン角初期値算出部７４ｃが、算出した候補値（候補角θｃａｎｄ）のうちから、ピニオン絶対角の推定値（推定角θｅｓｔ）に最も近い候補値を、ピニオン４６の回転角の初期値（ピニオン角初期値θｐｏ）として抽出する。続いて、絶対角算出実行部７４ｄが、転舵制御の実行中に、抽出した初期値（ピニオン角初期値θｐｏ）及び転舵モータ角度センサ１６（レゾルバ）が出力した信号に基づいて、ピニオン絶対角θｐを算出する。そして、転舵角制御部７８及び電流制御ドライバ８０は、転舵制御の実行中に、算出したピニオン絶対角θｐに基づいて転舵モータ２を制御する。
【０１３２】
このような構成によれば、転舵制御の開始時に、上記の加算結果または減算結果である候補値（候補角θｃａｎｄ）のうちから、ピニオン絶対角θｐの推定値（推定角θｅｓｔ）に最も近い候補値を、初期値（ピニオン角初期値θｐｏ）として抽出する。そして、転舵制御の実行中には、抽出したピニオン絶対角（ピニオン角初期値θｐｏ）及び転舵モータ角度センサ１６（レゾルバ）が出力した信号に基づいて、ピニオン絶対角θｐを算出する。これにより、前輪２４ＦＬ、２４ＦＲ側に設置するレゾルバの数を低減しつつ、ピニオン絶対角θｐを取得可能とすることができる。
【０１３３】
なお、ステアリングラック１４のラックギヤ１８ａと噛合される歯車として、転舵モータ２の転舵モータ出力軸１２の端部に接続した転舵出力歯車１２ａ（転舵モータ側ピニオン）を用いてもよい。この場合、例えば、予め、車両組み立て時等における、ラックギヤ１８ａに対する転舵出力歯車１２ａとピニオン４６との角度差（噛合した状態における角度差）に基づいて、ピニオン絶対角θｐを取得可能としてもよい。
【０１３４】
（第三実施形態）
次に、本発明の第三実施形態について、図面を参照しつつ説明する。
なお、上述した第二実施形態と同様の構成等については、同一の符号を使用する。
本実施形態は、イグニッションスイッチがオフ状態のときの操舵方向に基づいて、より適切なピニオン角初期値θｐｏを抽出可能とした点が、第二実施形態と異なる。
図２０は、ピニオン角初期値算出処理を表すフローチャートである。
具体的には、本実施形態は、反力側偏差記憶部７２及び転舵側偏差記憶部７６の記憶内容が、第二実施形態と異なっている。これに加え、本実施形態は、図２０に示すように、図１７のステップＳ４０４に代えて、ステップＳ７０１、Ｓ７０２、Ｓ７０３、Ｓ７０４、Ｓ７０５、Ｓ７０６、Ｓ７０７を備える点が、第二実施形態と異なっている。
【０１３５】
反力側偏差記憶部７２及び転舵側偏差記憶部７６は、ピニオン角−操舵角偏差θｐｈに加え、イグニッションスイッチがオフ状態になったときに操舵角センサ３４が検出した操舵角（絶対角）θｈを記憶する。これにより、反力側偏差記憶部７２及び転舵側偏差記憶部７６は、前回の転舵制御の終了時に操舵角センサ３４が検出した操舵角（絶対角）θｈを記憶している。
【０１３６】
また、前記ステップＳ７０１では、ピニオン角初期値算出部７４ｃは、推定角算出部７４ａが算出した推定角θｅｓｔが、複数の候補角θｃａｎｄのうちの互いに隣り合う２つの候補角θｃａｎｄの中間に存在するか否かを判定する。すなわち、複数の候補角θｃａｎｄのうちに、推定角θｅｓｔに最も近い候補角θｃａｎｄが２つ存在するか否かを判定する。そして、ピニオン角初期値算出部７４ｃは、推定角θｅｓｔに最も近い候補角θｃａｎｄが２つ存在すると判定した場合には（Ｙｅｓ）前記ステップＳ７０２に移行する。一方、ピニオン角初期値算出部７４ｃは、推定角θｅｓｔに最も近い候補角θｃａｎｄが１つしか存在しないと判定した場合には（Ｎｏ）前記ステップＳ７０６に移行する。
【０１３７】
前記ステップＳ７０２では、ピニオン角初期値算出部７４ｃは、イグニッションスイッチがオフ状態であるときに前輪２４ＦＬ、２４ＦＲが右方向に転舵されたか否かを判定する。具体的には、ピニオン角初期値算出部７４ｃは、操舵角センサ３４が検出した操舵絶対角θｈが、反力側偏差記憶部７２及び転舵側偏差記憶部７６が記憶している操舵絶対角θｈ以上であるか否かを判定する。これに加え、ピニオン角初期値算出部７４ｃは、操舵トルクセンサ３６が検出した操舵トルクが正方向のものであるか否かを判定する。すなわち、ピニオン角初期値算出部７４ｃは、操舵絶対角θｈの絶対値が前回の転舵制御の終了時の操舵絶対角θｈの絶対値以上であり、且つ、操舵トルクセンサ３６が検出したトルクが操舵絶対角θｈの絶対値を増大させる方向のものであるか否かを判定する。そして、ピニオン角初期値算出部７４ｃは、操舵絶対角θｈの絶対値が前回の転舵制御の終了時の操舵絶対角θｈの絶対値以上であると判定する。これに加え、操舵トルクセンサ３６が検出したトルクが操舵絶対角θｈの絶対値を増大させる方向のものであると判定した場合には（Ｙｅｓ）、前輪２４ＦＬ、２４ＦＲが右方向に転舵されたと判定し、ステップＳ７０４に移行する。一方、ピニオン角初期値算出部７４ｃは、操舵絶対角θｈの絶対値が前回の転舵制御の終了時の操舵絶対角θｈの絶対値以下であると判定した場合には（Ｎｏ）、前輪２４ＦＬ、２４ＦＲが右方向に転舵されていないと判定し、ステップＳ７０３に移行する。または、操舵トルクセンサ３６が検出したトルクが操舵絶対角θｈの絶対値を低減させる方向のものであると判定した場合には（Ｎｏ）、前輪２４ＦＬ、２４ＦＲが右方向に転舵されていないと判定し、ステップＳ７０３に移行する。
【０１３８】
一方、前記ステップＳ７０３では、ピニオン角初期値算出部７４ｃは、イグニッションスイッチがオフ状態であるときに前輪２４ＦＬ、２４ＦＲが左方向に転舵されたか否かを判定する。具体的には、ピニオン角初期値算出部７４ｃは、操舵角センサ３４が検出した操舵絶対角θｈが、反力側偏差記憶部７２及び転舵側偏差記憶部７６が記憶している操舵絶対角θｈ以下であるか否かを判定する。これに加え、ピニオン角初期値算出部７４ｃは、操舵トルクセンサ３６が検出した操舵トルクが負方向のものであるか否かを判定する。すなわち、ピニオン角初期値算出部７４ｃは、操舵絶対角θｈの絶対値が前回の転舵制御の終了時の操舵絶対角θｈの絶対値以上であり、且つ、操舵トルクセンサ３６が検出したトルクが操舵絶対角θｈの絶対値を増大させる方向のものであるか否かを判定する。そして、ピニオン角初期値算出部７４ｃは、操舵絶対角θｈの絶対値が前回の転舵制御の終了時の操舵絶対角θｈの絶対値以上であると判定する。これに加え、操舵トルクセンサ３６が検出したトルクが操舵絶対角θｈの絶対値を増大させる方向のものであると判定した場合には（Ｙｅｓ）、前輪２４ＦＬ、２４ＦＲが左方向に転舵されたと判定し、前記ステップＳ７０４に移行する。一方、ピニオン角初期値算出部７４ｃは、操舵絶対角θｈの絶対値が前回の転舵制御の終了時の操舵絶対角θｈの絶対値以下であると判定した場合には（Ｎｏ）、前輪２４ＦＬ、２４ＦＲが左方向に転舵されていないと判定し、ステップＳ７０５に移行する。または、操舵トルクセンサ３６が検出したトルクが操舵絶対角θｈの絶対値を低減させる方向のものであると判定した場合には（Ｎｏ）、前輪２４ＦＬ、２４ＦＲが左方向に転舵されていないと判定し、ステップＳ７０５に移行する。
【０１３９】
前記ステップＳ７０４では、ピニオン角初期値算出部７４ｃは、２つ存在する候補角θｃａｎｄのうち、絶対値が小さい候補角θｃａｎｄを転舵制御の開始時のピニオン絶対角（ピニオン角初期値）θｐｏとして抽出した後、この演算処理を終了する。ここで、イグニッションスイッチがオフ状態であるときに、前輪２４ＦＬ、２４ＦＲが右方向または左方向に転舵された場合には、タイヤが捻られて、推定角θｅｓｔよりも実際の転舵角は中立位置側となると考えられる。それゆえ、本実施形態では、イグニッションスイッチがオフ状態であるときに、前輪２４ＦＬ、２４ＦＲが右方向または左方向に転舵された場合には、タイヤの捩れを考慮して、中立位置側の候補角θｃａｎｄを、ピニオン角初期値θｐｏとして設定する。
【０１４０】
前記ステップＳ７０５では、ピニオン角初期値算出部７４ｃは、２つ存在する候補角θｃａｎｄのうち、絶対値が大きい候補角θｃａｎｄを、転舵制御の開始時のピニオン絶対角（ピニオン角初期値）θｐｏとして抽出した後、この演算処理を終了する。
一方、前記ステップＳ７０６では、ピニオン角初期値算出部７４ｃは、２つ存在する候補角θｃａｎｄのうち、絶対値が小さい候補角θｃａｎｄを、転舵制御の開始時のピニオン絶対角（ピニオン角初期値）θｐｏとして抽出した後、この演算処理を終了する。
【０１４１】
本実施形態では、図１１の反力側偏差記憶部７２及び転舵側偏差記憶部７６が、終了時操舵角記憶部を構成する。以下、同様に、図９の操舵トルクセンサ３６が、操舵トルク検出部を構成する。また、図１２のピニオン角初期値算出部７４ｃ及び図２０のステップＳ７０１が、候補値判定部を構成する。さらに、図１２のピニオン角初期値算出部７４ｃ及び図２０のステップＳ７０３が、抽出実行部を構成する。
【０１４２】
（第三実施形態の効果）
本実施形態は、第二実施形態の（１）の効果に加え、次のような効果を奏する。
（１）候補角算出部７４ｂが、転舵制御の開始時に、ピニオン４６の回転角の換算値（初期ピニオン角換算値θｐｃｏｎｖ）と該換算値の上限値（８．８８８ｄｅｇ）の整数倍値との加算結果または減算結果である候補値（候補角θｃａｎｄ）を算出する。続いて、候補角算出部７４ｂが、操舵絶対角θｈと偏差（ピニオン角−操舵角偏差θｐｈ）との加算結果（推定角θｅｓｔ）に最も近い加算結果または減算結果である候補値（候補角θｃａｎｄ）が２つ存在するか否かを判定する。この判定は、算出した候補値（候補角θｃａｎｄ）のうちに、候補値（候補角θｃａｎｄ）が２つ存在するか否かの判定である。続いて、候補角算出部７４ｂが、操舵絶対角θｈの絶対値が前回の転舵制御の終了時の操舵絶対角θｈの絶対値以上であり、且つ、操舵トルクセンサ３６が検出したトルクが操舵絶対角θｈの絶対値を増大させる方向のものであるか否かを判定する。この判定は、候補値（候補角θｃａｎｄ）が２つ存在すると判定した場合に行う。さらに、操舵絶対角θｈの絶対値が前回の転舵制御の終了時の操舵絶対角θｈの絶対値以上であり、且つ、操舵トルクセンサ３６が検出したトルクが操舵絶対角θｈの絶対値を増大させる方向のものであると判定すると、候補値を抽出する処理を行う。ここで、候補値を抽出する処理とは、２つ存在する候補角θｃａｎｄのうち、絶対値が小さい候補値（候補角θｃａｎｄ）をピニオン絶対角θｐの初期値（ピニオン角初期値θｐｏ）として抽出する処理である。
このような構成によれば、タイヤの捩れを考慮して、より適切な候補値（候補角θｃａｎｄ）を、初期値（ピニオン角初期値θｐｏ）として抽出できる。この抽出は、例えば、ピニオン絶対角θｐの推定値（推定角θｅｓｔ）に最も近い候補値（候補角θｃａｎｄ）が２つ存在する場合に行う。
【０１４３】
（第四実施形態）
次に、本発明の第四実施形態について、図面を参照しつつ説明する。
なお、上述した第二実施形態と同様の構成等については、同一の符号を使用する。
本実施形態は、操舵トルクセンサ３６が検出したトルクセンサ値Ｔに基づいて、より適切な推定角θｅｓｔを算出可能とした点が、第二実施形態と異なる。
図２１は、推定角算出処理を表すフローチャートである。
具体的には、本実施形態は、図２１に示すように、図１５のステップＳ２０５に代えて、ステップＳ８０１、Ｓ８０２を備える点が、第二実施形態と異なっている。
【０１４４】
図２２は、トルクセンサ値Ｔと補正角θｔｒｑとの関係を表す図である。
前記ステップＳ８０１では、推定角算出部７４ａは、操舵トルクセンサ３６が検出したトルク（以下、トルクセンサ値とも呼ぶ）Ｔに基づき、図２２の制御マップを参照して、推定角θｅｓｔを算出するための補正角θｔｒｑを算出する。図２２の制御マップでは、トルクセンサ値Ｔが０以上で且つ設定値Ｔ１未満の範囲では、トルクセンサ値Ｔが増大するほど、補正角θｔｒｑが増大する。また、トルクセンサ値Ｔが設定値−Ｔ１以上で且つ０未満の範囲では、トルクセンサ値Ｔが低減するほど、補正角θｔｒｑが低減する。すなわち、図２２の制御マップでは、トルクセンサ値Ｔの絶対値が大きくなるほど、補正角θｔｒｑの絶対値が大きくなる。さらに、図２２の制御マップでは、トルクセンサ値Ｔが設定値Ｔ１以上の範囲では、一定値θｔｈ（＞０）を、補正角θｔｒｑとして設定する。また、トルクセンサ値Ｔが設定値−Ｔ１未満の範囲では、一定値−θｔｈ（＜０）を、補正角θｔｒｑとして設定する。ここで、イグニッションスイッチがオン状態とされたときに、操舵輪３２に運転者の操舵トルクが右方向または左方向に付与されていた場合には、ステアリングシャフト４２、ピニオン軸４４等の操舵輪３２からピニオン４６までの部材が捻られる。これにより、推定角θｅｓｔよりも、実際の転舵角は中立位置側となる。それゆえ、本実施形態では、イグニッションスイッチがオン状態とされたときに、操舵輪３２に運転者の操舵トルクが右方向または左方向に付与されていた場合には、操舵輪３２からピニオン４６までの部材の捻れを考慮して、推定角θｅｓｔを中立位置側に設定する。
具体的には、操舵角（絶対角）θｈと、ピニオン角−操舵角偏差θｐｈと、補正角θｔｒｑに基づき、下記（７）式に従って、推定角θｅｓｔを算出する。
θｅｓｔ＝θｈ＋θｐｈ−θｔｒｑ  ………（７）
本実施形態では、図９の操舵トルクセンサ３６が、操舵トルク検出部を構成する。
【０１４５】
（第四実施形態の効果）
本実施形態は、第二実施形態の（１）の効果に加え、次のような効果を奏する。
（１）推定角算出部７４ａが、操舵角センサ３４が検出した操舵角（絶対角）θｈと反力側偏差記憶部７２及び転舵側偏差記憶部７６が記憶しているピニオン角−操舵角偏差θｐｈとの加算結果（θｈ＋θｐｈ）を算出する。続いて、推定角算出部７４ａが、算出した加算結果の絶対値が、操舵トルクセンサ３６が検出した操舵トルク（トルクセンサ値Ｔ）の絶対値が大きくなるほど小さくなるように該加算結果を補正した補正結果（θｈ＋θｐｈ−θｔｒｑ）を算出する。そして、算出した補正結果（θｈ＋θｐｈ−θｔｒｑ）を、ピニオン絶対角θｐの推定値（推定角θｅｓｔ）とする。
このような構成によれば、例えば、操舵輪３２からピニオン４６までの部材の捻れを考慮して、より適切な候補値（推定角θｅｓｔ）を算出でき、より適切な候補値（候補角θｃａｎｄ）を、初期値（ピニオン角初期値θｐｏ）として抽出できる。
【０１４６】
以上、本願が優先権を主張する日本国特許出願２０１２−２１６１６７（２０１２年９月２８日出願）、日本国特許出願２０１２−２１６５９１（２０１２年９月２８日出願）の全内容は、参照により本開示の一部をなす。
ここでは、限られた数の実施形態を参照しながら説明したが、権利範囲はそれらに限定されるものではなく、上記の開示に基づく各実施形態の改変は当業者にとって自明なことである。
【符号の説明】
【０１４７】
１    操舵制御装置
２    転舵モータ
４    転舵モータ制御部（偏差記憶部、角度推定値算出部、角度換算値算出部、初期値抽出部、回転角算出部、転舵モータ制御部）
６    クラッチ
８    反力モータ
１０  反力モータ制御部（偏差記憶部）
１６  転舵モータ角度センサ
２４  転舵輪
３２  操舵輪
３４  操舵角センサ
４０  クラッチ板
４２  ステアリングシャフト
４４  ピニオン軸
４６  ピニオン
５０  車速センサ
５２  エンジンコントローラ
５４  指令演算部
５６  反力サーボ制御部
５８  クラッチ制御部
６０  クラッチ状態切り替え部
６２  クラッチ位相角算出部
６４  転舵角記憶部
６６  転舵角算出部
７２  反力側偏差記憶部（偏差記憶部、終了時操舵角記憶部）
７４  ピニオン絶対角算出部（角度推定値算出部、角度換算値算出部、初期値抽出部、回転角算出部）
７４ａ  推定角算出部（角度推定値算出部）
７４ｂ  候補角算出部（角度換算値算出部、初期値抽出部）
７４ｃ  ピニオン角初期値算出部（初期値抽出部、候補値判定部、抽出実行部）
７４ｄ  絶対角算出実行部（回転角算出部）
７６  転舵側偏差記憶部（偏差記憶部、終了時操舵角記憶部）
７８  転舵角制御部（転舵モータ制御部）
８０  電流制御ドライバ（転舵モータ制御部）
θｈ  操舵絶対角（操舵状態）
θｐｈ  操舵角偏差（操舵角と歯車の回転角との偏差）
Ｓ２０５（角度推定値算出部）
Ｓ３０３（角度換算値算出部）
Ｓ３０４（初期値抽出部）
Ｓ４０４（初期値抽出部）
Ｓ５０２（回転角算出部）
Ｓ７０１（候補値判定部）
Ｓ７０３（抽出実行部）
【図１】
2014049937.tif 000003
【図２】
2014049937.tif 000004
【図３】
2014049937.tif 000005
【図４】
2014049937.tif 000006
【図５】
2014049937.tif 000007
【図６】
2014049937.tif 000008
【図７】
2014049937.tif 000009
【図８】
2014049937.tif 000010
【図９】
2014049937.tif 000011
【図１０】
2014049937.tif 000012
【図１１】
2014049937.tif 000013
【図１２】
2014049937.tif 000014
【図１３】
2014049937.tif 000015
【図１４】
2014049937.tif 000016
【図１５】
2014049937.tif 000017
【図１６】
2014049937.tif 000018
【図１７】
2014049937.tif 000019
【図１８】
2014049937.tif 000020
【図１９】
2014049937.tif 000021
【図２０】
2014049937.tif 000022
【図２１】
2014049937.tif 000023
【図２２】
2014049937.tif 000024
【国際調査報告】
2014049937.tif 000025
2014049937.tif 000026