(57)【要約】【課題】絶対角の演算の信頼性を向上させることのできる角度演算装置及び転舵装置を提供する。【解決手段】第１演算回路は、カウンタ異常検出部を診断するカウンタＢＩＳＴ部、及び電圧異常検出部を診断する電源ＢＩＳＴ部を備えている。第２演算回路は、第１絶対角情報異常検出部を診断する第１絶対角情報ＢＩＳＴ部、及び第２絶対角情報異常検出部を診断する第２絶対角情報ＢＩＳＴ部を備えている。第３演算回路は、絶対角異常検出部を診断する絶対角ＢＩＳＴ部を備えている。各ＢＩＳＴ部（カウンタＢＩＳＴ部、電源ＢＩＳＴ部、第１絶対角情報ＢＩＳＴ部、第２絶対角情報ＢＩＳＴ部、及び絶対角ＢＩＳＴ部）の診断の実行タイミングは、互いに異なる。【選択図】図７
2020079058.tif 000002
【特許請求の範囲】
【請求項１】
機械装置の動力源であるモータの相対角を検出する第１センサの検出結果に基づいて前記モータの相対角を積算した積算角を演算するための値であるカウント値を演算するカウンタ部と、前記カウンタ部の異常を検出する第１異常検出部と、前記第１異常検出部を診断する第１ＢＩＳＴ部とを有する第１演算回路と、
前記機械装置における前記モータに連動する検出対象の絶対位置を検出する第２センサの検出結果に基づいて前記検出対象の絶対位置を演算するための値である絶対位置情報を演算する絶対位置情報演算部と、前記絶対位置情報演算部の異常を検出する第２異常検出部と、前記第２異常検出部を診断する第２ＢＩＳＴ部とを有する第２演算回路と、
前記カウント値を用いて前記積算角を演算する積算角演算部と、前記絶対位置情報を用いて前記モータに連動する回転軸の絶対角を演算する絶対角演算部と、前記積算角及び前記絶対角の比較に基づいて前記第１演算回路及び前記第２演算回路の少なくとも一方の異常を検出する第３異常検出部と、前記第３異常検出部を診断する第３ＢＩＳＴ部とを有する第３演算部とを備え、
前記第１ＢＩＳＴ部、前記第２ＢＩＳＴ部、及び前記第３ＢＩＳＴ部による診断の実行タイミングは、互いに異なる角度演算装置。
【請求項２】
前記第１ＢＩＳＴ部、前記第２ＢＩＳＴ部、及び前記第３ＢＩＳＴ部による診断の実行タイミングは、前記第１センサ及び前記第２センサによる検出結果のサンプリングタイミングと異なる請求項１に記載の角度演算装置。
【請求項３】
前記第３異常検出部は、前記積算角の単位時間あたりの変化量と、前記絶対角の単位時間あたりの変化量とを用いて、前記第１演算回路及び前記第２演算回路の少なくとも一方の異常を検出する請求項１または２に記載の角度演算装置。
【請求項４】
請求項１〜３のいずれか一項に記載の角度演算装置と前記機械装置としての転舵ユニットとを備える転舵装置において、
前記転舵ユニットは、
直線運動することにより転舵輪を転舵させる転舵シャフトと、
前記転舵シャフトに噛み合わせられたピニオンシャフトと、
前記転舵シャフトに付与される動力の発生源である転舵モータと、
前記転舵モータが発生する動力を前記転舵シャフトに伝達する伝達機構とを有し、
前記検出対象は、前記転舵モータに連動するように設けられている前記ピニオンシャフトである転舵装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、角度演算装置及び転舵装置に関する。
【背景技術】
【０００２】
従来、ハンドルと転舵輪との間の動力伝達を分離した、いわゆるステアバイワイヤ方式の操舵装置が知られている。例えば特許文献１の操舵装置は、ハンドルと転舵輪との間の動力伝達を断続するクラッチ、操舵軸に付与される操舵反力の発生源である反力モータ、及び転舵輪を転舵させる転舵力の発生源である転舵モータを有している。また、特許文献１の操舵装置は、クラッチ、反力モータ、及び転舵モータの動作を制御する制御装置を有している。
【０００３】
車両の走行時、上記の制御装置は、クラッチを開放させてハンドルと転舵輪との間の動力伝達を切断する。上記の制御装置は、転舵輪の実転舵角を目標転舵角に追従させるべく転舵モータを制御するとともに、転舵輪の転舵状態に応じた操舵反力を発生させるべく反力モータを制御する。目標転舵角は、操舵角センサを通じて検出される操舵角に基づき算出される。転舵状態は、転舵角センサを通じて検出される。操舵角センサ及び転舵角センサは、いずれも絶対角センサである。
【０００４】
上記の制御装置は、反力モータに設けられた第１回転角センサを通じて検出される回転角を使用して反力モータを制御するとともに、転舵モータに設けられた第２回転角センサを通じて検出される回転角を使用して転舵モータを制御する。第１回転角センサ及び第２回転角センサは、いずれも相対角センサである。第１回転角センサは、操舵角センサを通じてセンシングの基準点となる操舵角の中点を取得する。第２回転角センサは、転舵角センサを通じてセンシングの基準点となる転舵角の中点を取得する。上記の制御装置は、転舵角センサを通じて取得された転舵角の中点を用いて、第２回転角センサを通じて検出される回転角に基づいて、絶対角で示される転舵輪の実転舵角を演算によって求めている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−５４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記の制御装置は演算によって求めた実転舵角を用いて転舵モータの制御を行っている。このため、上記の制御装置による実転舵角の演算に対してより一層の高い信頼性が求められている。
【０００７】
本発明の目的は、絶対角の演算の信頼性を向上させることのできる角度演算装置及び転舵装置を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成しうる角度演算装置は、機械装置の動力源であるモータの相対角を検出する第１センサの検出結果に基づいて前記モータの相対角を積算した積算角を演算するための値であるカウント値を演算するカウンタ部と、前記カウンタ部の異常を検出する第１異常検出部と、前記第１異常検出部を診断する第１ＢＩＳＴ部とを有する第１演算回路と、前記機械装置における前記モータに連動する検出対象の絶対位置を検出する第２センサの検出結果に基づいて前記検出対象の絶対位置を演算するための値である絶対位置情報を演算する絶対位置情報演算部と、前記絶対位置情報演算部の異常を検出する第２異常検出部と、前記第２異常検出部を診断する第２ＢＩＳＴ部とを有する第２演算回路と、前記カウント値を用いて前記積算角を演算する積算角演算部と、前記絶対位置情報を用いて前記モータに連動する回転軸の絶対角を演算する絶対角演算部と、前記積算角及び前記絶対角の比較に基づいて前記第１演算回路及び前記第２演算回路の少なくとも一方の異常を検出する第３異常検出部と、前記第３異常検出部を診断する第３ＢＩＳＴ部とを有する第３演算部とを備え、前記第１ＢＩＳＴ部、前記第２ＢＩＳＴ部、及び前記第３ＢＩＳＴ部による診断の実行タイミングは、互いに異なる。
【０００９】
ここで、ＢＩＳＴ部による異常検出部の診断を実行した後、診断対象とした異常検出部を備える角度演算装置としては、その動作状態が異常を検出した状態に設定されてしまうため、この異常を検出した状態を解除してモータに連動する回転軸の絶対角を演算することができる動作状態に戻すべく、異常を検出した状態をリセットする必要がある。
【００１０】
そして、上記構成のように、複数のＢＩＳＴ部による複数の異常検出部の診断を実行しなければいけない場合には、何れかのＢＩＳＴ部による診断の実行中に、他のＢＩＳＴ部による診断に伴い角度演算装置の動作状態がリセットされると、診断の結果が正しく得られなくなる可能性がある。
【００１１】
この点、上記構成によれば、各ＢＩＳＴ部の診断の実行タイミングを互いに異ならせていることから、各ＢＩＳＴ部による診断の実行中に他のＢＩＳＴ部による診断の実行に伴い角度演算装置の動作状態がリセットされる状況の発生を抑制することができる。これにより、各ＢＩＳＴ部が対象とする異常検出部の診断に関する信頼性を向上させることができる。したがって、角度演算装置による絶対角の演算の信頼性を向上させることができる。
【００１２】
また、上述したのと同様に、第１センサ及び第２センサによる検出結果のサンプリングタイミングにおいてＢＩＳＴ部による診断の実行に伴い角度演算装置の動作状態がリセットされると、第１センサ及び第２センサによる検出結果のサンプリングが正しく実行されなくなる可能性がある。
【００１３】
これに対処するべく、前記第１ＢＩＳＴ部、前記第２ＢＩＳＴ部、及び前記第３ＢＩＳＴ部による診断の実行タイミングは、前記第１センサ及び前記第２センサによる検出結果のサンプリングタイミングと異なることが好ましい。
【００１４】
上記構成によれば、各ＢＩＳＴ部による診断の実行タイミングを、第１センサ及び第２センサによる検出結果のサンプリングタイミングと異ならせていることから、サンプリングタイミングにおいてＢＩＳＴ部による診断の実行に伴い角度演算装置の動作状態がリセットされる状況の発生を抑制することができる。これにより、第１センサ及び第２センサの検出結果のサンプリングに関する信頼性を向上させることができる。
【００１５】
なお、第３異常検出部での異常の検出の際に用いる積算角及び絶対角は、モータの動作に応じて変化するものである。このため、積算角及び絶対角の変化は、互いに関連している。
【００１６】
つまり、上記の角度演算装置において、前記第３異常検出部は、前記積算角の単位時間あたりの変化量と、前記絶対角の単位時間あたりの変化量とを用いて、前記第１演算回路及び前記第２演算回路の少なくとも一方の異常を検出することができる。
【００１７】
上記の角度演算装置と前記機械装置としての転舵ユニットとを備える転舵装置において、前記転舵ユニットは、直線運動することにより転舵輪を転舵させる転舵シャフトと、前記転舵シャフトに噛み合わせられたピニオンシャフトと、前記転舵シャフトに付与される動力の発生源である転舵モータと、前記転舵モータが発生する動力を前記転舵シャフトに伝達する伝達機構とを有し、前記検出対象は、前記転舵モータに連動するように設けられている前記ピニオンシャフトである。
【００１８】
上記構成によれば、転舵装置が上記の角度演算装置を備えていることにより、第１センサの検出結果及び第２センサの検出結果から、ピニオンシャフトの絶対角を求める必要がある場合には、演算されたピニオンシャフトの絶対角の信頼性を向上できる転舵装置を実現することができる。
【発明の効果】
【００１９】
本発明によれば、角度演算装置及び転舵装置による絶対角の演算の信頼性を向上させることができる。
【図面の簡単な説明】
【００２０】
【図１】角度演算装置及び転舵装置の一実施形態が搭載される操舵装置の概略構成図。
【図２】転舵制御部を示すブロック図。
【図３】第１演算回路を示すブロック図。
【図４】第２演算回路を示すブロック図。
【図５】第３演算回路を示すブロック図。
【図６】第１絶対角情報及び第２絶対角情報と第１ピニオンシャフトの絶対角との関係を示すグラフ。
【図７】各ＢＩＳＴ部による診断の実行タイミングと、サンプリングタイミングとの関係を示す図。
【発明を実施するための形態】
【００２１】
以下、角度演算装置及び転舵装置をステアバイワイヤ方式の操舵装置に搭載した一実施形態について説明する。
図１に示すように、車両の操舵装置１０は、ステアリングホイール１１に連結されたステアリングシャフト１２を有している。ステアリングシャフト１２におけるステアリングホイール１１と反対側の端部には、第１ピニオンシャフト１３が設けられている。第１ピニオンシャフト１３の第１ピニオン歯１３ａは、第１ピニオンシャフト１３に対して交わる方向へ延びる転舵シャフト１４の第１ラック歯１４ａに噛み合わされている。転舵シャフト１４の両端には、それぞれタイロッド１５，１５を介して左右の転舵輪１６，１６が連結されている。
【００２２】
操舵装置１０は、クラッチ２１およびクラッチ制御部２２を有している。
クラッチ２１はステアリングシャフト１２の途中に設けられている。クラッチ２１としては、励磁コイルに対する通電の断続を通じて動力の断続を行う電磁クラッチが採用される。クラッチ２１が切断されるとき、ステアリングホイール１１と転舵輪１６，１６との間の動力伝達が切断される。クラッチ２１が接続されるとき、ステアリングホイール１１と転舵輪１６，１６との間の動力伝達が連結される。
【００２３】
クラッチ制御部２２は、クラッチ２１の断続を制御する。クラッチ制御部２２は、クラッチ２１の励磁コイルに通電することによってクラッチ２１を接続された状態から切断された状態へ切り替える。また、クラッチ制御部２２は、クラッチ２１の励磁コイルに対する通電を停止することによってクラッチ２１を切断された状態から接続された状態へ切り替える。
【００２４】
クラッチ２１が接続された状態において、ステアリングシャフト１２、第１ピニオンシャフト１３、及び転舵シャフト１４は、ステアリングホイール１１と転舵輪１６，１６との間の動力伝達経路として機能する。すなわち、ステアリングホイール１１の回転操作に伴い転舵シャフト１４が直線運動することにより、転舵輪１６，１６の転舵角θｔが変更される。
【００２５】
操舵装置１０は、操舵反力を生成するための構成として、反力モータ３１、第１減速機構３２、第１回転角センサ３３、トルクセンサ３４、及び反力制御部３５を有している。操舵反力とは、運転者によるステアリングホイール１１の操作方向と反対方向へ向けて作用する力（トルク）をいう。操舵反力をステアリングホイール１１に付与することにより、運転者に適度な手応え感を与えることが可能である。
【００２６】
反力モータ３１は、操舵反力の発生源である。反力モータ３１としては、たとえば３相（Ｕ相、Ｖ相、Ｗ相）のブラシレスモータが採用される。反力モータ３１の回転軸は、第１減速機構３２を介して、ステアリングシャフト１２に連結されている。第１減速機構３２は、反力モータ３１の回転を減速し、当該減速した回転力をステアリングシャフト１２に伝達する。第１減速機構３２は、ステアリングシャフト１２におけるクラッチ２１よりもステアリングホイール１１側の部分に設けられている。反力モータ３１のトルクは、操舵反力としてステアリングシャフト１２に付与される。
【００２７】
第１回転角センサ３３は、反力モータ３１に設けられている。第１回転角センサ３３は、反力モータ３１の回転軸の回転角を０度〜３６０度の範囲で検出する相対角センサである。第１回転角センサ３３は、反力モータ３１の回転軸の回転角θａに応じた電気信号Ｓａを生成する。第１回転角センサ３３としては、たとえば磁気センサの一種であるＭＲセンサ（磁気抵抗効果センサ）が採用される。ＭＲセンサは、転舵モータ４１の出力軸の端部に設けられる一対の磁極（Ｎ極、Ｓ極）を有するバイアス磁石の磁界方向に応じた電気信号Ｓａを生成する。電気信号Ｓａは、反力モータ３１の回転軸の回転角θａに対して正弦波状に変化する正弦波信号Ｓｓｉｎ、及び反力モータ３１の回転軸の回転角θａに対して余弦波状に変化する余弦波信号Ｓｃｏｓを含んでいる。これら正弦波信号Ｓｓｉｎ及び余弦波信号Ｓｃｏｓは、それぞれ転舵モータ４１がバイアス磁石の１磁極対分に相当する角度（ここでは３６０度）だけ回転する期間を１周期とする信号である。
【００２８】
トルクセンサ３４は、ステアリングホイール１１の回転操作を通じてステアリングシャフト１２に加わる操舵トルクＴｈを検出する。トルクセンサ３４は、ステアリングシャフト１２における第１減速機構３２よりもステアリングホイール１１側の部分に設けられている。
【００２９】
反力制御部３５は、反力モータ３１の駆動制御を通じて操舵トルクＴｈに応じた操舵反力を発生させる反力制御を実行する。反力制御部３５は、トルクセンサ３４を通じて検出される操舵トルクＴｈ、及び車速センサ３６を通じて検出される車速Ｖに基づいて目標操舵反力を演算し、この演算される目標操舵反力に基づいてステアリングホイール１１の目標操舵角θ＊を演算する。反力制御部３５は、演算した目標操舵角θ＊を転舵制御部４７に出力する。反力制御部３５は、第１回転角センサ３３により生成される電気信号Ｓａに基づき反力モータ３１の回転角θａを演算し、当該演算される回転角θａに基づきステアリングホイール１１の実際の操舵角θｓを演算する。なお、反力モータ３１とステアリングシャフト１２とは第１減速機構３２を介して連動する。このため、反力モータ３１の回転軸の回転角θａとステアリングシャフト１２の回転角との間には相関がある。また、ステアリングシャフト１２の回転角と、ステアリングホイール１１の回転角である操舵角θｓとの間にも相関がある。したがって、操舵角θｓは、反力モータ３１の回転軸の回転角θａに基づいて求めることができる。反力制御部３５は、第１回転角センサ３３により生成される電気信号Ｓａに基づいてステアリングホイール１１の操舵角θｓを演算する。そして、反力制御部３５は、目標操舵角θ＊と実際の操舵角θｓとの偏差を求め、当該偏差を無くすように反力モータ３１に対する給電を制御する。
【００３０】
また、反力制御部３５は、クラッチ接続条件の成否に基づきクラッチ２１の断続を切り替える断続制御を実行する。クラッチ接続条件としては、例えば、つぎの（ａ）〜（ｃ）が挙げられる。
【００３１】
ａ．車両の始動スイッチがオフされていること。なお、始動スイッチは、車両駆動源からの供給される電力の通電及び遮断を切り替えるスイッチである。始動スイッチのオンオフ状態を示す始動信号Ｓｉｇは反力制御部３５及び転舵制御部４７に入力される。
【００３２】
ｂ．反力モータ３１を含む操舵反力を発生させるための構成要素に異常が検出されること。
ｃ．転舵モータ４１を含む転舵力を発生させるための構成に異常が検出されること。
【００３３】
反力制御部３５は、クラッチ接続条件が成立するときにはクラッチ２１を接続する旨の指令信号を生成する。一方、反力制御部３５は、クラッチ接続条件が成立しないときにはクラッチ２１を切断する旨の指令信号を生成する。クラッチ制御部２２は、反力制御部３５により生成される指令信号に基づきクラッチ２１の断続を制御する。
【００３４】
また、操舵装置１０は、転舵輪１６，１６を転舵させるための動力である転舵力を生成するための構成として、転舵モータ４１、第２減速機構４２、第２ピニオンシャフト４３、第２回転角センサ４４、トルクアングルセンサ（以下、「ＴＡＳ４６」という。）、及び転舵制御部４７を有している。なお、特許請求の範囲で記載した第１センサは、第２回転角センサ４４である。
【００３５】
なお、第２減速機構４２および第２ピニオンシャフト４３は、転舵モータ４１が発生する動力を転舵シャフト１４に伝達する伝達機構を構成する。第１ピニオンシャフト１３、転舵シャフト１４、転舵モータ４１、第２減速機構４２、第２ピニオンシャフト４３、及び第２回転角センサ４４は、機械装置としての転舵ユニットＵ２を構成する。また、転舵ユニットＵ２、ＴＡＳ４６、及び転舵制御部４７は、転舵装置１０ｂを構成する。
【００３６】
転舵モータ４１は転舵力の発生源である。転舵モータ４１としては、たとえば３相（Ｕ相、Ｖ相、Ｗ相）のブラシレスモータが採用される。転舵モータ４１の回転軸は、第２減速機構４２を介して、第２ピニオンシャフト４３に連結されている。第２減速機構４２は、転舵モータ４１の回転を減速し、当該減速した回転力をステアリングシャフト１２に伝達する。第２ピニオンシャフト４３の第２ピニオン歯４３ａは、転舵シャフト１４の第２ラック歯１４ｂに噛み合わされている。転舵モータ４１のトルクは、転舵力として、第２ピニオンシャフト４３を介して転舵シャフト１４に付与される。転舵シャフト１４は、転舵モータ４１の回転に応じて、車幅方向（図中の左右方向）に沿って移動する。
【００３７】
第２回転角センサ４４は、転舵モータ４１に設けられている。第２回転角センサ４４は、転舵モータ４１の回転軸の回転角を０度〜３６０度の範囲で検出する相対角センサである。第２回転角センサ４４は、転舵モータ４１の回転軸の回転角θｂに応じた電気信号Ｓｂを生成する。第２回転角センサ４４としては、例えばＭＲセンサが採用される。電気信号Ｓｂは、転舵モータ４１の回転軸の回転角θｂに対して正弦波状に変化する正弦波信号Ｓｓｉｎ、及び転舵モータ４１の回転軸の回転角θｂに対して余弦波状に変化する余弦波信号Ｓｃｏｓを含んでいる。
【００３８】
ＴＡＳ４６は、第１ピニオンシャフト１３に作用するトルクＴｐを検出するとともに、第１ピニオンシャフト１３の３６０度を超える多回転にわたる絶対位置であるピニオン角θｐａを検出する絶対角センサである。ＴＡＳ４６は、第１ピニオンシャフト１３（詳しくは、転舵シャフト１４と共に第１ピニオンシャフト１３を収容するハウジング）に設けられている。ＴＡＳ４６は、第１ピニオンシャフト１３のピニオン角θｐａを検出するための第１ピニオン角センサ４６ａ及び第２ピニオン角センサ４６ｂと、第１ピニオンシャフト１３に作用するトルクＴｐを検出するピニオントルクセンサ４６ｃとを有している。第１ピニオンシャフト１３の外周には、互いに歯数の異なる２つのギア部が噛み合わされている。第１ピニオンシャフト１３の外周面には、第１ギア部及び第２ギア部に噛み合うギアが設けられている。第１ギア部の減速比と第２ギア部の減速比とは互いに異なる。第１ピニオン角センサ４６ａは、第１ピニオンシャフト１３の回転に応じて回転する第１ギア部の回転角を０度〜３６０度の範囲で検出する相対角センサである。第１ピニオン角センサ４６ａは、第１ギア部の回転角に応じた電気信号Ｓｇ１を生成する。電気信号Ｓｇ１は、第１ギア部の回転角に対して正弦波状に変化する正弦波信号Ｓｓｉｎ、及び第１ギア部の回転角に対して余弦波状に変化する余弦波信号Ｓｃｏｓを含んでいる。第２ピニオン角センサ４６ｂは、第１ピニオンシャフト１３の回転に応じて回転する第２ギア部の回転角を０度〜３６０度の範囲で検出する相対角センサである。第２ピニオン角センサ４６ｂは、第２ギア部の回転角に応じた電気信号Ｓｇ２を生成する。電気信号Ｓｇ２は、第２ギア部の回転角に対して正弦波状に変化する正弦波信号Ｓｓｉｎ、及び第２ギア部の回転角に対して余弦波状に変化する余弦波信号Ｓｃｏｓを含んでいる。第１ピニオン角センサ４６ａ及び第２ピニオン角センサ４６ｂとしては、例えばＭＲセンサが採用される。なお、特許請求の範囲で記載した第２センサは、第１ピニオン角センサ４６ａ及び第２ピニオン角センサ４６ｂである。
【００３９】
転舵制御部４７は、転舵モータ４１の制御を通じて転舵輪１６，１６を操舵状態に応じて転舵させる転舵制御を実行する。転舵制御部４７は、第２回転角センサ４４を通じて検出される転舵モータ４１の回転角θｂに基づき第１ピニオンシャフト１３の実際の回転角であるピニオン角θｐａ（絶対角）を演算する。なお、転舵モータ４１と第２ピニオンシャフト４３とは第２減速機構４２を介して連動する。このため、転舵モータ４１の回転軸の回転角θｂと第２ピニオンシャフト４３の回転角との間には相関がある。また、第２ピニオンシャフト４３の第２ピニオン歯４３ａは転舵シャフト１４の第２ラック歯１４ｂに噛み合わされ、第１ピニオンシャフト１３の第１ピニオン歯１３ａは転舵シャフト１４の第１ラック歯１４ａに噛み合わされていることから、第２ピニオンシャフト４３の回転角であるピニオン角θｐｂと第１ピニオンシャフト１３のピニオン角θｐａとの間には相関がある。したがって、ピニオン角θｐａは、転舵モータ４１の回転軸の回転角θｂに基づいて求めることができる。転舵制御部４７は、第２回転角センサ４４により生成される電気信号Ｓｂに基づいて第１ピニオンシャフト１３のピニオン角θｐａを演算する。また、転舵制御部４７は、反力制御部３５により演算される目標操舵角θ＊を使用して目標ピニオン角を演算する。そして、転舵制御部４７は、目標ピニオン角と実際のピニオン角θｐａとの偏差を求め、当該偏差を無くすように転舵モータ４１に対する給電を制御する。
【００４０】
転舵制御部４７とＴＡＳ４６との間の通信規格としては、たとえばＳＰＩ（Serial Peripheral Interface）が採用される。ＳＰＩは、同期式のシリアル通信の規格の一種である。
【００４１】
また、転舵制御部４７も先のクラッチ接続条件（ａ）〜（ｃ）の成否に基づきクラッチ２１の断続を切り替える断続制御を実行する。転舵制御部４７は、クラッチ接続条件が成立するときにはクラッチ２１を接続する旨の指令信号を生成する一方、クラッチ接続条件が成立しないときにはクラッチを切断する旨の指令信号を生成する。この指令信号はクラッチ制御部２２に対するものである。クラッチ制御部２２は、反力制御部３５から指令信号を取得できない場合には、転舵制御部４７により生成される指令信号に基づきクラッチ２１の断続を制御する。
【００４２】
クラッチ２１が接続状態にある場合、転舵制御部４７は、ＴＡＳ４６のピニオントルクセンサ４６ｃにより検出される第１ピニオンシャフト１３に作用するトルクＴｐに基づいて、転舵モータ４１の動作を制御することができる。この場合、転舵制御部４７が運転者のステアリングホイール１１の回転操作をアシストするアシスト制御を実行する。このような、転舵制御部４７がアシスト制御を実行する場合としては、例えば、反力制御部３５が動作を停止している場合が挙げられる。
【００４３】
また、転舵制御部４７も先のクラッチ接続条件（ａ）〜（ｃ）の成否に基づきクラッチ２１の断続を切り替える断続制御を実行する。転舵制御部４７は、クラッチ接続条件が成立するときにはクラッチ２１を接続する旨の指令信号を生成する一方、クラッチ接続条件が成立しないときにはクラッチを切断する旨の指令信号を生成する。この指令信号はクラッチ制御部２２に対するものである。クラッチ制御部２２は、反力制御部３５から指令信号を取得できない場合には、転舵制御部４７により生成される指令信号に基づきクラッチ２１の断続を制御する。
【００４４】
転舵制御部４７の機能について説明する。
図２に示すように、角度演算装置としての転舵制御部４７は、第１演算回路５０と、第２演算回路６０と、第３演算回路７０と、駆動回路８０とを備えている。
【００４５】
第１演算回路５０は、電子回路やフリップフロップ等を組み合わせた論理回路を単一のチップにパッケージ化することにより構成したものである。第１演算回路５０は、いわゆるＡＳＩＣ（application specific integrated circuit：特定用途向け集積回路）である。第１演算回路５０は、特定の入力（ここでは、第２回転角センサ４４の電気信号Ｓｂ）に対して定められた出力を行う。第１演算回路５０は、第１接続線９１を介して車両に搭載されたバッテリ９０に常時接続されるとともに、途中に電源リレー９２が設けられた第２接続線９３を介してバッテリ９０に接続されている。電源リレー９２としては、機械式リレーやＦＥＴ（電界効果型トランジスタ）等が採用されている。電源リレー９２は、始動信号Ｓｉｇに応じて開閉する。すなわち、始動スイッチがオンされている場合、言い換えるとオン状態である旨示す始動信号Ｓｉｇが電源リレー９２に入力される場合、バッテリ９０と第１演算回路５０との間で電源リレー９２を通じて電力が通電される。始動スイッチがオフされている場合、言い換えるとオフ状態である旨示す始動信号Ｓｉｇが電源リレー９２に入力される場合、バッテリ９０と第１演算回路５０との間で電源リレー９２を通じて電力が遮断される。また、第１演算回路５０には、第２回転角センサ４４により生成された電気信号Ｓｂが入力される。第１演算回路５０は、電気信号Ｓｂに基づいて、後述するように転舵モータ４１のマルチターン数（多回転数）を示す回転数情報としてのカウント値Ｃを第３演算回路７０に出力する。
【００４６】
第１演算回路５０は、バッテリ９０の電源電圧を所定電圧範囲内の制御電圧Ｖｃｏに降圧する電源回路１００を備えている。電源回路１００には、第１接続線９１及び第２接続線９３が接続されている。電源回路１００には、接続線１００ａを介して第３演算回路７０及び第２演算回路６０が接続されている。電源回路１００は、第３演算回路７０及び第２演算回路６０に制御電圧Ｖｃｏを印加する。
【００４７】
駆動回路８０は、途中に駆動リレー９５が設けられた電源線９４を介してバッテリ９０に接続されている。駆動リレー９５としては、機械式リレーやＦＥＴ（電界効果型トランジスタ）等が採用されている。
【００４８】
第３演算回路７０は、第１演算回路５０を介してバッテリ９０に接続されている。第３演算回路７０は、始動スイッチがオン状態である場合、第１演算回路５０から所定電圧範囲内の制御電圧Ｖｃｏが供給されることで動作する。第３演算回路７０は、第１演算回路５０から制御電圧Ｖｃｏが供給されることで動作を開始すると、駆動リレー９５にリレー信号Ｓｒｌを出力する。駆動リレー９５は、第３演算回路７０から出力されるリレー信号Ｓｒｌに応じて開閉する。リレー信号Ｓｒｌに基づいて駆動リレー９５が閉状態となることにより、転舵モータ４１に駆動電力が供給可能な状態となる。
【００４９】
第２演算回路６０は、電子回路やフリップフロップ等を組み合わせた論理回路を単一のチップにパッケージ化することにより構成したものである。第２演算回路６０は、いわゆるＡＳＩＣである。第２演算回路６０は、特定の入力（ここでは、第１ピニオン角センサ４６ａの電気信号Ｓｇ１及び第２ピニオン角センサ４６ｂの電気信号Ｓｇ２）に対して定められた出力を行う。第２演算回路６０は、始動スイッチがオン状態である場合、第１演算回路５０から所定電圧範囲内の制御電圧Ｖｃｏが供給されることで動作する。また、第２演算回路６０には、第１ピニオン角センサ４６ａにより生成された電気信号Ｓｇ１及び第２ピニオン角センサ４６ｂにより生成された電気信号Ｓｇ２が入力される。第２演算回路６０は、電気信号Ｓｇ１及び電気信号Ｓｇ２に基づいて、後述するように第１ピニオンシャフト１３のピニオン角θｐａを演算するための絶対角情報である第１絶対角情報θｇ１及び第２絶対角情報θｇ２を演算し、これら第１絶対角情報θｇ１及び第２絶対角情報θｇ２を第３演算回路７０に出力する。
【００５０】
第３演算回路７０は、制御電圧Ｖｃｏが供給される場合、第１ピニオンシャフト１３のピニオン角θｐａを演算するとともに、転舵モータ４１に供給される電力を制御する。第３演算回路７０は、例えばマイクロプロセッシングユニット（マイコン）等からなる。第３演算回路７０には、第１演算回路５０及び第２演算回路６０が接続されている。第３演算回路７０には、第１演算回路５０により演算されたカウント値Ｃと、第２演算回路６０により演算された第１絶対角情報θｇ１及び第２絶対角情報θｇ２とが入力される。また、第３演算回路７０には、第２回転角センサ４４により生成された電気信号Ｓｂと、車速センサ３６により検出された車速Ｖと、反力制御部３５により演算された目標操舵角θ＊と、電流センサ８１により検出された実電流値Ｉと、ピニオントルクセンサ４６ｃにより検出されたトルクＴｐが入力される。電流センサ８１は、転舵モータ４１と駆動回路８０との間の給電経路に設けられている。第３演算回路７０は、これらの各種の入力値に基づいて、転舵モータ４１の駆動に必要なモータ制御信号Ｓｍを演算する。第３演算回路７０は、演算したモータ制御信号Ｓｍを駆動回路８０に出力する。
【００５１】
第１演算回路５０の機能について説明する。
図３に示すように、第１演算回路５０は、電源回路１００と、カウンタ回路１０１と、通信インターフェース１０２とを備えている。
【００５２】
図２及び図３に示すように、電源回路１００には、接続線１００ａを介して第３演算回路７０及び第２演算回路６０が接続されているとともに、第１演算回路５０を構成する各回路が接続されている。なお、図３では、便宜上、電源回路１００と第１演算回路５０を構成する各回路とを接続する接続線を省略している。電源回路１００は、始動スイッチがオン状態である場合にのみ、第３演算回路７０及び第２演算回路６０に制御電圧Ｖｃｏを供給する一方、始動スイッチのオン状態及びオフ状態に関係なく第１演算回路５０を構成する各回路に制御電圧Ｖｃｏを常時供給する。これにより、第１演算回路５０を構成する各回路は、始動スイッチがオン状態である場合だけでなく、オフ状態である場合においても動作する。また、電源回路１００は、始動スイッチのオン状態及びオフ状態に関係なく第２回転角センサ４４に当該第２回転角センサ４４が動作に必要な動作電圧を常時供給する。
【００５３】
図３に示すように、カウンタ回路１０１には、第２回転角センサ４４により生成される電気信号Ｓｂが入力される。カウンタ回路１０１は、電気信号Ｓｂに基づいて、転舵モータ４１のマルチターンの回転角を演算するために用いるカウント値Ｃを演算する。カウント値Ｃは、転舵モータ４１のマルチターン数を示す回転数情報である。本実施形態では、カウント値Ｃは、転舵モータ４１の回転軸の回転位置がその基準位置に対して何回転しているかを示す情報である。
【００５４】
カウンタ回路１０１は、カウンタ部１０１ａ、カウンタ異常検出部１０８、及びカウンタＢＩＳＴ部１１０を備えている。カウンタ部１０１ａは、増幅器１０３、コンパレータ１０４、象限判定部１０５、及びカウント値演算部１０６を備えている。
【００５５】
増幅器１０３には、第２回転角センサ４４により生成される電気信号Ｓｂが入力される。増幅器１０３は、第２回転角センサ４４から入力された電気信号Ｓｂを増幅し、コンパレータ１０４に出力する。
【００５６】
コンパレータ１０４は、増幅器１０３で増幅後の電気信号Ｓｂが、設定された閾値以上の値であればＨｉレベル、閾値未満の値であればＬｏレベルの信号を生成する。この閾値は、例えば「０」に設定される。
【００５７】
象限判定部１０５は、コンパレータ１０４により生成されるＨｉレベルの信号とＬｏレベルの信号とに基づいて、転舵モータ４１の回転軸の回転位置が存在する象限を示す情報である象限情報を生成する。転舵モータ４１の回転軸の１回転（３６０度）は、電気信号Ｓｂの正負の組み合わせから９０度ごとに４つの象限に分割されている。象限判定部１０５は、象限情報が示す転舵モータ４１の回転軸の回転位置が存在する象限の変化に基づいて、左回転フラグＦｌあるいは右回転フラグＦｒを生成する。象限判定部１０５は、転舵モータ４１の回転軸の回転位置が存在する象限が隣接する象限に変化するたびに、単位回転量（９０度）の回転がなされたものとする。象限判定部１０５は、転舵モータ４１の回転軸の回転位置が転舵モータ４１の回転の前に存在していた象限と転舵モータの回転の後に存在している象限との関係から、転舵モータ４１の回転軸の回転方向を特定する。
【００５８】
カウント値演算部１０６は、象限判定部１０５から取得した左回転フラグＦｌあるいは右回転フラグＦｒに基づいて、カウント値Ｃを演算する。カウント値演算部１０６は、フリップフロップ等を組み合わせた論理回路である。カウント値Ｃは、転舵モータ４１の回転軸の回転位置が、その基準位置に対して、単位回転量（９０度）だけ回転した回数を示している。カウント値演算部１０６は、象限判定部１０５から左回転フラグＦｌを取得する度にインクリメント（カウント値Ｃを１加算）し、象限判定部１０５から右回転フラグＦｒを取得する度にデクリメント（カウント値Ｃを１減算）する。このように、カウント値演算部１０６は、第２回転角センサ４４から電気信号Ｓｂが生成される度にカウント値Ｃを演算し、そのカウント値Ｃを記憶することができるように構成されている。カウント値演算部１０６によって演算されたカウント値Ｃは、通信インターフェース１０２に出力される。
【００５９】
通信インターフェース１０２は、始動スイッチがオン状態である場合に動作するように構成されているとともに、始動スイッチがオフ状態である場合に動作しないように構成されている。通信インターフェース１０２は、カウント値Ｃが入力されると、当該カウント値Ｃを第３演算回路７０に出力する。
【００６０】
また、第１演算回路５０には、電源回路１００の異常を検出する電圧異常検出部１０７及びカウント値演算部１０６の異常を検出するカウンタ異常検出部１０８が設けられている。電圧異常検出部１０７はカウンタ回路１０１の機能と別個の機能として設けられるとともに、カウンタ異常検出部１０８はカウンタ回路１０１の機能の一つとして設けられている。なお、特許請求の範囲で記載した第１異常検出部は、電圧異常検出部１０７及びカウンタ異常検出部１０８である。
【００６１】
電圧異常検出部１０７は、電源回路１００から出力される制御電圧Ｖｃｏが所定電圧範囲内にあるか否かに基づいて、電源回路１００の異常を検出する。具体的には、電圧異常検出部１０７は、電源回路１００から出力される制御電圧Ｖｃｏを検出し、当該制御電圧Ｖｃｏが所定電圧範囲の上限値よりも大きいか否か、及び所定電圧範囲の下限値よりも小さいか否かに基づいて、電源回路１００の異常の有無を検出する。電圧異常検出部１０７は、制御電圧Ｖｃｏが所定電圧範囲の上限値よりも大きい場合、あるいは所定電圧範囲の下限値よりも小さい場合には、電源回路１００に異常ありの検出結果を示す電圧異常フラグＦｂを生成する。一方、電圧異常検出部１０７は、制御電圧Ｖｃｏが所定電圧範囲の上限値以下、かつ所定電圧範囲の下限値以上である場合、電圧異常フラグＦｂを生成しない。電圧異常検出部１０７によって生成された電圧異常フラグＦｂは、通信インターフェース１０２に出力される。
【００６２】
カウンタ異常検出部１０８は、カウント値演算部１０６の出力値であるカウント値Ｃを連続する２回の演算周期分保持できるように構成されている。すなわち、カウンタ異常検出部１０８は、最新（今回）の演算周期のカウント値Ｃであるカウント今回値Ｃｎと、１つ前（前回）の演算周期のカウント値Ｃであるカウント前回値Ｃｎ−１とを保持する。そして、カウンタ異常検出部１０８は、象限判定部１０５により取得される左回転フラグＦｌあるいは右回転フラグＦｒ、カウント今回値Ｃｎ、及びカウント前回値Ｃｎ−１に基づいて、カウント値演算部１０６の異常を判定する。具体的には、カウンタ異常検出部１０８は、カウント今回値Ｃｎとカウント前回値Ｃｎ−１との差が、象限判定部１０５により取得される左回転フラグＦｌあるいは右回転フラグＦｒに示される転舵モータ４１の回転方向に即していない場合、カウント値演算部１０６に異常ありの検出結果を示すカウンタ異常フラグＦｃを生成する。例えば、カウンタ異常検出部１０８は、転舵モータ４１が回転していない場合に、カウント今回値Ｃｎとカウント前回値Ｃｎ−１との差が所定範囲内でなければ、カウンタ異常フラグＦｃを生成する。一方、カウンタ異常検出部１０８は、転舵モータ４１が回転していない場合に、カウント今回値Ｃｎとカウント前回値Ｃｎ−１との差が所定範囲内であれば、カウンタ異常フラグＦｃを生成しない。また、カウンタ異常検出部１０８は、転舵モータ４１が回転している場合に、カウント今回値Ｃｎとカウント前回値Ｃｎ−１との差が左回転フラグＦｌあるいは右回転フラグＦｒに示される転舵モータ４１の回転方向に即していれば、カウンタ異常フラグＦｃを生成しない。一方、カウンタ異常検出部１０８は、転舵モータ４１が回転している場合に、カウント今回値Ｃｎとカウント前回値Ｃｎ−１との差が左回転フラグＦｌあるいは右回転フラグＦｒに示される転舵モータ４１の回転方向に即していないとき、カウンタ異常フラグＦｃを生成する。カウンタ異常検出部１０８によって生成されたカウンタ異常フラグＦｃは、通信インターフェース１０２に出力される。
【００６３】
ここで、電圧異常検出部１０７に異常が発生すると、電圧異常検出部１０７の異常の検出対象、すなわち電源回路１００の異常を検出することができなくなる。また、カウンタ異常検出部１０８に異常が発生すると、カウンタ異常検出部１０８の異常の検出対象、すなわちカウント値演算部１０６の異常を検出できなくなる。
【００６４】
そこで、本実施形態の第１演算回路５０には、電圧異常検出部１０７及びカウンタ異常検出部１０８を診断するＢＩＳＴ（Built-in Self-test）部が設けられている。詳しくは、電圧異常検出部１０７を診断する電源ＢＩＳＴ部１０９がカウンタ回路１０１の機能とは別個の機能として設けられているとともに、カウンタ異常検出部１０８を診断するカウンタＢＩＳＴ部１１０がカウンタ回路１０１の機能の一つとして設けられている。なお、特許請求の範囲で記載した第１ＢＩＳＴ部は、カウンタＢＩＳＴ部１１０である。
【００６５】
電源ＢＩＳＴ部１０９は、電圧異常検出部１０７の診断の際、当該電圧異常検出部１０７が制御電圧Ｖｃｏの異常を検出するために想定している所定電圧範囲の上限値を変更し、電圧異常検出部１０７が電圧異常フラグＦｂを生成する状況を強制的に作り出すように動作する。そして、電源ＢＩＳＴ部１０９は、電圧異常検出部１０７が電圧異常フラグＦｂを生成したか否かに基づいて当該電圧異常検出部１０７を診断する。この診断において、電源ＢＩＳＴ部１０９は、電圧異常検出部１０７が電圧異常フラグＦｂを生成しない場合に当該電圧異常検出部１０７が異常であるとする診断結果を示す電源ＢＩＳＴ異常フラグＦ１を生成する。一方、電源ＢＩＳＴ部１０９は、電圧異常検出部１０７が電圧異常フラグＦｂを生成する場合に電源ＢＩＳＴ異常フラグＦ１を生成しない。電源ＢＩＳＴ部１０９によって生成された電源ＢＩＳＴ異常フラグＦ１は、通信インターフェース１０２に出力される。
【００６６】
カウンタＢＩＳＴ部１１０は、カウンタ異常検出部１０８の診断の際、異常の検出結果を導出するように規定された左回転フラグＦｌ、右回転フラグＦｒ、及びカウント値Ｃを示すテスト信号を当該カウンタ異常検出部１０８に対して出力し、カウンタ異常検出部１０８がカウンタ異常フラグＦｃを生成する状況を強制的に作り出すように動作する。そして、カウンタＢＩＳＴ部１１０は、カウンタ異常検出部１０８がカウンタ異常フラグＦｃを生成したか否かに基づいて当該カウンタ異常検出部１０８を診断する。この診断において、カウンタＢＩＳＴ部１１０は、カウンタ異常検出部１０８がカウンタ異常フラグＦｃを生成しない場合に当該カウンタ異常検出部１０８が異常であるとする診断結果を示すカウンタＢＩＳＴ異常フラグＦ１ａを生成する。一方、カウンタＢＩＳＴ部１１０は、カウンタ異常検出部１０８がカウンタ異常フラグＦｃを生成する場合にカウンタＢＩＳＴ異常フラグＦ１ａを生成しない。カウンタＢＩＳＴ部１１０によって生成されたカウンタＢＩＳＴ異常フラグＦ１ａは、通信インターフェース１０２に出力される。
【００６７】
通信インターフェース１０２は、電圧異常フラグＦｂ、カウンタ異常フラグＦｃ、電源ＢＩＳＴ異常フラグＦ１、及びカウンタＢＩＳＴ異常フラグＦ１ａが入力されると、これらフラグを第３演算回路７０に出力する。
【００６８】
第２演算回路６０の機能について説明する。
図４に示すように、第２演算回路６０は、第１絶対角情報θｇ１を演算して出力する第１絶対角情報演算回路１２０と、第２絶対角情報θｇ２を演算して出力する第２絶対角情報演算回路１３０とが設けられている。
【００６９】
第１絶対角情報演算回路１２０には、第１絶対角情報演算部１２１、第１絶対角情報異常検出部１２２、第１絶対角情報ＢＩＳＴ部１２３、及び通信インターフェース１２４が設けられている。第１絶対角情報演算部１２１は、増幅器１２５及びＡ／Ｄ変換器１２６（アナログ／デジタル変換器）からなる。
【００７０】
増幅器１２５は、第１ピニオン角センサ４６ａにより生成される電気信号Ｓｇ１が入力される。増幅器１２５は、第１ピニオン角センサ４６ａから入力された電気信号Ｓｇ１を増幅し、Ａ／Ｄ変換器１２６に出力する。
【００７１】
Ａ／Ｄ変換器１２６は、増幅器１２５で増幅後の電気信号Ｓｇ１（アナログ信号）をデジタル信号に変換して、第１絶対角情報θｇ１として出力する。
通信インターフェース１２４は、始動スイッチがオン状態である場合に動作するように構成されているとともに、始動スイッチがオフ状態である場合に動作しないように構成されている。通信インターフェース１２４は、第１絶対角情報θｇ１が入力されると、当該第１絶対角情報θｇ１を第３演算回路７０に出力する。
【００７２】
第２絶対角情報演算回路１３０には、第２絶対角情報演算部１３１、第２絶対角情報異常検出部１３２、第２絶対角情報ＢＩＳＴ部１３３、及び通信インターフェース１３４が設けられている。第２絶対角情報演算部１３１は、増幅器１３５及びＡ／Ｄ変換器１３６からなる。なお、特許請求の範囲で記載した絶対位置情報演算部は、第１絶対角情報演算部１２１及び第２絶対角情報演算部１３１である。
【００７３】
増幅器１３５は、第２ピニオン角センサ４６ｂにより生成される電気信号Ｓｇ２が入力される。増幅器１３５は、第２ピニオン角センサ４６ｂから入力された電気信号Ｓｇ２を増幅し、Ａ／Ｄ変換器１３６に出力する。
【００７４】
Ａ／Ｄ変換器１３６は、増幅器１３５で増幅後の電気信号Ｓｇ２（アナログ信号）をデジタル信号に変換して、第２絶対角情報θｇ２として出力する。
通信インターフェース１３４は、始動スイッチがオン場合に動作するように構成されているとともに、始動スイッチがオフ状態である場合に動作しないように構成されている。通信インターフェース１３４は、第２絶対角情報θｇ２が入力されると、当該第２絶対角情報θｇ２を第３演算回路７０に出力する。
【００７５】
第２演算回路６０には、第１絶対角情報演算部１２１の異常を検出する第１絶対角情報異常検出部１２２及び第２絶対角情報演算部１３１の異常を検出する第２絶対角情報異常検出部１３２が設けられている。第１絶対角情報異常検出部１２２は、第１絶対角情報演算部１２１の機能と別個の機能として設けられている。また、第２絶対角情報異常検出部１３２は、第２絶対角情報演算部１３１の機能と別個の機能として設けられている。なお、特許請求の範囲で記載した第２異常検出部は、第１絶対角情報異常検出部１２２及び第２絶対角情報異常検出部１３２である。
【００７６】
第１絶対角情報異常検出部１２２は、Ａ／Ｄ変換器１２６からの出力値である第１絶対角情報θｇ１を連続する２回の演算周期分保持することができるように構成されている。すなわち、第１絶対角情報異常検出部１２２は、最新（今回）の演算周期の第１絶対角情報θｇ１と、一つ前（前回）の演算周期の第１絶対角情報θｇ１とを保持する。また、第１絶対角情報異常検出部１２２は、前回の演算周期の第１絶対角情報θｇ１、今回の演算周期の第１絶対角情報θｇ１、及び電気信号Ｓｇ１に基づいて、第１絶対角情報演算部１２１の異常を判定する。具体的には、第１絶対角情報異常検出部１２２は、前回の演算周期の第１絶対角情報θｇ１と今回の演算周期の第１絶対角情報θｇ１との差が、電気信号Ｓｇ１から求められる転舵モータ４１の回転方向に即していない場合、第１絶対角情報演算部１２１に異常ありの検出結果を示す第１絶対角情報異常フラグＦａａを生成する。例えば、第１絶対角情報異常検出部１２２は、転舵モータ４１が回転していない場合に、前回の演算周期の第１絶対角情報θｇ１と今回の演算周期の第１絶対角情報θｇ１との差が所定範囲内でなければ、第１絶対角情報異常フラグＦａａを生成する。一方、第１絶対角情報異常検出部１２２は、転舵モータ４１が回転していない場合に、前回の演算周期の第１絶対角情報θｇ１と今回の演算周期の第１絶対角情報θｇ１との差が所定範囲内であれば、第１絶対角情報異常フラグＦａａを生成しない。また、第１絶対角情報異常検出部１２２は、転舵モータ４１が回転している場合に、前回の演算周期の第１絶対角情報θｇ１と今回の演算周期の第１絶対角情報θｇ１との差が電気信号Ｓｇ１から求められる転舵モータ４１の回転方向に即していれば、第１絶対角情報異常フラグＦａａを生成しない。一方、第１絶対角情報異常検出部１２２は、転舵モータ４１が回転している場合に、前回の演算周期の第１絶対角情報θｇ１と今回の演算周期の第１絶対角情報θｇ１との差が電気信号Ｓｇ１から求められる転舵モータ４１の回転方向に即していないとき、第１絶対角情報異常フラグＦａａを生成する。第１絶対角情報異常検出部１２２によって生成された第１絶対角情報異常フラグＦａａは、通信インターフェース１２４に出力される。
【００７７】
第２絶対角情報異常検出部１３２は、Ａ／Ｄ変換器１３６からの出力値である第２絶対角情報θｇ２を連続する２回の演算周期分保持することができるように構成されている。すなわち、第２絶対角情報異常検出部１３２は、最新（今回）の演算周期の第２絶対角情報θｇ２と、一つ前（前回）の演算周期の第２絶対角情報θｇ２とを保持する。また、第２絶対角情報異常検出部１３２は、前回の演算周期の第２絶対角情報θｇ２、今回の演算周期の第２絶対角情報θｇ２、及び電気信号Ｓｇ２に基づいて、第２絶対角情報演算部１３１の異常を判定する。具体的には、第２絶対角情報異常検出部１３２は、前回の演算周期の第２絶対角情報θｇ２と今回の演算周期の第２絶対角情報θｇ２との差が、電気信号Ｓｇ２から求められる転舵モータ４１の回転方向に即していない場合、第２絶対角情報演算部１３１に異常ありの検出結果を示す第２絶対角情報異常フラグＦａｂを生成する。例えば、第２絶対角情報異常検出部１３２は、転舵モータ４１が回転していない場合に、前回の演算周期の第２絶対角情報θｇ２と今回の演算周期の第２絶対角情報θｇ２との差が所定範囲内でなければ、第２絶対角情報異常フラグＦａｂを生成する。一方、第２絶対角情報異常検出部１３２は、転舵モータ４１が回転していない場合に、前回の演算周期の第２絶対角情報θｇ２と今回の演算周期の第２絶対角情報θｇ２との差が所定範囲内であれば、第２絶対角情報異常フラグＦａｂを生成しない。また、第２絶対角情報異常検出部１３２は、転舵モータ４１が回転している場合に、前回の演算周期の第２絶対角情報θｇ２と今回の演算周期の第２絶対角情報θｇ２との差が電気信号Ｓｇ２から求められる転舵モータ４１の回転方向に即していれば、第２絶対角情報異常フラグＦａｂを生成しない。一方、第２絶対角情報異常検出部１３２は、転舵モータ４１が回転している場合に、前回の演算周期の第２絶対角情報θｇ２と今回の演算周期の第２絶対角情報θｇ２との差が電気信号Ｓｇ２から求められる転舵モータ４１の回転方向に即していないとき、第２絶対角情報異常フラグＦａｂを生成する。第２絶対角情報異常検出部１３２によって生成された第２絶対角情報異常フラグＦａｂは、通信インターフェース１３４に出力される。
【００７８】
ここで、第１絶対角情報異常検出部１２２に異常が発生すると、第１絶対角情報異常検出部１２２の異常の検出対象、すなわち第１絶対角情報演算部１２１の異常を検出することができなくなる。また、第２絶対角情報異常検出部１３２に異常が発生すると、第２絶対角情報異常検出部１３２の異常の検出対象、すなわち第２絶対角情報演算部１３１の異常を検出することができなくなる。
【００７９】
そこで、本実施形態の第２演算回路６０には、第１絶対角情報異常検出部１２２を診断する第１絶対角情報ＢＩＳＴ部１２３が第１絶対角情報演算部１２１の機能とは別個の機能として設けられているとともに、第２絶対角情報異常検出部１３２を診断する第２絶対角情報ＢＩＳＴ部１３３が第２絶対角情報演算部１３１の機能とは別個の機能として設けられている。なお、特許請求の範囲で記載した第２ＢＩＳＴ部は、第１絶対角情報ＢＩＳＴ部１２３及び第２絶対角情報ＢＩＳＴ部１３３である。
【００８０】
第１絶対角情報ＢＩＳＴ部１２３は、第１絶対角情報異常検出部１２２の診断の際、異常の検出結果を導出するように規定された転舵モータ４１の回転方向及び第１絶対角情報θｇ１を示すテスト信号を当該第１絶対角情報異常検出部１２２に対して出力し、第１絶対角情報異常検出部１２２が第１絶対角情報異常フラグＦａａを生成する状況を強制的に作り出すように動作する。そして、第１絶対角情報ＢＩＳＴ部１２３は、第１絶対角情報異常検出部１２２が第１絶対角情報異常フラグＦａａを生成したか否かに基づいて当該第１絶対角情報異常検出部１２２を診断する。この診断において、第１絶対角情報ＢＩＳＴ部１２３は、第１絶対角情報異常検出部１２２が第１絶対角情報異常フラグＦａａを生成しない場合に当該第１絶対角情報異常検出部１２２が異常であるとする診断結果を示す第１絶対角情報ＢＩＳＴ異常フラグＦ２ａを生成する。一方、第１絶対角情報ＢＩＳＴ部１２３は、第１絶対角情報異常検出部１２２が第１絶対角情報異常フラグＦａａを生成する場合に第１絶対角情報ＢＩＳＴ異常フラグＦ２ａを生成しない。第１絶対角情報ＢＩＳＴ部１２３によって生成された第１絶対角情報ＢＩＳＴ異常フラグＦ２ａは、通信インターフェース１２４に出力される。
【００８１】
通信インターフェース１２４は、第１絶対角情報異常フラグＦａａ及び第１絶対角情報ＢＩＳＴ異常フラグＦ２ａが入力されると、これらフラグを第３演算回路７０に出力する。
【００８２】
第２絶対角情報ＢＩＳＴ部１３３は、第２絶対角情報異常検出部１３２の診断の際、異常の検出結果を導出するように規定された転舵モータ４１の回転方向及び第２絶対角情報θｇ２を示すテスト信号を当該第２絶対角情報異常検出部１３２に対して出力し、第２絶対角情報異常検出部１３２が第２絶対角情報異常フラグＦａｂを生成する状況を強制的に作り出すように動作する。そして、第２絶対角情報ＢＩＳＴ部１３３は、第２絶対角情報異常検出部１３２が第２絶対角情報異常フラグＦａｂを生成したか否かに基づいて当該第２絶対角情報異常検出部１３２を診断する。この診断において、第２絶対角情報ＢＩＳＴ部１３３は、第２絶対角情報異常検出部１３２が第２絶対角情報異常フラグＦａｂを生成しない場合に当該第２絶対角情報異常検出部１３２が異常であるとする診断結果を示す第２絶対角情報ＢＩＳＴ異常フラグＦ２ｂを生成する。一方、第２絶対角情報ＢＩＳＴ部１３３は、第２絶対角情報異常検出部１３２が第２絶対角情報異常フラグＦａｂを生成する場合に第２絶対角情報ＢＩＳＴ異常フラグＦ２ｂを生成しない。第２絶対角情報ＢＩＳＴ部１３３によって生成された第２絶対角情報ＢＩＳＴ異常フラグＦ２ｂは、通信インターフェース１３４に出力される。
【００８３】
通信インターフェース１２４は、第１絶対角情報異常フラグＦａａ及び第１絶対角情報ＢＩＳＴ異常フラグＦ２ａが入力されると、これらフラグを第３演算回路７０に出力する。
【００８４】
第３演算回路７０の機能について説明する。
図５に示すように、第３演算回路７０は、積算角演算部１４０、絶対角演算部１４１、絶対角出力部１４３、転舵角指令値演算部１４４、電流フィードバック制御部１４５、第３異常検出部としての絶対角異常検出部１４６、第３ＢＩＳＴ部としての絶対角ＢＩＳＴ部１４７、及びＢＩＳＴ制御部１４８を備えている。
【００８５】
積算角演算部１４０は、第１演算回路５０により演算されたカウント値Ｃ、及び第２回転角センサ４４により生成された電気信号Ｓｂを取得する。本実施形態において、積算角演算部１４０は、始動スイッチがオン状態となる度に、第１演算回路５０により演算されるカウント値Ｃを取得する。積算角演算部１４０は、始動スイッチがオン状態である間、始動スイッチがオン状態となる場合に取得したカウント値Ｃを、第２回転角センサ４４により生成された電気信号Ｓｂの象限の変化に基づいて所定の演算周期で更新する。積算角演算部１４０は、電気信号Ｓｂの象限が反時計回り方向に隣接する象限に変化する毎にカウント値Ｃをインクリメント（カウント値Ｃを１加算）して更新する。積算角演算部１４０は、電気信号Ｓｂの象限が時計回り方向に隣接する象限に変化する毎にカウント値Ｃをデクリメント（カウント値Ｃを１減算）して更新する。すなわち、本実施形態において、第３演算回路７０は、始動スイッチがオン状態である間、第１演算回路５０とは別にカウント値Ｃを更新している。
【００８６】
また、第３演算回路７０の積算角演算部１４０は、第２回転角センサ４４により生成された電気信号Ｓｂを所定の演算周期で取得する。積算角演算部１４０は、取得したカウント値Ｃ及び電気信号Ｓｂに基づいて、転舵モータ４１のマルチターンの回転角を積算した値から積算角θｉを絶対角で演算する。積算角θｉは、転舵モータ４１の回転角を相対角で積算した値である。詳しくは、積算角演算部１４０は、第２回転角センサ４４により生成される電気信号Ｓｂからアークタンジェントを求めることにより、転舵モータ４１の回転角を相対角として求める。この求めた相対角は、転舵モータ４１の回転角を０度〜３６０度の範囲内で表したものである。そして、積算角演算部１４０は、求めた相対角に対して、カウント値Ｃに基づいた転舵モータ４１の回転軸のマルチターン数に３６０度を乗算した値を加算することにより、転舵モータ４１の回転角を積算した値として積算角θｉを求める。なお、転舵モータ４１と第１ピニオンシャフト１３との間に介在される部材の減速比等を考慮して、転舵モータ４１のマルチターンの回転角を積算した値から第１ピニオンシャフト１３の絶対角を求めることができる。
【００８７】
絶対角演算部１４１は、第２演算回路６０の第１絶対角情報演算回路１２０により演算された第１絶対角情報θｇ１及び第２演算回路６０の第２絶対角情報演算回路１３０により演算された第２絶対角情報θｇ２を取得する。絶対角演算部１４１は、第１絶対角情報θｇ１及び第２絶対角情報θｇ２に基づいて、第１ピニオンシャフト１３の絶対角θｇａを演算する。詳しくは、絶対角演算部１４１は、第１絶対角情報θｇ１からアークタンジェントを求めた値、及び第２絶対角情報θｇ２からアークタンジェントを求めた値を用いて、第１ピニオンシャフト１３の絶対角θｇａを演算する。絶対角演算部１４１による絶対角θｇａの演算を、図６を参照して説明する。
【００８８】
図６に示すグラフの縦軸は第１絶対角情報θｇ１及び第２絶対角情報θｇ２を示し、横軸は第１ピニオンシャフト１３の絶対角θｇａを示している。破線は第１絶対角情報θｇ１の遷移を示し、実線は第２絶対角情報θｇ２の遷移を示している。なお、第１ピニオン角センサ４６ａの電気信号Ｓｇ１及び第２ピニオン角センサ４６ｂの電気信号Ｓｇ２は、それぞれ同じ軸倍角（１倍）である。そして、ＴＡＳ４６の第１ギア部の減速比とＴＡＳ４６の第２ギア部の減速比との違いにより、破線で示す第１絶対角情報θｇ１の波形の位相及び実線で示す第２絶対角情報θｇ２の波形の位相は、第１ピニオンシャフト１３の回転とともにずれていく。第１絶対角情報θｇ１と第２絶対角情報θｇ２とは、それぞれ第１ピニオン角センサ４６ａ及び第２ピニオン角センサ４６ｂの検出範囲の回転角（０度〜３６０度）である。このため、第１絶対角情報θｇ１のみ、あるいは第２絶対角情報θｇ２のみだけでは、第１ピニオンシャフト１３のマルチターンの回転角である絶対角θｇａを求めることはできない。
【００８９】
絶対角演算部１４１は、第１絶対角情報θｇ１と第２絶対角情報θｇ２との角度差の絶対値を演算する。図６のグラフの太線は、第１絶対角情報θｇ１と第２絶対角情報θｇ２との角度差の絶対値を示している。図６に示すように、絶対角θｇａが大きくなるほど、角度差の絶対値は絶対角θｇａに比例して大きくなる。絶対角演算部１４１は、第１絶対角情報θｇ１と第２絶対角情報θｇ２との角度差の絶対値に対する絶対角θｇａの関係を示すマップを記憶している。このため、絶対角演算部１４１は、第１絶対角情報θｇ１と第２絶対角情報θｇ２との角度差の絶対値から絶対角θｇａを演算することができる。
【００９０】
図５に示すように、絶対角出力部１４３は、積算角演算部１４０により演算された積算角θｉ、絶対角演算部１４１により演算された絶対角θｇａ、及び絶対角異常検出部１４６により生成された絶対角異常検出フラグＦａを取得する。絶対角出力部１４３は、絶対角θｇａから転舵モータ４１におけるモータ中点を演算する。モータ中点とは、車両の直進状態におけるステアリングホイール１１の操舵中立位置、あるいは転舵シャフト１４の転舵中立位置に対応する転舵モータ４１の回転角θｂをいう。絶対角出力部１４３は、絶対角異常検出フラグＦａが入力されていない場合、転舵モータ４１のモータ中点及び積算角θｉに基づき、第１ピニオンシャフト１３のピニオン角θｐａを絶対角で演算する。すなわち、絶対角出力部１４３は、転舵モータ４１のモータ中点を基準点として、基準点からの転舵モータ４１の積算角θｉの変化量に基づき、転舵モータ４１の回転角θｂを３６０度を超える範囲の絶対角で演算し、この演算される回転角θｂ（絶対角）に基づきピニオン角θｐａを絶対角で演算する。転舵モータ４１の回転角θｂと第１ピニオンシャフト１３の回転角との間には相関があることから、絶対角出力部１４３は、転舵モータ４１の回転角θｂ（絶対角）に基づき第２ピニオンシャフト４３のピニオン角θｐａを絶対角で求めることができる。絶対角出力部１４３は、絶対角異常検出フラグＦａが入力されていない場合、このピニオン角θｐａを出力する。一方、絶対角出力部１４３は、絶対角異常検出フラグＦａが入力されている場合、絶対角θｇａをピニオン角θｐａとして出力する。
【００９１】
転舵角指令値演算部１４４は、絶対角出力部１４３からのピニオン角θｐａ、反力制御部３５により演算された目標操舵角θ＊、及び車速センサ３６により検出された車速Ｖを取得する。転舵角指令値演算部１４４は、車両の走行状態（具体的には車速Ｖ）に応じて操舵角θｓに対する転舵角θｔの比である舵角比を設定する。転舵角指令値演算部１４４は、設定した舵角比を実現するために、反力制御部３５により演算された目標操舵角θ＊に対する補正角度を演算し、この演算される補正角度を目標操舵角θ＊に加算することにより舵角比に応じた目標角を演算する。転舵角指令値演算部１４４は、この目標角を第１ピニオンシャフト１３の回転角に対応した値である目標ピニオン角に変換する。転舵角指令値演算部１４４は、第１ピニオンシャフト１３のピニオン角θｐａを、目標操舵角θ＊に基づいて演算された目標ピニオン角に追従させるべく、角度フィードバック制御（例えばＰＩＤ制御）をすることにより、電流指令値Ｉ＊を演算する。
【００９２】
電流フィードバック制御部１４５は、転舵モータ４１への給電経路に設けられた電流センサ８１を通じて、転舵モータ４１に実際に供給される実電流値Ｉを取得する。また、電流フィードバック制御部１４５は、第２回転角センサ４４を通じて、電気信号Ｓｂを取得する。電流フィードバック制御部１４５は、電気信号Ｓｂ及び実電流値Ｉに基づいて、当該実電流値Ｉを電流指令値Ｉ＊に追従させるべく電流フィードバック制御を実行することにより、モータ制御信号Ｓｍを生成し、ＰＷＭ信号として駆動回路８０に対して出力する。
【００９３】
駆動回路８０は、３相（Ｕ相、Ｖ相、Ｗ相）の駆動回路である。駆動回路８０は、モータ制御信号Ｓｍに基づいて、自身を構成するスイッチング素子をオンオフすることにより、図示しないバッテリから供給される直流電力を３相交流電力に変換する。駆動回路８０は、当該３相交流電力を転舵モータ４１に供給する。
【００９４】
絶対角異常検出部１４６は、積算角演算部１４０により演算された積算角θｉ及び絶対角演算部１４１により演算された絶対角θｇａを取得する。絶対角異常検出部１４６は、積算角θｉと絶対角θｇａとの比較に基づいて第１演算回路５０の異常を検出する。具体的には、絶対角異常検出部１４６は、積算角演算部１４０の出力値である積算角θｉ及び絶対角演算部１４１の出力値である絶対角θｇａを連続する２回の演算周期分保持することができるように構成されている。すなわち、絶対角異常検出部１４６は、最新（今回）の演算周期の積算角θｉ及び絶対角θｇａと、一つ前（前回）の演算周期の積算角θｉ及び絶対角θｇａとを保持する。絶対角異常検出部１４６は、今回の演算周期の積算角θｉと前回の演算周期の積算角θｉとの偏差に基づいて積算角θｉの単位時間（１回の演算周期）あたりの変化量を演算する。また、絶対角異常検出部１４６は、今回の演算周期の絶対角θｇａと前回の演算周期の絶対角θｇａとの偏差に基づいて絶対角θｇａの単位時間（１回の演算周期）あたりの変化量を演算する。絶対角異常検出部１４６は、積算角θｉの変化量（詳しくは、を第１ピニオンシャフト１３の回転角の変化量に換算した値）と絶対角θｇａの変化量との偏差が所定閾値以下であるか否かに基づいて、第１演算回路５０の異常を検出する。絶対角異常検出部１４６は、積算角θｉの変化量と絶対角θｇａの変化量との偏差が所定閾値を超える場合、第１演算回路５０に異常ありの検出結果を示す絶対角異常検出フラグＦａを生成する。一方、絶対角異常検出部１４６は、積算角θｉの変化量と絶対角θｇａの変化量との偏差が所定閾値以下である場合、絶対角異常検出フラグＦａを生成しない。なお、積算角θｉの変化量と絶対角θｇａの変化量との偏差が所定閾値を超える場合には、第２演算回路６０を信頼して、第１演算回路５０に異常が発生しているものとする。
【００９５】
ここで、絶対角異常検出部１４６に異常が発生すると、絶対角異常検出部１４６の異常の検出対象、すなわち第１演算回路５０が異常であることを検出することができなくなる。そこで、本実施形態では、絶対角異常検出部１４６を診断する絶対角ＢＩＳＴ部１４７が設けられている。
【００９６】
絶対角ＢＩＳＴ部１４７は、絶対角異常検出部１４６の診断の際、異常の検出結果を導出するように規定された積算角θｉの変化量と絶対角θｇａの変化量を示すテスト信号を当該絶対角異常検出部１４６に対して出力し、絶対角異常検出部１４６が絶対角異常検出フラグＦａを生成する状況を強制的に作り出すように動作する。そして、絶対角ＢＩＳＴ部１４７は、絶対角異常検出部１４６が絶対角異常検出フラグＦａを生成したか否かに基づいて当該絶対角異常検出部１４６を診断する。この診断において、絶対角ＢＩＳＴ部１４７は、絶対角異常検出部１４６が絶対角異常検出フラグＦａを生成しない場合に当該絶対角異常検出部１４６が異常であるとする診断結果を示す絶対角ＢＩＳＴ異常フラグＦ３を生成する。一方、絶対角ＢＩＳＴ部１４７は、絶対角異常検出部１４６が絶対角異常検出フラグＦａを生成する場合に当該絶対角異常検出部１４６が絶対角異常検出フラグＦａを生成する場合に絶対角ＢＩＳＴ異常フラグＦ３を生成しない。絶対角異常検出部１４６により生成された絶対角ＢＩＳＴ異常フラグＦ３は、ＢＩＳＴ制御部１４８に出力される。
【００９７】
ＢＩＳＴ制御部１４８は、第１演算回路５０、第２演算回路６０、及び第３演算回路７０の各ＢＩＳＴ部による診断の実行を制御する。
ＢＩＳＴ制御部１４８は、カウンタＢＩＳＴ部１１０によるカウンタ異常検出部１０８の診断を実行する場合、カウンタＢＩＳＴ部１１０に対して指令信号Ｓ１を出力する。カウンタＢＩＳＴ部１１０は、指令信号Ｓ１が入力された場合、カウンタ異常検出部１０８の診断を実行する。ＢＩＳＴ制御部１４８は、カウンタＢＩＳＴ部１１０からカウンタＢＩＳＴ異常フラグＦ１が入力されるとカウンタ異常検出部１０８が異常でないことを診断し、当該カウンタ異常検出部１０８の診断を終了する。この場合、ＢＩＳＴ制御部１４８は、強制的に作り出されたカウンタ異常検出部１０８がカウンタ異常フラグＦｃを生成する状況、すなわち転舵制御部４７における異常の動作状態が解除されるように、各種の異常検出や各診断に関わるフラグ等の情報を消去するべく、転舵制御部４７の動作状態をリセットする。
【００９８】
ＢＩＳＴ制御部１４８は、電源ＢＩＳＴ部１０９による電圧異常検出部１０７の診断を実行する場合、電源ＢＩＳＴ部１０９に対して指令信号Ｓ１ａを出力する。電源ＢＩＳＴ部１０９は、指令信号Ｓ１ａが入力された場合、電圧異常検出部１０７の診断を実行する。ＢＩＳＴ制御部１４８は、電源ＢＩＳＴ部１０９から電源ＢＩＳＴ異常フラグＦ１ａが入力されると電源異常検出部１０７が異常でないことを診断し、当該電源異常検出部１０７の診断を終了する。この場合、ＢＩＳＴ制御部１４８は、強制的に作り出された電源異常検出部１０７が電源異常フラグＦｂを生成する状況、すなわち転舵制御部４７における異常の動作状態が解除されるように、各種の異常検出や各診断に関わるフラグ等の情報を消去するべく、転舵制御部４７の動作状態をリセットする。
【００９９】
ＢＩＳＴ制御部１４８は、第１絶対角情報ＢＩＳＴ部１２３による第１絶対角情報異常検出部１２２の診断を実行する場合、第１絶対角情報ＢＩＳＴ部１２３に対して指令信号Ｓ２ａを出力する。第１絶対角情報ＢＩＳＴ部１２３は、指令信号Ｓ２ａが入力された場合、第１絶対角情報異常検出部１２２の診断を実行する。ＢＩＳＴ制御部１４８は、第１絶対角情報ＢＩＳＴ部１２３から第１絶対角情報ＢＩＳＴ異常フラグＦ２ａが入力されると第１絶対角情報異常検出部１２２が異常でないことを診断し、当該第１絶対角情報異常検出部１２２の診断を終了する。この場合、ＢＩＳＴ制御部１４８は、強制的に作り出された第１絶対角情報異常検出部１２２が第１絶対角情報異常フラグＦａａを生成する状況、すなわち転舵制御部４７における異常の動作状態が解除されるように、各種の異常検出や各診断に関わるフラグ等の情報を消去するべく、転舵制御部４７の動作状態をリセットする。
【０１００】
ＢＩＳＴ制御部１４８は、第２絶対角情報ＢＩＳＴ部１３３による第２絶対角情報異常検出部１３２の診断を実行する場合、第２絶対角情報ＢＩＳＴ部１３３に対して指令信号Ｓ２ｂを出力する。第２絶対角情報ＢＩＳＴ部１３３は、指令信号Ｓ２ｂが入力された場合、第２絶対角情報異常検出部１３２の診断を実行する。第２絶対角情報ＢＩＳＴ部１３３から第２絶対角情報ＢＩＳＴ異常フラグＦ２ｂが入力されると第２絶対角情報異常検出部１３２が異常でないことを診断し、当該第２絶対角情報異常検出部１３２の診断を終了する。この場合、ＢＩＳＴ制御部１４８は、強制的に作り出された第２絶対角情報異常検出部１３２が第２絶対角情報異常フラグＦａｂを生成する状況、すなわち転舵制御部４７における異常の動作状態が解除されるように、各種の異常検出や各診断に関わるフラグ等の情報を消去するべく、転舵制御部４７の動作状態をリセットする。
【０１０１】
ＢＩＳＴ制御部１４８は、絶対角ＢＩＳＴ部１４７による絶対角異常検出部１４６の診断を実行する場合、絶対角ＢＩＳＴ部１４７に対して指令信号Ｓ３を出力する。絶対角ＢＩＳＴ部１４７は、指令信号Ｓ３が入力された場合、絶対角異常検出部１４６の診断を実行する。ＢＩＳＴ制御部１４８は、絶対角異常検出部１４６から絶対角ＢＩＳＴ異常フラグＦ３が入力されると、絶対角異常検出部１４６が異常でないことを診断し、当該絶対角異常検出部１４６の診断を終了する。この場合、ＢＩＳＴ制御部１４８は、強制的に作り出された絶対角異常検出部１４６が絶対角異常検出フラグＦａを生成する状況、すなわち転舵制御部４７における異常の動作状態が解除されるように、各種の異常検出や各診断に関わるフラグ等の情報を消去するべく、転舵制御部４７の動作状態をリセットする。
【０１０２】
なお、ＢＩＳＴ制御部１４８は、各ＢＩＳＴ部による診断を実行したにもかかわらず、対応したＢＩＳＴ異常フラグが入力されない場合、その状況に応じたフェイルセーフ制御に移行する。例えば、ＢＩＳＴ制御部１４８は、絶対角異常検出部１４６の診断を実行したにもかかわらず、絶対角異常検出部１４６から絶対角ＢＩＳＴ異常フラグＦ３が入力されない場合、絶対角異常検出部１４６が異常であることを診断し、転舵制御部４７の動作を停止するフェイルセーフ制御に移行する。
【０１０３】
本実施形態では、各ＢＩＳＴ部（カウンタＢＩＳＴ部１１０、電源ＢＩＳＴ部１０９、第１絶対角情報ＢＩＳＴ部１２３、第２絶対角情報ＢＩＳＴ部１３３、及び絶対角ＢＩＳＴ部１４７）の診断の実行タイミングを互いに異ならせている。
【０１０４】
図７に示すように、ＢＩＳＴ制御部１４８は、始動スイッチをオン状態にした直後に行われるイニシャルチェック中に各ＢＩＳＴ部による診断が実行される。すなわち、ＢＩＳＴ制御部１４８は、最初にカウンタＢＩＳＴ部１１０に対して指令信号Ｓ１を出力することにより、カウンタＢＩＳＴ部１１０によるカウンタ異常検出部１０８の診断を実行する。ＢＩＳＴ制御部１４８は、カウンタＢＩＳＴ部１１０によるカウンタ異常検出部１０８の診断の終了後、すなわちカウンタＢＩＳＴ部１１０からカウンタＢＩＳＴ異常フラグＦ１を取得した後、電源ＢＩＳＴ部１０９に対して指令信号Ｓ１ａを出力することにより、電源ＢＩＳＴ部１０９による電圧異常検出部１０７の診断を実行する。ＢＩＳＴ制御部１４８は、電源ＢＩＳＴ部１０９による電圧異常検出部１０７の診断の終了後、すなわち電源ＢＩＳＴ部１０９から電源ＢＩＳＴ異常フラグＦ１ａを取得した後、第１絶対角情報ＢＩＳＴ部１２３に対して指令信号Ｓ２ａを出力することにより、第１絶対角情報ＢＩＳＴ部１２３による第１絶対角情報異常検出部１２２の診断を実行する。ＢＩＳＴ制御部１４８は、第１絶対角情報ＢＩＳＴ部１２３による第１絶対角情報異常検出部１２２の診断の終了後、すなわち第１絶対角情報ＢＩＳＴ部１２３から第１絶対角情報ＢＩＳＴ異常フラグＦ２ａを取得した後、第２絶対角情報ＢＩＳＴ部１３３に対して指令信号Ｓ２ｂを出力することにより、第２絶対角情報ＢＩＳＴ部１３３による第２絶対角情報異常検出部１３２の診断を実行する。ＢＩＳＴ制御部１４８は、第２絶対角情報ＢＩＳＴ部１３３による第２絶対角情報異常検出部１３２の診断の終了後、すなわち第２絶対角情報ＢＩＳＴ部１３３から第２絶対角情報ＢＩＳＴ異常フラグＦ２ｂを取得した後、絶対角ＢＩＳＴ部１４７に対して指令信号Ｓ３を出力することにより、絶対角ＢＩＳＴ部１４７による絶対角異常検出部１４６の診断を実行する。ＢＩＳＴ制御部１４８は、絶対角ＢＩＳＴ部１４７による絶対角異常検出部１４６の診断の終了後、すなわち絶対角ＢＩＳＴ部１４７から絶対角ＢＩＳＴ異常フラグＦ３を取得した後、各ＢＩＳＴ部による診断の実行を終了する。これにより、ＢＩＳＴ制御部１４８は、カウンタＢＩＳＴ部１１０、電源ＢＩＳＴ部１０９、第１絶対角情報ＢＩＳＴ部１２３、第２絶対角情報ＢＩＳＴ部１３３、絶対角ＢＩＳＴ部１４７の順に診断を実行する。カウンタＢＩＳＴ部１１０、電源ＢＩＳＴ部１０９、第１絶対角情報ＢＩＳＴ部１２３、第２絶対角情報ＢＩＳＴ部１３３、及び絶対角ＢＩＳＴ部１４７の診断の実行タイミングは、第２回転角センサ４４、第１ピニオン角センサ４６ａ、及び第２ピニオン角センサ４６ｂのサンプリングタイミングと異なっている。
【０１０５】
本実施形態の作用および効果を説明する。
（１）各ＢＩＳＴ部（カウンタＢＩＳＴ部１１０、電源ＢＩＳＴ部１０９、第１絶対角情報ＢＩＳＴ部１２３、第２絶対角情報ＢＩＳＴ部１３３、及び絶対角ＢＩＳＴ部１４７）による異常検出部の診断を実行した後、診断対象とした異常検出部を備える転舵制御部４７としては、その動作状態が異常を検出した状態に設定されてしまう。この異常を検出した状態を解除するべく、転舵制御部４７の動作状態をリセットする必要がある。
【０１０６】
そして、本実施形態のように、複数のＢＩＳＴ部によって複数の異常検出部の診断を実行しなければいけない場合には、何れかのＢＩＳＴ部による診断の実行中に、他のＢＩＳＴ部による診断に伴い転舵制御部４７の動作状態がリセットされると、診断の結果が正しく得られなくなる可能性がある。
【０１０７】
この点、本実施形態によれば、各ＢＩＳＴ部の診断の実行タイミングを互いに異ならせていることから、各ＢＩＳＴ部による診断の実行中に他のＢＩＳＴ部による診断の実行に伴い転舵制御部４７の動作状態がリセットされる状況の発生を抑制することができる。これにより、各ＢＩＳＴ部が対象とする異常検出部の診断に関する信頼性を向上させることができる。したがって、転舵制御部４７による絶対角としてのピニオン角θｐａの演算の信頼性を向上させることができる。
【０１０８】
（２）また、上記（１）で述べたのと同様に、第２回転角センサ４４、第１ピニオン角センサ４６ａ、及び第２ピニオン角センサ４６ｂによる検出結果のサンプリングタイミングにおいてＢＩＳＴ部による診断の実行に伴い転舵制御部４７の動作状態がリセットされると、第２回転角センサ４４、第１ピニオン角センサ４６ａ、及び第２ピニオン角センサ４６ｂによる検出結果のサンプリングが正しく実行されなくなる可能性がある。
【０１０９】
これに対処するべく、本実施形態では、カウンタＢＩＳＴ部１１０、電源ＢＩＳＴ部１０９、第１絶対角情報ＢＩＳＴ部１２３、第２絶対角情報ＢＩＳＴ部１３３、及び絶対角ＢＩＳＴ部１４７の診断の実行タイミングを、第２回転角センサ４４、第１ピニオン角センサ４６ａ、及び第２ピニオン角センサ４６ｂのサンプリングタイミングと異ならせている。このことから、サンプリングタイミングにおいて各ＢＩＳＴ部による診断の実行に伴い転舵制御部４７の動作状態がリセットされる状況の発生を抑制することができる。これにより、第２回転角センサ４４、第１ピニオン角センサ４６ａ、及び第２ピニオン角センサ４６ｂの検出結果のサンプリングに関する信頼性を向上させることができる。
【０１１０】
（３）絶対角異常検出部１４６での異常の検出の際に用いられる積算角θｉ及び絶対角θｇａは、転舵モータ４１の動作に応じて変化するものである。このため、積算角θｉ及び絶対角θｇａの変化は互いに関連している。そこで、絶対角異常検出部１４６は、これらの積算角θｉの変化量及び絶対角θｇａの変化量を用いて、第１演算回路５０の異常を検出することができる。
【０１１１】
（４）本実施形態のステアバイワイヤ方式の操舵装置では、転舵モータ４１の駆動に必要なモータ制御信号Ｓｍを生成するために、クラッチ２１が接続された際にステアリングシャフト１２（ステアリングホイール１１）の回転に連動して回転する第１ピニオンシャフト１３の絶対角であるピニオン角θｐａを求める必要がある。すなわち、本実施形態によれば、演算された第１ピニオンシャフト１３のピニオン角θｐａの信頼性を向上できる転舵装置１０ｂを実現することができる。
【０１１２】
なお、本実施形態は次のように変更してもよい。また、以下の他の実施形態は、技術的に矛盾しない範囲において、互いに組み合わせることができる。
・クラッチ制御部２２、反力制御部３５および転舵制御部４７は、単一の制御部（ＥＣＵ：電子制御ユニット）として構成してもよい。
【０１１３】
・第１演算回路５０及び第２演算回路６０は、特定の入力に対して定められた演算を実行するＡＳＩＣであったが、これに限らない。例えば第１演算回路５０及び第２演算回路６０は、マイクロプロセッシングユニット等からなるマイコンによって実現してもよい。また、第１演算回路５０及び第２演算回路６０は、その記憶部に記憶されているプログラムを読み出して当該プログラムに応じた演算を実行するものであってもよい。また、第１演算回路５０及び第２演算回路６０を特定の機能に特化した低消費電力のマイコンによって実現してもよい。この場合であっても、特定の機能に特化している分だけ、第１演算回路５０及び第２演算回路６０の構成を第３演算回路７０よりも簡素な構成とすることができる。
【０１１４】
・第１回転角センサ３３、第２回転角センサ４４、第１ピニオン角センサ４６ａ、及び第２ピニオン角センサ４６ｂは、例えばホール素子を用いたセンサであってもよいし、レゾルバを用いたセンサであってもよい。
【０１１５】
・第１回転角センサ３３及び第２回転角センサ４４は、例えばステアリングシャフト１２や第１ピニオンシャフト１３の回転角を検出するようにしてもよい。例えば、第１ピニオンシャフト１３の回転角は、転舵モータ４１と第１ピニオンシャフト１３との間の減速比等を考慮すれば、転舵モータ４１のマルチターンの回転角に換算することができる。
【０１１６】
・第１回転角センサ３３は、反力モータ３１に設けられていたが、ステアリングホイール１１の回転軸であるステアリングシャフト１２に設けられていてもよい。また、第２回転角センサ４４は、転舵モータ４１に設けられていたが、第１ピニオンシャフト１３や第２ピニオンシャフト４３に設けられていてもよい。
【０１１７】
・第１演算回路５０は、始動スイッチがオン状態である場合においてもカウント値Ｃを演算したが、始動スイッチがオン状態である場合には、カウント値Ｃを演算しないようにしてもよい。
【０１１８】
・第３演算回路７０は、第１演算回路５０を介して、第２回転角センサ４４の電気信号Ｓｂを取り込んでもよい。
・絶対角異常検出部１４６は、積算角θｉの変化量と絶対角θｇａの変化量との偏差が所定閾値以下であるか否かに基づいて、第１演算回路５０の異常を検出したが、これに限らない。例えば、絶対角異常検出部１４６は、積算角θｉと絶対角θｇａとの偏差が所定値以下であるか否かに基づいて、第１演算回路５０の異常を検出するようにしてもよい。
【０１１９】
・第１ピニオン角センサ４６ａ及び第２ピニオン角センサ４６ｂの代わりに、操舵装置１０に転舵シャフト１４の軸方向における絶対位置を検出するとともに、この絶対位置の変化に基づき転舵シャフト１４の軸方向における移動量を検出するストロークセンサを設けるようにしてもよい。転舵シャフト１４の移動量と転舵モータ４１の回転角θｂとの間には相関があることから、絶対角出力部１４３は、転舵シャフトの移動量から転舵モータ４１のモータ中点を求めることができる。したがって、絶対角出力部１４３は、転舵モータ４１のモータ中点を基準点として、基準点からの転舵モータ４１の回転角θｂの変化量に基づき、転舵モータ４１の回転角θｂを３６０度を超える範囲の絶対角で演算し、この演算される回転角θｂ（絶対角）に基づきピニオン角θｐａを絶対角で演算することができる。
【０１２０】
また、第１ピニオン角センサ４６ａ及び第２ピニオン角センサ４６ｂに加えて、ストロークセンサを設けるようにしてもよい。例えば、第３演算回路７０には、絶対角演算部１４１により演算された絶対角θｇａ、及び転舵シャフト１４の移動量に基づいて求められた第１ピニオンシャフト１３の回転角のいずれか一方を絶対角出力部１４３に対して出力する切替部が設けられる。この切替部は、例えばＴＡＳ４６に異常が発生している場合、第１絶対角情報θｇ１及び第２絶対角情報θｇ２の代わりに、転舵シャフト１４の移動量に基づいて求められた第１ピニオンシャフト１３の回転角を絶対角出力部１４３に対して出力する。
【０１２１】
・第１演算回路５０の構成から電源ＢＩＳＴ部１０９を省いてもよい。
・ＢＩＳＴ制御部１４８は、カウンタＢＩＳＴ部１１０、電源ＢＩＳＴ部１０９、第１絶対角情報ＢＩＳＴ部１２３、第２絶対角情報ＢＩＳＴ部１３３、絶対角ＢＩＳＴ部１４７の順に診断を実行させたが、この順番は適宜変更してもよく、各ＢＩＳＴ部の診断の実行タイミングが互いに異なっていればよい。
【０１２２】
・カウンタＢＩＳＴ部１１０、電源ＢＩＳＴ部１０９、第１絶対角情報ＢＩＳＴ部１２３、第２絶対角情報ＢＩＳＴ部１３３、及び絶対角ＢＩＳＴ部１４７の診断の実行タイミングは、第２回転角センサ４４、第１ピニオン角センサ４６ａ、及び第２ピニオン角センサ４６ｂのサンプリングタイミングを考慮せずに決定されてもよい。
【０１２３】
・絶対角異常検出部１４６は、積算角θｉの変化量と絶対角θｇａの変化量との偏差が所定閾値を超える場合、第１演算回路５０及び第２演算回路６０の両方に異常が発生したものとして、第１演算回路５０及び第２演算回路６０の両方の異常を示す絶対角異常検出フラグＦａを生成してもよい。また、第２演算回路６０よりも第１演算回路５０の信頼性が高い場合については、絶対角異常検出部１４６は、積算角θｉの変化量と絶対角θｇａの変化量との偏差が所定閾値を超える場合、第２演算回路６０の異常を示す絶対角異常検出フラグＦａを生成してもよい。
【０１２４】
・電源ＢＩＳＴ部１０９は、電圧異常検出部１０７の診断の際、電圧異常検出部１０７が制御電圧Ｖｃｏの異常を検出するために想定している所定電圧範囲の上限値を変更することで、電圧異常検出部１０７が電圧異常フラグＦｂを生成する状況を強制的に作り出したが、これに限らない。例えば、電源ＢＩＳＴ部１０９は、電圧異常検出部１０７が異常の結果を導出するように規定されたテスト信号を送信した場合に電圧異常検出部１０７が電圧異常フラグＦｂを生成したか否かに基づいて、電圧異常検出部１０７が電圧異常フラグＦｂを生成する状況を強制的に作り出してもよい。
【０１２５】
・転舵モータ４１が発生する動力を転舵シャフト１４に伝達する伝達機構として、第２減速機構４２および第２ピニオンシャフト４３に代えて、ベルト伝動機構およびボールねじ機構を採用してもよい。
【０１２６】
・ＴＡＳ４６には、ピニオントルクセンサ４６ｃが設けられたが、第１ピニオン角センサ４６ａ及び第２ピニオン角センサ４６ｂのみであってもよい。
・ＴＡＳ４６は、第１ピニオンシャフト１３に設けられたが、ステアリングシャフト１２に設けられてもよい。この場合、ＴＡＳ４６は、ステアリングシャフト１２の回転角を絶対角で検出する絶対角センサである。なお、転舵制御部４７に適用した上記実施形態の構成については、反力制御部３５に適用するようにしてもよい。
【０１２７】
・操舵装置１０として、クラッチ２１およびクラッチ制御部２２を割愛した構成を採用してもよい。この場合、ステアリングホイール１１と転舵輪１６，１６との間の動力伝達が常に分離された状態に維持される。しかし、操舵装置１０としてクラッチ２１を有する第１のタイプおよびクラッチ２１を有さない第２のタイプのいずれのタイプにも対応できる転舵装置（転舵ユニット）を構築することができる。
【０１２８】
・反力制御部３５あるいは転舵制御部４７は、車両の操舵機構にモータのトルクをアシスト力として付与する電動パワーステアリング装置の制御装置に適用してもよい。電動パワーステアリング装置としては、ステアリングシャフトにアシスト力を付与するタイプでもよいし、転舵シャフトにアシスト力を付与するタイプでもよい。
【０１２９】
・操舵装置１０（転舵装置１０ｂ）の搭載される車両は、車両駆動源にエンジンを採用するいわゆる内燃機関を有する車両であってもよいし、車両駆動源にモータを採用するいわゆる電動車両であってもよい。なお、電動車両の場合の始動スイッチは、車両駆動源としてのモータを始動するスイッチである。
【０１３０】
・反力制御部３５あるいは転舵制御部４７は、操舵装置１０に限らず、モータを動力源とする機械装置の制御装置に具体化してもよい。
【符号の説明】
【０１３１】
１０…操舵装置、１０ｂ…転舵装置、１２…ステアリングシャフト、１３…第１ピニオンシャフト、１４…転舵シャフト、１６…転舵輪、２１…クラッチ、３１…反力モータ、３３…第１回転角センサ、３５…反力制御部、４１…転舵モータ、４３…第２ピニオンシャフト、４４…第２回転角センサ、４６…ＴＡＳ、４６ａ…第１ピニオン角センサ、４６ｂ…第２ピニオン角センサ、４６ｃ…ピニオントルクセンサ、４７…転舵制御部、５０…第１演算回路、６０…第２演算回路、７０…第３演算回路、８０…駆動回路、９０…バッテリ、１００…電源回路、１０１…カウンタ回路、１０６…カウント値演算部、１０７…電圧異常検出部、１０８…カウンタ異常検出部、１０９…電源ＢＩＳＴ部、１１０…カウンタＢＩＳＴ部、１２０…第１絶対角情報演算回路、１２１…第１絶対角情報演算部、１２２…第１絶対角情報異常検出部、１２３…第１絶対角情報ＢＩＳＴ部、１３０…第２絶対角情報演算回路、１３１…第２絶対角情報演算部、１３２…第２絶対角情報異常検出部、１３３…第２絶対角情報ＢＩＳＴ部、１４０…積算角演算部、１４１…絶対角演算部、１４３…絶対角出力部、１４４…転舵角指令値演算部、１４５…電流フィードバック制御部、１４６…絶対角異常検出部、１４７…絶対角ＢＩＳＴ部、１４８…ＢＩＳＴ制御部、θｇ，θｇａ…絶対角、θｉ…積算角、Ｉ＊…電流指令値、Ｓ１，Ｓ１ａ，Ｓ２ａ，Ｓ２ｂ，Ｓ３…指令信号、Ｓａ，Ｓｂ，Ｓｇ１，Ｓｇ２…電気信号、Ｓｍ…モータ制御信号、θｐａ，θｐｂ…ピニオン角、Ｔｐ…トルク、Ｔｈ…操舵トルク、Ｕ２…転舵ユニット、Ｖ…車速、Ｖｃｏ…制御電圧、θ＊…目標操舵角、θｓ…操舵角、θｔ…転舵角。
【図１】
2020079058.tif 000003
【図２】
2020079058.tif 000004
【図３】
2020079058.tif 000005
【図４】
2020079058.tif 000006
【図５】
2020079058.tif 000007
【図６】
2020079058.tif 000008
【図７】
2020079058.tif 000009