特許第6984345号(P6984345)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ジェイテクトの特許一覧

<>
  • 特許6984345-操舵制御装置 図000002
  • 特許6984345-操舵制御装置 図000003
  • 特許6984345-操舵制御装置 図000004
  • 特許6984345-操舵制御装置 図000005
  • 特許6984345-操舵制御装置 図000006
  • 特許6984345-操舵制御装置 図000007
  • 特許6984345-操舵制御装置 図000008
  • 特許6984345-操舵制御装置 図000009
  • 特許6984345-操舵制御装置 図000010
  • 特許6984345-操舵制御装置 図000011
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6984345
(24)【登録日】2021年11月29日
(45)【発行日】2021年12月17日
(54)【発明の名称】操舵制御装置
(51)【国際特許分類】
   B62D 6/00 20060101AFI20211206BHJP
   B62D 5/04 20060101ALI20211206BHJP
【FI】
   B62D6/00
   B62D5/04
【請求項の数】6
【全頁数】20
(21)【出願番号】特願2017-224993(P2017-224993)
(22)【出願日】2017年11月22日
(65)【公開番号】特開2019-93903(P2019-93903A)
(43)【公開日】2019年6月20日
【審査請求日】2020年8月28日
(73)【特許権者】
【識別番号】000001247
【氏名又は名称】株式会社ジェイテクト
(74)【代理人】
【識別番号】100105957
【弁理士】
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【弁理士】
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】藤田 祐志
(72)【発明者】
【氏名】河村 洋
(72)【発明者】
【氏名】パランドレ ザビエ
【審査官】 神田 泰貴
(56)【参考文献】
【文献】 特開2013−017263(JP,A)
【文献】 特開2016−150647(JP,A)
【文献】 特開2016−152682(JP,A)
【文献】 特開2011−155801(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B62D 6/10 − 6/10
B62D 5/00 − 5/32
H02P 21/00 − 25/03
H02P 25/04
H02P 25/10 − 27/18
(57)【特許請求の範囲】
【請求項1】
操舵トルクを含む操舵状態量に応じてトルクの指令値である基本指令値を演算し、前記基本指令値に基づいてモータの複数系統のコイルに対する給電を制御することにより、操舵機構に対して前記モータから前記トルクを付与する制御部を備え、
前記複数系統のコイルは、第1系統のコイルと、第2系統のコイルとを含み、
前記制御部は、前記第1系統のコイルにより発生すべきトルクの指令値であって、前記基本指令値の一部として得られる第1の指令値に基づいて、前記第1系統のコイルに対する給電を制御する第1系統の制御部と、
前記第2系統のコイルにより発生すべきトルクの指令値であって、前記基本指令値から前記第1の指令値を除いた前記基本指令値の一部として得られる第2の指令値に基づいて、前記第2系統のコイルに対する給電を制御する第2系統の制御部と、を含む操舵制御装置において、
前記制御部は、前記基本指令値または前記操舵トルクである入力値が所定値以下の場合、前記第1の指令値と前記第2の指令値とを異なるものとする第1の制御を実行し
前記入力値が前記所定値を超える場合、前記入力値が前記所定値以下の場合よりも、前記第1の指令値と前記第2の指令値との差を小さくする第2の制御を実行するように構成されており、
前記制御部は、前記第2の制御では、前記第1の指令値および前記第2の指令値を等しくする操舵制御装置。
【請求項2】
前記第1系統の制御部および前記第2系統の制御部は、前記入力値に応じて前記第1の指令値と前記第2の指令値との比を示す配分比を可変にする配分比設定部をそれぞれ備え、
前記第1系統の制御部および前記第2系統の制御部の各々は、
記基本指令値と前記配分比とに基づいて前記第1の指令値および前記第2の指令値を演算する
請求項1に記載の操舵制御装置。
【請求項3】
前記配分比設定部は、
前記第1の制御を実行する場合、前記第2の指令値が前記第1の指令値よりも大きくなるように前記配分比を設定し、
前記第2の制御を実行する場合、前記第1の制御を実行する場合よりも、前記第1の指令値と前記第2の指令値との差が小さくなるように前記配分比を設定する
請求項2に記載の操舵制御装置。
【請求項4】
前記配分比設定部は、
前記第1の制御を実行する場合、前記第1の指令値が、前記基本指令値を均等に配分した値である均等指令値より小さくなるように、かつ前記第2の指令値が、前記均等指令値より大きくなるように、前記配分比を設定する
請求項2または請求項3に記載の操舵制御装置。
【請求項5】
前記配分比設定部は、
前記第1の制御を実行する場合、前記入力値が前記所定値に近付くほど、前記第1の指令値および前記第2の指令値が前記均等指令値に近付くように、前記配分比を設定する
請求項4に記載の操舵制御装置。
【請求項6】
前記第1系統の制御部および前記第2系統の制御部の少なくとも一方は、前記第1の制御を実行する場合、
前記第1の指令値および前記第2の指令値の和が前記基本指令値であり、かつ前記第1の指令値および前記第2の指令値の符号が等しいか否かを判定し、
前記第1の指令値および前記第2の指令値の和が前記基本指令値でない、あるいは前記第1の指令値および前記第2の指令値の符号が等しくないときには、前記第1の制御を中断する
請求項3〜5のいずれか一項に操舵制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、操舵制御装置に関する。
【背景技術】
【0002】
従来、車両の操舵機構にモータの駆動力を付与することにより、運転者のステアリング操作をアシストするステアリング装置が知られている。このようなステアリング装置には、モータの動作を制御する電子制御装置(ECU)が搭載されている。ところで、特許文献1に示すように、ECUには、モータ、モータを駆動制御するマイコン、および駆動回路を冗長化し、各マイコンが駆動回路を制御することにより、複数系統設けられたモータのコイルをそれぞれ独立に制御するものがある。各マイコンは、モータ制御信号を生成することにより、駆動回路の制御を通じて、各系統のコイルに電力を供給している。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2011−195089号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、各マイコンが各系統の駆動回路に対して同じモータ制御信号を生成することで、各系統のコイルにそれぞれ同じように電力を供給すると、マイコン、駆動回路、コイルといった各系統の構成要素には同じように制御負荷がかかってしまう。すると、たとえ各系統を冗長化したとしても、各系統の構成要素に、同一の要因によって同時期に異常が発生してしまうおそれがある。
【0005】
本発明の目的は、各系統の構成要素に同時期に異常が発生することを抑制する操舵制御装置を提供することにある。
【課題を解決するための手段】
【0006】
上記目的を達成しうる操舵制御装置は、操舵トルクを含む操舵状態量に応じてトルクの指令値である基本指令値を演算し、前記基本指令値に基づいてモータの複数系統のコイルに対する給電を制御することにより、操舵機構に対して前記モータから前記トルクを付与する制御部を備えている。前記複数系統のコイルは、第1系統のコイルと、第2系統のコイルとを含んでいる。前記制御部は、前記第1系統のコイルにより発生すべきトルクの指令値であって、前記基本指令値の一部として得られる第1の指令値に基づいて、前記第1系統のコイルに対する給電を制御する第1系統の制御部と、前記第2系統のコイルにより発生すべきトルクの指令値であって、前記基本指令値から前記第1の指令値を除いた前記基本指令値の一部として得られる第2の指令値に基づいて、前記第2系統のコイルに対する給電を制御する第2系統の制御部と、を含んでいる。前記制御部は、前記基本指令値または前記操舵トルクである入力値が所定値以下の場合、前記第1の指令値と前記第2の指令値とを異なるものとする第1の制御を実行し、前記入力値が前記所定値を超える場合、前記入力値が前記所定値以下の場合よりも、前記第1の指令値と前記第2の指令値との差を小さくする第2の制御を実行するように構成されている
【0007】
この構成によれば、基本指令値または操舵トルクである入力値が所定値以下である場合、第1の指令値と第2の指令値とが異なるので、第1系統の制御部による第1系統のコイルに対する給電量は、第2系統の制御部による第2系統のコイルに対する給電量と異なるものに設定される。このため、第1系統の制御部の制御負荷と、第2系統の制御部の制御負荷とは異なる。このように、各系統間で制御負荷が異なるようにしたことにより、各系統の同一構成要素に同時期に異常が発生することを抑制できる。
【0008】
また、入力値が所定値を超える場合、第1系統の制御部による第1系統のコイルに対する給電量と、第2系統の制御部による第2系統のコイルに対する給電量との差は小さくなるので、系統間での制御負荷をより均等にできる。このため、入力値が所定値を超えるような給電量が大きく、制御負荷が大きい場合には、一部の系統に制御負荷が集中することを抑制できる。
【0009】
上記の操舵制御装置において、前記第1系統の制御部および前記第2系統の制御部は、前記入力値に応じて前記第1の指令値と前記第2の指令値との比を示す配分比を可変にする配分比設定部をそれぞれ備え、前記第1系統の制御部および前記第2系統の制御部の各々は、前記基本指令値と前記配分比とに基づいて前記第1の指令値および前記第2の指令値を演算することが好ましい。
【0010】
この構成によれば、配分比に応じて、第1の指令値および第2の指令値が演算される。このため、配分比を可変に設定することにより、これらの給電量を等しく設定することも、異なるものに設定することもできる。
【0011】
上記の操舵制御装置において、前記配分比設定部は、前記第1の制御を実行する場合、前記第2の指令値が前記第1の指令値よりも大きくなるように前記配分比を設定し、前記第2の制御を実行する場合、前記第1の制御を実行する場合よりも、前記第1の指令値と前記第2の指令値との差が小さくなるように前記配分比を設定することが好ましい。
【0012】
この構成によれば、第1の制御を実行中に、配分比設定部が、第2の指令値が第1の指令値よりも大きくなるように配分比を設定することにより、第の指令値を第の指令値よりも大きくできる。これにより、入力値が所定値以下の場合、第系統の制御負荷を第系統の制御負荷よりも小さくできるので、第系統の故障時期は第系統の故障時期よりも遅くなると考えられる。これにより、各系統の同一構成要素に同時期に異常が発生することを抑制できる。
【0013】
また、第2の制御実行中には、配分比設定部が、第1の制御の実行中よりも、第1の指令値と第2の指令値との差が小さくなるように配分比を設定することにより、第1の指令値と第2の指令値との差を小さくできる。これにより、第1系統の制御負荷と第2系統の制御負荷との差を小さくできるので、第1系統に制御負荷が集中することを抑制できる。
【0014】
上記の操舵制御装置において、前記配分比設定部は、前記第1の制御を実行する場合、前記第1の指令値が、前記基本指令値を均等に配分した値である均等指令値より小さくなるように、かつ前記第2の指令値が、前記均等指令値より大きくなるように、前記配分比を設定することが好ましい。
【0015】
この構成によれば、第1の制御を実行する場合、第1の指令値を均等指令値より小さくなるように配分比を設定し、第2の指令値を均等指令値より大きくなるように配分比を設定することにより、第系統の制御負荷を第の系統の制御負荷よりも小さくできる。
【0016】
上記の操舵制御装置において、前記配分比設定部は、前記第1の制御を実行する場合、前記入力値が前記所定値に近付くほど、前記第1の指令値および前記第2の指令値が前記均等指令値に近付くように、前記配分比を設定することが好ましい。
【0017】
この構成によれば、入力値が所定値以下の領域から所定値を超える領域へと移行する場合、すなわち第1の制御を中止し、第2の制御を実行する場合、第1の指令値および第2の指令値が均等指令値へと滑らかに遷移する。このため、より良好な操舵フィーリングを得ることができる。
【0018】
上記の操舵制御装置において、前記第1系統の制御部および前記第2系統の制御部の少なくとも一方は、前記第1の制御を実行する場合、前記第1の指令値および前記第2の指令値の和が前記基本指令値であり、かつ前記第1の指令値および前記第2の指令値の符号が等しいか否かを判定し、前記第1の指令値および前記第2の指令値の和が前記基本指令値でない、あるいは前記第1の指令値および前記第2の指令値の符号が等しくないときには、前記第1の制御を中断することが好ましい。
【0019】
この構成によれば、第1の制御を実行中に、第1の指令値および第2の指令値の和が基本指令値であること、および第1の指令値および第2の指令値の符号が等しいこと、の2つの条件を満たしているか否かを判定している。そして、第1の制御の実行中に、この条件のいずれか一方でも満たさない場合には、第1の制御を中断する。これにより、第1系統の制御部および第2系統の制御部の一部に制御負荷が集中することが抑制される。
【0020】
上記の操舵制御装置において、前記第2の制御では、前記第1の指令値および前記第2の指令値を等しくすることが好ましい。
上記構成によるように、第2の制御において、第1の指令値と第2の指令値との差を小さくすることには、第1の指令値および第2の指令値を一致させるようにすることが含まれる。そして、この構成によれば、入力値が所定値を超える場合には、第1の指令値と第2の指令値とを等しくすることにより、第1系統の制御部による第1系統のコイルに対する給電量が、第2系統のコイルに対する給電量と等しくなるので、系統間の制御負荷を均等にできる。このため、入力値が所定値を超えるような給電量が大きく、制御負荷が大きい場合には、一部の系統に制御負荷が集中することを抑制できる。
【発明の効果】
【0021】
本発明の操舵制御装置によれば、各系統の構成要素に同時期に異常が発生することを抑制できる。
【図面の簡単な説明】
【0022】
図1】操舵制御装置を搭載したステアリング装置の一実施形態について、その概略構成を示す構成図。
図2】操舵制御装置の概略構成を示すブロック図。
図3】第1マイコンおよび第2マイコンの概略構成を示すブロック図。
図4】第1アシストトルク演算部の概略構成を示すブロック図。
図5】第1アシスト制御量と第1操舵トルクとの関係を示すグラフ。
図6】パラレル制御時における第1アシストトルク演算部の概略構成を示すブロック図。
図7】(a)は、系統のモータのコイルにより発生するアシスト量と操舵トルクとの関係を示すグラフ、(b)は、系統のモータのコイルにより発生するアシスト量と操舵トルクとの関係を示すグラフ。
図8】系統Aのアシスト量と系統Bのアシスト量との関係を示すグラフ。
図9】アンバランス制御時におけるフェイルセーフ処理の処理手順を示すフローチャート。
図10】(a)〜(c)は、他の実施形態における第1アシストトルク演算部の概略構成を示すブロック図。
【発明を実施するための形態】
【0023】
以下、操舵制御装置を電動パワーステアリング装置(「EPS」という)に適用した一実施形態について説明する。
図1に示すように、EPS1は運転者(ユーザ)のステアリングホイール10の操作に基づいて転舵輪15を転舵させる操舵機構2、運転者のステアリング操作を補助するアシスト機構3、およびアシスト機構3を制御する操舵制御装置としてのECU30(電子制御装置)を備えている。
【0024】
操舵機構2は、運転者により操作されるステアリングホイール10およびステアリングホイール10と一体回転するステアリングシャフト11を備えている。ステアリングシャフト11は、ステアリングホイール10と連結されたコラムシャフト11a、コラムシャフト11aの下端部に連結されたインターミディエイトシャフト11b、およびインターミディエイトシャフト11bの下端部に連結されたピニオンシャフト11cを有している。ピニオンシャフト11cの下端部は、ラックアンドピニオン機構13を介してラックシャフト12に連結されている。ステアリングシャフト11の回転運動は、ラックアンドピニオン機構13を介してラックシャフト12の軸方向(図1の左右方向)の往復直線運動に変換される。ラックシャフト12の往復直線運動は、ラックシャフト12の両端にそれぞれ連結されたタイロッド14を介して左右の転舵輪15にそれぞれ伝達されることにより、転舵輪15の転舵角が変化し、車両の進行方向が変更される。
【0025】
アシスト機構3は、回転軸21を有するモータと、減速機構22とを備えている。モータ20は、ステアリングシャフト11にトルクを付与する。モータ20の回転軸21は、減速機構22を介してコラムシャフト11aに連結されている。減速機構22はモータ20の回転を減速し、当該減速した回転力をコラムシャフト11aに伝達する。すなわち、ステアリングシャフト11にモータ20のトルクが付与されることにより、運転者のステアリング操作が補助される。
【0026】
ECU30は、車両に設けられた各種のセンサの検出結果に基づいてモータ20を制御する。各種のセンサとしては、たとえばトルク検出装置としてのトルクセンサ40a,40b、回転角センサ41、および車速センサ42が設けられている。トルクセンサ40a,40bは、コラムシャフト11aに設けられている。回転角センサ41は、モータ20に設けられている。トルクセンサ40a,40bは、運転者のステアリング操作に伴いステアリングシャフト11に付与される操舵トルクτ1,τ2を検出する。回転角センサ41は、モータ20の回転軸21の回転角度θを検出する。車速センサ42は、車両の走行速度である車速Vを検出する。ECU30は、各センサの出力値に基づいて、操舵機構2に付与する目標のトルクを設定し、実際のモータ20のトルクが目標のトルクとなるように、モータ20に供給される電流を制御する。
【0027】
つぎに、図2を参照してモータ20について詳細に説明する。
モータ20は、図示しないステータおよびロータ23を備えている。ロータ23には、内部に複数の永久磁石が設けられている。また、ステータは、図示しないステータコアに巻回された複数のコイル24を備えている。コイル24は、第1の系統である系統Aのコイル24aと、第2の系統である系統Bのコイル24bとを有している。なお、コイル24a,24bは、それぞれスター結線されたU相、V相、およびW相のコイルを含んでいる。
【0028】
つぎに、図2を参照してECU30について説明する。
ECU30は、コイル24aに供給する電力を制御する系統Aの部分と、コイル24bに供給する電力を制御する系統Bの部分とを有している。
【0029】
ECU30の系統Aの部分としては、第1発振子31a、第1マイコン32a、第1電流センサ33a、および第1駆動回路34aが設けられている。また、ECU30の系統Bの部分としては、第2発振子31b、第2マイコン32b、第2電流センサ33b、および第2駆動回路34bが設けられている。なお、第1発振子31aと第2発振子31bとは、同一構成である。また、第1マイコン32aと第2マイコン32bとは、同一構成である。また、第1電流センサ33aと第2電流センサ33bとは同一構成である。また、第1駆動回路34aと第2駆動回路34bとは同一構成である。ここでは、同一構成のものについては、一方についてのみ説明し、他方についてはその詳細な説明を省略する。
【0030】
第1発振子31aは、基本周波数のクロックを生成する。第1発振子31aとしては、たとえば水晶素子などが採用される。
第1マイコン32aは、第1発振子31aにより生成されるクロックに基づいて、第1マイコン32aおよび第2マイコン32bの制御周期を調整するための同期信号を生成する。また、第1マイコン32aは、制御周期毎に、トルクセンサ40aにより検出される操舵トルクτ1、回転角センサ41により検出される回転角度θ(第1回転角度θ1)、車速センサ42により検出される車速V、および第1電流センサ33aにより検出される電流値I1に基づいて、制御信号Sm1(PWM信号)を生成する。第1電流センサ33aは、第1駆動回路34aとコイル24aとの間の給電経路を流れる各相(U相、V相、W相)の電流を検出する。
【0031】
第1駆動回路34aは、3相(U相、V相、W相)の駆動回路である。第1駆動回路34aは、制御動作のタイミングで第1マイコン32aにより生成された制御信号Sm1に基づいて、第1駆動回路34aを構成するスイッチング素子をオンオフすることにより、図示しないバッテリから供給される直流電力を3相交流電力に変換する。第1駆動回路34aは、3相交流電力をコイル24aに供給する。
【0032】
第2マイコン32bは、第2発振子31bにより生成されるクロックに基づいて、第1マイコン32aおよび第2マイコン32bの制御動作のタイミングを調整するための同期信号を生成する。第2マイコン32bは、制御動作のタイミングで、トルクセンサ40bにより検出される操舵トルクτ2と、回転角センサ41により検出される回転角度θ(第2回転角度θ2)と、車速センサ42により検出される車速Vと、第2電流センサ33bにより検出される電流値I2と、に基づいて、制御信号Sm2(PWM信号)を生成する。なお、第1マイコン32aが把握する第1回転角度θ1と第2マイコン32bが把握する第2回転角度θ2とは、同一の回転角センサ41により検出されるものであるため、通常は同一の値になる。また、第2電流センサ33bは、第2駆動回路34bとコイル24bとの間の給電経路を流れる各相の電流を検出する。
【0033】
第2駆動回路34bは、制御動作のタイミングで第2マイコン32bにより生成された制御信号Sm2に基づいて、第2駆動回路34bを構成するスイッチング素子をオンオフすることにより、バッテリから供給される直流電力を3相交流電力に変換する。第2駆動回路34bは、3相交流電力をコイル24bに供給する。
【0034】
このように、第1マイコン32aおよび第2マイコン32bは、第1駆動回路34aおよび第2駆動回路34bの制御を通じて、系統Aのコイル24aおよび系統Bのコイル24bへの給電を制御する。
【0035】
なお、系統Aのコイル24aに供給される電力の最大値は、系統Bのコイル24bに供給される電力の最大値と同一に設定されている。コイル24aおよびコイル24bに供給される電力の最大値は、モータ20により出力できる最大のトルクの半分に対応した値である。
【0036】
つぎに、図3を参照して、第1マイコン32aおよび第2マイコン32bについて詳しく説明する。
第1マイコン32aは、第1アシストトルク演算部50および第1電流フィードバック制御部51を備えている。また、第2マイコン32bは、第2アシストトルク演算部60および第2電流フィードバック制御部61を備えている。
【0037】
第1アシストトルク演算部50は、トルクセンサ40aにより検出された操舵トルクτ1および車速センサ42により検出された車速Vに基づいて、第1の指令値T1a*および第2の指令値T2a*を演算する。なお、第1の指令値T1a*は、系統Aのコイル24aが発生すべきトルクの指令値であり、第2の指令値T2a*は、系統Bのコイル24bが発生すべきトルクの指令値である。第1アシストトルク演算部50は、第1の指令値T1a*を第1電流フィードバック制御部51に出力し、第2の指令値T2a*をマイコン間通信により第2電流フィードバック制御部61に出力する。
【0038】
第1アシストトルク演算部50により演算される第1の指令値T1a*および第2の指令値T2a*は、操舵トルクτ1が所定値以下の場合には、異なる値に設定される。また、第1アシストトルク演算部50により演算される第1の指令値T1a*および第2の指令値T2a*は、操舵トルクτ2が所定値を超える場合には、等しい値に設定される。すなわち、操舵トルクτ1が所定値を超える場合には、操舵トルクτ1が所定値の場合よりも、第1の指令値T1a*と第2の指令値T2a*との差を小さくしている。
【0039】
第2アシストトルク演算部60は、トルクセンサ40bにより検出された操舵トルクτ2および車速センサ42により検出された車速Vに基づいて、第1の指令値T1b*および第2の指令値T2b*を演算する。なお、第1の指令値T1b*は、系統Aのコイル24aが発生すべきトルクの指令値であり、第2の指令値T2b*は、系統Bのコイル24bが発生すべきトルクの指令値である。第2アシストトルク演算部60は、第1の指令値T1b*をマイコン間通信により第1電流フィードバック制御部51に出力し、第2の指令値T2b*を第2電流フィードバック制御部61に出力する。
【0040】
第2アシストトルク演算部60により演算される第1の指令値T1b*および第2の指令値T2b*は、操舵トルクτ2が所定値以下の間は、異なる値に設定され、操舵トルクτ2が所定値を超えたあとは、等しい値に設定される。
【0041】
上述したように、操舵トルクτ1,τ2が所定値以下の場合に、第1の指令値T1a*,T1b*および第2の指令値T2a*,T2b*を異なる値に設定することを「アンバランス制御」という。また、操舵トルクτ1,τ2が所定値を超える場合に、第1の指令値T1a*,T1b*および第2の指令値T2a*,T2b*を等しい値に設定することを「パラレル制御」という。
【0042】
具体的には、第1アシストトルク演算部50および第2アシストトルク演算部60は、操舵トルクτ1,τ2が所定値以下の間は、第1の指令値T1a*,T1b*を、第2の指令値T2a*,T2b*よりも小さい値に演算する。
【0043】
第1電流フィードバック制御部51は、第1の指令値T1a*および第1の指令値T1b*の他、第1回転角度θ1および電流値I1を取り込む。第1電流フィードバック制御部51は、第1の指令値T1a*および第1の指令値T1b*のいずれか一方を用いて制御信号Sm1の演算を実行する。第1電流フィードバック制御部51は、第1アシストトルク演算部50が正常である場合、第1アシストトルク演算部50により演算される第1の指令値T1a*を用いて制御信号Sm1の演算を実行する。これに対し、第1電流フィードバック制御部51は、フェイルセーフ処理などにより第1アシストトルク演算部50が正常でないと判定される場合、第2アシストトルク演算部60により演算される第1の指令値T1b*を用いて制御信号Sm1を演算する。
【0044】
また、第2電流フィードバック制御部61は、第1アシストトルク演算部50が正常である場合、第1アシストトルク演算部50により演算される第2の指令値T2a*を用いて制御信号Sm2の演算を実行する。これに対し、第2電流フィードバック制御部61は、フェイルセーフ処理などにより第1アシストトルク演算部50が正常でないと判定される場合、第2アシストトルク演算部60により演算される第2の指令値T2b*を用いて制御信号Sm2の演算を実行する。これにより、第1マイコン32aがいわゆるマスターとして動作し、第2マイコン32bがいわゆるスレーブとして動作する。
【0045】
なお、たとえば第1電流フィードバック制御部51は、第1の指令値T1a*と第1の指令値T1b*との差が所定値未満の場合、第1の指令値T1a*を用いて制御信号Sm1の演算を実行するようにしてもよい。また、第2電流フィードバック制御部61は、第2の指令値T2a*と第2の指令値T2b*との差が所定値未満の場合、第2の指令値T2a*を用いて制御信号Sm2の演算を実行するようにしてもよい。
【0046】
第1電流フィードバック制御部51は、第1の指令値T1a*および第1の指令値T1b*の他、第1回転角度θ1および電流値I2を取り込む。第1電流フィードバック制御部51は、第1の指令値T1a*および第1の指令値T1b*のいずれか一方を用いて制御信号Sm1の演算を実行する。第1電流フィードバック制御部51は、第1の指令値T1a*(あるいは第1の指令値T1b*)、第1回転角度θ1、および電流値I1に基づいて、制御信号Sm1を演算する。より具体的には、第1電流フィードバック制御部51は、第1の指令値T1a*(あるいは第1の指令値T1b*)に対応した電流指令値に、電流値I1を追従させるべく、電流指令値と電流値I1との偏差に基づく電流フィードバック制御を実行することにより、制御信号Sm1を演算する。
【0047】
第2電流フィードバック制御部61は、第2の指令値T2a*および第2の指令値T2b*の他、第2回転角度θ2および電流値I2を取り込む。第2電流フィードバック制御部61は、第2の指令値T2a*および第2の指令値T2b*のいずれか一方を用いて制御信号Sm2の演算を実行する。第2電流フィードバック制御部61は、第2の指令値T2a*(あるいは第2の指令値T2b*)、第2回転角度θ2、および電流値I2に基づいて、制御信号Sm2を演算する。より具体的には、第2電流フィードバック制御部61は、第2の指令値T2a*(あるいは第2の指令値T2b*)に対応した電流指令値に、電流値I2を追従させるべく、電流指令値と電流値I2との偏差に基づく電流フィードバック制御を実行することにより、制御信号Sm2を演算する。
【0048】
なお、アンバランス制御は、操舵トルクτ1が所定値(後述の操舵トルク閾値τ0)以下の間に実行されるため、たとえば車両が直進走行しているときに行われる制御である。また、パラレル制御は、操舵トルクτ1が所定値を超える場合に行われる制御であるため、たとえば車両の駐車時やステアリングホイール10の据え切り時に行われる制御である。このため、車両が走行しているときにおいて、アンバランス制御が行われる状況はパラレル制御が行われる状況よりも頻繁に発生する。
【0049】
つぎに、図4を参照して、第1アシストトルク演算部50について詳しく説明する。
第1アシストトルク演算部50は、第1アシスト制御部52、均等配分部53、トルクシフト比演算部54、乗算器55、および加算器56,57を備えている。なお、第2アシストトルク演算部60も第1アシストトルク演算部50と同様の構成要素を有している。
【0050】
第1アシスト制御部52は、トルクセンサ40aにより検出された操舵トルクτ1および車速センサ42により検出された車速Vに基づいて、第1の指令値T1a*および第2の指令値T2a*の合算値である基本指令値Ta*を演算する。
【0051】
具体的には、図5に示すように、第1アシスト制御部52は、入力される操舵トルクτ1の絶対値が大きいほど、また車速Vが小さいほど、より大きな絶対値を有する基本指令値Ta*を演算する。操舵トルクτ1の絶対値の変化量|Δτ1|に対する基本指令値Ta*の絶対量の変化量|ΔTa*|の比(|ΔTa*/Δτ1|)は、操舵トルクτ1の絶対値が大きいほど、大きくなっている。なお、操舵トルクτ1は、ステアリングホイール10の右操舵方向であるか、あるいは左操舵方向であるかに基づいて正負が定められている。操舵トルクτ1の正負の符号に伴い、第1アシスト制御部52により演算される基本指令値Ta*も正負の符号を有する。
【0052】
均等配分部53は、入力される基本指令値Ta*に「1/2」を乗算する。すなわち、均等配分部53は、基本指令値Ta*を均等に配分した均等指令値Tae*(「Ta*/2」)を演算する。
【0053】
トルクシフト比演算部54は、入力される基本指令値Ta*に応じたトルクシフト比Rtsを演算する。配分比としてのトルクシフト比Rtsは、系統Aのコイル24aが発生すべきトルクの指令値と、系統Bのコイル24bが発生すべきトルクの指令値との比である。言い換えると、トルクシフト比Rtsは、系統Aのコイル24aが発生すべきトルクおよび系統Bのコイル24bが発生すべきトルクが、均等指令値Tae*からどれだけ乖離(増減)してもよいのかを示す値である。トルクシフト比Rtsが増減することにより、系統Aと系統Bとの間での制御負荷が変更される。なお、トルクシフト比演算部54および均等配分部53により、基本指令値Ta*を、第1の指令値T1a*および第2の指令値T2a*に配分する配分比設定部が構成されている。
【0054】
乗算器55は、均等配分部53により演算された基本指令値Ta*の半分の値である「Ta*/2」に、トルクシフト比Rtsを乗算することにより、シフトトルク指令値Tas*を演算する。
【0055】
加算器56は、均等配分部53により演算された均等指令値Tae*から、乗算器55により演算されたシフトトルク指令値Tas*を減算することにより、第1の指令値T1a*を演算する。
【0056】
加算器57は、第1アシスト制御部52により演算された基本指令値Ta*から、加算器56により演算された第1の指令値T1a*を減算することにより、第2の指令値T2a*を演算する。
【0057】
トルクシフト比演算部54は、入力される基本指令値Ta*が指令閾値以下の場合、第1の指令値T1a*と第2の指令値T2a*とを異ならせるべく、トルクシフト比Rtsを「0」よりも大きい値とする。すなわち、トルクシフト比Rtsが「0」よりも大きい場合、乗算器55により演算されるシフトトルク指令値Tas*は「0」よりも大きい値となる。このため、第1の指令値T1a*は、均等指令値Tae*(基本指令値Ta*の半分の値である「Ta*/2」)よりもシフトトルク指令値Tas*の分だけ小さくなる。一方、第2の指令値T2a*は、基本指令値Ta*から第1の指令値T1a*を減算した値であるため、均等指令値Tae*よりもシフトトルク指令値Tas*の分だけ大きくなる。これにより、第1の指令値T1a*を、第2の指令値T2a*よりも小さくすることができ、系統Aの各構成要素への負荷を系統Bの各構成要素への負荷と異ならせるアンバランス制御を実現できる。
【0058】
なお、基本指令値Ta*は、モータ20が発生するトルクと相関を有する値である入力値であり、指令閾値はこの入力値との比較結果に基づいて、アンバランス制御およびパラレル制御のいずれを実行するかを決定するための閾値である。すなわち、基本指令値Ta*が指令閾値以下である場合には、アンバランス制御が実行され、基本指令値Ta*が指令閾値を超える場合には、パラレル制御が実行される。
【0059】
また、トルクシフト比演算部54は、入力される基本指令値Ta*が指令閾値を超える場合、第1の指令値T1a*と第2の指令値T2a*とを等しくするべく、トルクシフト比Rtsを「0」とする。トルクシフト比Rtsが「0」である場合、乗算器55により演算されるシフトトルク指令値Tas*は「0」となる。このため、第1の指令値T1a*は、基本指令値Ta*の半分の値である均等指令値Tae*となる。また、第2の指令値T2a*は、基本指令値Ta*から第1の指令値T1a*を減算した値であるため、均等指令値Tae*となる。これにより、第1の指令値T1a*を、第2の指令値T2a*と等しくすることができ、系統Aの各構成要素への負荷を系統Bの各構成要素への負荷と等しくするパラレル制御を実現できる。
【0060】
なお、図6に示すように、パラレル制御の実行時には、均等配分部53により演算された均等指令値Tae*を、そのまま第1の指令値T1a*および第2の指令値T2a*としてもよい。
【0061】
つぎに、第1の指令値T1a*,T1b*および第2の指令値T2a*,T2b*の操舵トルクτ1,τ2に対する関係を説明する。なお、ここでは、説明を簡単にするために、車速Vは一定であると仮定する。なお、第1の指令値T1b*および第2の指令値T2b*は、第2アシストトルク演算部60で演算されるものの、第1アシストトルク演算部50で演算される第1の指令値T1a*および第2の指令値T2a*と同じである。
【0062】
図7(a)に破線で示されるように、均等指令値Tae*は、操舵トルクτ1,τ2の絶対値が大きくなるにつれて大きくなる。均等指令値Tae*の操舵トルクτ1,τ2の絶対値に対する関係は、車速Vが同一の条件であるとき、図5に示される基本指令値Ta*の曲線の操舵トルクτ1,τ2の絶対値に対する関係を半分の傾きにしたものと同じになる。このため、均等指令値Tae*の操舵トルクτ1,τ2に対する傾きは、操舵トルクτ1,τ2の絶対値が大きいほど、大きくなる。
【0063】
一方、図7)に実線で示されるように、第1アシストトルク演算部50および第2アシストトルク演算部60により演算される第1の指令値T1a*,T1b*は、均等指令値Tae*と同様に、操舵トルクτ1,τ2の絶対値が大きくなるにつれて大きくなる。しかし、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0以下であるとき、言い換えると第1の指令値T1a*,T1b*が指令閾値T0*の半分以下であるとき、第1の指令値T1a*,T1b*は均等指令値Tae*よりも小さく設定されている。すなわち、基本指令値Ta*が指令閾値T0*以下であるとき、第1の指令値T1a*,T1b*は均等指令値Tae*よりも小さく設定されている。また、操舵トルクτ1,τ2が操舵トルク閾値τ0以下である場合、第1の指令値T1a*,T1b*の操舵トルクτ1,τ2に対する傾きは、操舵トルクτ1,τ2が「0」近傍であるときの方が、操舵トルクτ1,τ2が操舵トルク閾値τ0の近傍であるときよりも、小さく設定されている。
【0064】
また、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0を超えるとき、言い換えると第1の指令値T1a*,T1b*が指令閾値T0*の半分を超えているとき、第1の指令値T1a*,T1b*は均等指令値Tae*と同一に設定されている。すなわち、基本指令値Ta*が指令閾値T0*を超えるとき、第1の指令値T1a*,T1b*は均等指令値Tae*と同一に設定されている。操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0以下の領域から、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0を超える領域へ移行する際、第1の指令値T1a*,T1b*は、均等指令値Tae*よりも小さい状態から均等指令値Tae*と等しい状態へと連続的に遷移する。
【0065】
つぎに、図7)に実線で示される第2の指令値T2a*,T2b*は、破線で示される均等指令値Tae*と同様に、操舵トルクτ1,τ2の絶対値が大きくなるにつれて大きくなる。しかし、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0以下であるとき、第2の指令値T2a*,T2b*は均等指令値Tae*よりも大きく設定されている。また、操舵トルクτ1,τ2が操舵トルク閾値τ0以下である場合、第2の指令値T2a*,T2b*の操舵トルクτ1,τ2に対する傾きは、操舵トルクτ1,τ2が「0」近傍であるときの方が、操舵トルクτ1,τ2が操舵トルク閾値τ0の近傍であるときよりも、大きく設定されている。また、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0を超えるとき、第2の指令値T2a*,T2b*は均等指令値Tae*と同一に設定されている。操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0以下の領域から、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0を超える領域へ移行する際、第2の指令値T2a*,T2b*は、均等指令値Tae*よりも大きい状態から均等指令値Tae*と等しい状態へと連続的に遷移する。
【0066】
なお、トルクシフト比演算部54は、第1の指令値T1a*,T1b*および第2の指令値T2a*,T2b*が図7(a),(b)に示すものとなるように、基本指令値Ta*に応じて、トルクシフト比Rtsを可変に設定している。なお、トルクシフト比演算部54は、操舵トルクτ1,τ2に応じて、トルクシフト比Rtsを可変に設定してもよい。
【0067】
図8は、縦軸に第2の指令値T2a*,T2b*を、横軸に第1の指令値T1a*,T1b*をプロットしたものである。図8には破線で、第1の指令値T1a*,T1a*および第2の指令値T2a*,T2b*が互いに均等指令値Tae*と同一である場合の関係が示されている。また、図8には実線で、図7)の関係を有する第1の指令値T1a*,T1b*および図7)の関係を有する第2の指令値T2a*,T2b*の関係が示されている。基本指令値Ta*が指令閾値T0*以下である場合、言い換えると第1の指令値T1a*,T1b*が指令閾値T0*の半分以下である場合、アンバランス制御が行われる。このため、実線で示される第1の指令値T1a*,T1a*および第2の指令値T2a*,T2b*は、破線で示される均等指令値Tae*と乖離している。これに対し、基本指令値Ta*が指令閾値T0*を超える場合、言い換えると第1の指令値T1a*,T1b*(第2の指令値T2a*,T2b*)が指令閾値T0*の半分を超える場合、パラレル制御が行われるため、実線で示される第1の指令値T1a*,T1a*および第2の指令値T2a*,T2b*は、破線で示される均等指令値Tae*と一致している。すなわち、アンバランス制御の実行時には、第1の指令値T1a*,T1b*が第2の指令値T2a*,T2b*よりも小さく設定される。
【0068】
つぎに、ECU30によりアンバランス制御の実行中に行われるフェイルセーフ処理の実行手順について説明する。このフェイルセーフ処理は、たとえばECU30の第1マイコン32aおよび第2マイコン32bにおいて、それぞれ実行される。
【0069】
図9のフローチャートに示すように、ECU30は、第1の指令値T1a*および第2の指令値T2a*の和が基本指令値Ta*と等しいか否かを判定する(ステップS1)。なお、第1マイコン32aの演算が正常に行われていれば、第1の指令値T1a*および第2の指令値T2a*の和は、基本指令値Ta*と等しくなるはずである。
【0070】
つぎに、ECU30は、第1の指令値T1a*および第2の指令値T2a*の和が基本指令値Ta*と等しい場合(ステップS1のYES)、第1の指令値T1a*と第2の指令値T2a*とが同じ符号であるか否かを判定する(ステップS2)。なお、第1マイコン32aの演算が正常に行われていれば、第1の指令値T1a*と第2の指令値T2a*とが同じ符号であるはずである。モータ20を所定の方向に回転させる際に、系統Aのコイル24aが発生するトルクと、系統Bのコイル24bが発生するトルクとが打ち消しあうようにはしないからである。
【0071】
ECU30は、第1の指令値T1a*と第2の指令値T2a*とが同じ符号である場合(ステップS2のYES)、アンバランス制御を継続する(ステップS3)。
ECU30は、第1の指令値T1a*および第2の指令値T2a*の和が基本指令値Ta*と等しくない場合(ステップS1のNO)、アンバランス制御を中止し、フェイルセーフ処置を実行する(ステップS4)。フェイルセーフ処置の一例としては、系統Aおよび系統Bのうち異常が発生していると考えられる系統の演算を中止することや、第1電流フィードバック制御部51および第2電流フィードバック制御部61において、第2アシストトルク演算部60により演算される指令値を用いてフィードバック制御を行うことが挙げられる。
【0072】
また、ECU30は、第1の指令値T1a*と第2の指令値T2a*とが同じ符号でない場合(ステップS2のNO)、アンバランス制御を中止し、フェイルセーフ処置を実行する(ステップS4)。
【0073】
以上により、フェイルセーフ処理を終了する。なお、当該フェイルセーフ処理は、所定の周期で繰り返し実行される。
本実施形態の作用および効果を説明する。なお、本実施形態では、説明を簡単にするために、第1の指令値T1a*および第2の指令値T2a*を用いて制御信号Sm1,Sm2を演算するものとする。
【0074】
(1)運転者がステアリング操作をすることにより、操舵トルク閾値τ0以下の操舵トルクτ1が発生したとき、アンバランス制御が実行される。これにより、ECU30における系統からモータ20への電力の供給は、ECU30における系統からモータ20への電力の供給と比べて少なくなる。言い換えると、操舵トルクτ1の絶対値が操舵トルク閾値τ0以下である場合には、系統よりも系統の方でより大きなトルクを発生させる。このため、操舵トルクτ1の絶対値が操舵トルク閾値τ0以下である場合、系統の各構成要素(コイル24、第1マイコン32、第駆動回路34など)には、系統の各構成要素(コイル24、第1マイコン32、第駆動回路34)ほど、制御負荷がかかることなく、モータ20からトルクを発生させることができる。
【0075】
これに対して、運転者がステアリング操作することにより、操舵トルク閾値τ0を超える操舵トルクτ1が発生したとき、パラレル制御が実行される。これにより、ECU30における系統AとECU30における系統Bとは、モータ20に互いに等しい電力を供給する。
【0076】
ここで、比較例として、系統Aも系統Bも同じ制御負荷で使用する場合には、各系統の同一構成要素が、同一の要因によって同時期に異常が発生してしまうおそれがある。たとえば、コイル24aおよびコイル24bを同じ制御負荷で使用していると、両コイルは同じように経年劣化するものと考えられるので、同時期に故障することが想定される。また、第1駆動回路34aおよび第2駆動回路34bについても、同じ制御負荷で使用していると、両駆動回路が同じように経年劣化するものと考えられるので、同時期に故障することが想定される。また、経年劣化に限らず、たとえば発熱などによる動作不良などによっても、各系統の同一構成要素が同時期に故障してしまうおそれがある。
【0077】
本実施形態では、系統Aと系統Bとの間の制御負荷が異なる(具体的には、系統の制御負荷が系統の制御負荷よりも小さい)ので、各系統の同一構成要素に同時期に異常が発生することが抑制されている。すなわち、各系統の制御負荷に偏りがあることにより、各系統の同一構成要素が同時期に異常が発生することが抑制されるので、EPS1におけるモータ20のトルクによるアシストが失われることが抑制される。これは、たとえば制御負荷の大きい系統が故障したとしても、制御負荷の小さい系統が故障することなく残ると考えられるためである。この場合、故障することなく残った系統でモータ20のトルク(たとえばモータ20の最大のトルクの半分までのトルク)を発生させることができ、当該トルクに基づいてアシストを継続できる。
【0078】
(2)アンバランス制御を実行するのは、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0以下である状況である。具体的には、アンバランス制御は、車両が直進走行しているときに実行されることがほとんどである。アンバランス制御を実行した際には、系統に比べて系統の制御負荷が大きくなるため、系統に比べて系統の発熱量は大きいことが想定される。しかし、たとえば車両が直進走行しているときには、ステアリング操作をすることは頻繁ではなく、右左折などで一時的にステアリング操作をしたとしても、直進走行に移行すれば排熱されると考えられる。また、操舵トルクτ1,τ2が操舵トルク閾値τ0以下であるため、そもそもの発熱量も小さいものと考えられる。このため、アンバランス制御の実行時であっても、系統に比べて系統の排熱性などの熱的な性能を高める必要はほとんどない。
【0079】
一方、パラレル制御を実行するのは、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0を超える状況である。具体的には、パラレル制御は車両の駐車時や車両の据え切り時に行われる。駐車などに伴ってステアリング操作が行われる場合、一時的に制御負荷が大きくなるうえ、連続してステアリング操作が行われることも想定される。この点、本実施形態であれば、パラレル制御の実行時に、系統Aおよび系統Bの制御負荷が等しく設定されているので、系統Aおよび系統Bのうち、いずれか一方の熱的な性能を高める必要はほとんどない。
【0080】
このように、アンバランス制御を実行しているとき、系統Aと系統Bとで異なる制御負荷になるものの、系統Aおよび系統Bのうち制御負荷の大きい方の熱的な性能を過剰に高める必要がない。
【0081】
(3)トルクシフト比演算部54は、基本指令値Ta*に応じて、トルクシフト比Rtsを可変設定している。言い換えると、基本指令値Ta*は操舵トルクτ1,τ2に基づいて演算されるので、トルクシフト比演算部54は、操舵トルクτ1,τ2に応じて、トルクシフト比Rtsを可変に設定している。このため、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0以下の領域から、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0を超える領域へ移行する際、第1の指令値T1a*,T1b*を、均等指令値Tae*よりも小さい状態から均等指令値Tae*と等しい状態へと滑らかに遷移させることができる。これにより、アンバランス制御からパラレル制御へと滑らかに遷移させることができ、より良好な操舵フィーリングを得ることができる。
【0082】
一方、比較例として、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0以下の領域から、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0を超える領域へ移行する際に、第1の指令値T1a*,T1b*が均等指令値Tae*よりも小さい状態から均等指令値Tae*と等しい状態へと不連続に遷移する場合を想定する。この場合、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0と等しいときと、操舵トルクτ1,τ2の絶対値が操舵トルク閾値τ0よりもわずかに大きいときとで、第1の指令値T1a*,T1b*の値が大きく変化してしまうことが想定される。このため、アンバランス制御からパラレル制御へと滑らかに遷移させることができない。これは、理想的には第1の指令値T1a*,T1b*の値が大きく変化することに対応して、コイル24a,24bを流れる電流を変化させようとするものの、現実的には電流の変化が追いつかないことがあるためである。この結果、運転者は操舵フィーリングの急激な変化を感じてしまう。
【0083】
(4)アンバランス制御中には、図9のフローチャートに示されるようなフェイルセーフ処理が実行される。アンバランス制御中であっても、第1の指令値T1a*および第2の指令値T2a*の和が基本指令値Ta*と等しいこと、および第1の指令値T1a*と第2の指令値T2a*とが同じ符号であることは常に満たされるべき条件である。それにも関わらず、フェイルセーフ処理の条件が満たされる場合には、アンバランス制御を継続するよりも、アンバランス制御を中止し、フェイルセーフ処置を実行することが好ましい。たとえば、第1アシストトルク演算部50からの演算が的確に行えていないと考えられる場合には、アンバランス制御を中止して、フェイルセーフ処置を実行することによって、少なくとも本来得られるはずのアシスト量の半分のアシスト量を維持できる。なお、第1アシストトルク演算部50からの演算が的確に行えていないと考えられる場合にアンバランス制御を継続すると、系統Aに過大な負荷が作用してしまうおそれがあるためである。
【0084】
なお、第1の指令値T1a*および第2の指令値T2a*の和が基本指令値Ta*と同じであるものの、演算間違いなどによって第1の指令値T1a*および第2の指令値T2a*の配分が本来演算されるべき値と異なる場合も考えられる。このような場合でも、モータ20によって発生するトルクは本来演算されるべきトルクと同じとなるので、当該トルクに基づいたアシストを継続できる。
【0085】
なお、本実施形態は次のように変更してもよい。また、以下の他の実施形態は、技術的に矛盾しない範囲において、互いに組み合わせることができる。
・本実施形態では、系統Aおよび系統Bの2系統に冗長化されたが、3系統以上に冗長化されてもよい。たとえば、3系統に冗長する場合、各系統のコイルは、モータ20の最大のトルクの1/3のトルクを発生させる。アンバランス制御が実行されるとき、3系統のうちいずれか1系統の制御負荷を、他の2系統の制御負荷よりも小さくすることにより、制御負荷の小さい1系統が他の2系統と同時期に故障することを抑制する。また、パラレル制御が実行されるとき、3系統の制御負荷をそれぞれ等しくすることにより、一部の系統に制御負荷が集中することを抑制する。
【0086】
・第1電流フィードバック制御部51は、第1の指令値T1a*と第1の指令値T1b*との差が所定の値未満の場合、第1の指令値T1a*および第1の指令値T1b*の平均値を用いて制御信号Sm1の演算を実行してもよい。なお、第2電流フィードバック制御部61も同様である。
【0087】
・回転角センサ41は、MRセンサを用いたものであってもよいし、ホールセンサを用いたものであってもよいし、レゾルバを用いたものであってもよい。
・本実施形態では、系統Aおよび系統Bは、それぞれモータ20の最大のトルクの半分(50%)のトルク(アシスト量)を発生させたが、これに限らない。すなわち、系統Aで発生できる最大のトルクは、系統Bで発生できる最大のトルクと異なっていてもよい。なお、系統Aで発生できる最大のトルクと、系統Bで発生できる最大のトルクとの和は、合計で100%以内に設定される。
【0088】
・本実施形態では、第1アシストトルク演算部50について、図4に示すように、第1アシストトルク演算部50は、第1アシスト制御部52、均等配分部53、トルクシフト比演算部54、乗算器55、および加算器56,57を備えるものとしたが、これに限らない。
【0089】
たとえば、図10(a)に示すように、第1アシストトルク演算部50は、第1アシスト制御部52、配分比設定部としての系統A割合演算部70、乗算器71、および加算器72を備えるものであってもよい。この場合、系統A割合演算部70は、基本指令値Ta*における第1の指令値T1a*の割合である系統A割合Raを演算する。乗算器71は、第1アシスト制御部52により演算された基本指令値Ta*に、系統A割合演算部70により演算された系統A割合Raを乗算することにより、第1の指令値T1a*を演算する。一方、加算器72は、第1アシスト制御部52により演算された基本指令値Ta*から、乗算器71により演算された第1の指令値T1a*を減算することにより、第2の指令値T2a*を演算する。
【0090】
また、図10(b)に示すように、第1アシストトルク演算部50は、第1アシスト制御部52、配分比設定部としての配分比演算部73、乗算器74、および乗算器75を備えるものであってもよい。この場合、配分比演算部73は、基本指令値Ta*における第1の指令値T1a*の割合である系統A割合R1a、および基本指令値Ta*における第2の指令値T2a*の割合である系統B割合R2aを演算する。乗算器74は、第1アシスト制御部52により演算された基本指令値Ta*に、配分比演算部73により演算された系統A割合R1aを乗算することにより、第1の指令値T1a*を演算する。一方、乗算器75は、基本指令値Ta*に、配分比演算部73により演算された系統B割合R2aを乗算することにより、第2の指令値T2a*を演算する。
【0091】
また、図10(c)に示すように、第1アシストトルク演算部50は、第1アシスト制御部52および配分比設定部としての配分比可変部76を備えるものであってもよい。この場合、配分比可変部76は、複数の配分比(第1〜第3配分比D1〜D3)を記憶している。配分比可変部76は、第1アシスト制御部52により演算される基本指令値Ta*および車速センサ42により検出される車速Vが取り込まれる。配分比可変部76は、取り込まれる車速Vに応じて使用する配分比を選択する。配分比可変部76は、基本指令値Ta*に車速Vに応じて選択された配分比を乗算することにより第1の指令値T1a*を演算するとともに、基本指令値Ta*に「1−選択された配分比」を乗算することにより第2の指令値T2a*を演算する。
【0092】
・第1アシスト制御部52は、操舵トルクτ1および車速Vに基づいて基本指令値Ta*を演算したが、操舵トルクτ1のみに基づいて基本指令値Ta*を演算してもよい。
・トルクシフト比演算部54は、入力される基本指令値Ta*に応じてトルクシフト比Rtsを演算したが、これに限らない。たとえば、トルクシフト比演算部54には、操舵トルクτ1(操舵トルクτ2)が入力され、入力された操舵トルクτ1に応じてトルクシフト比Rtsを演算してもよい。
【0093】
図9のフローチャートに示されるようなフェイルセーフ処理は、第1マイコン32aおよび第2マイコン32bの少なくとも一方で実行されればよい。
・本実施形態では、アンバランス制御中に図9のフローチャートに示されるようなフェイルセーフ処理が行われたが、行わなくてもよい。
【0094】
・本実施形態では、操舵トルクτ1,τ2が操舵トルク閾値τ0以下である場合、系統の制御負荷を系統の制御負荷よりも小さくしたが、系統Aの制御負荷を系統Bの制御負荷よりも大きくしてもよい。
・本実施形態では、操舵トルクτ1,τ2が操舵トルク閾値τ0以下である場合、第1の指令値T1a*,T1b*の操舵トルクτ1,τ2に対する傾きを、操舵トルクτ1,τ2が「0」近傍であるときの方が、操舵トルクτ1,τ2が操舵トルク閾値τ0の近傍であるときよりも小さく設定したが、これに限らない。すなわち、操舵トルクτ1,τ2が操舵トルク閾値τ0以下である場合、第1の指令値T1a*,T1b*の操舵トルクτ1,τ2に対する傾きを、操舵トルクτ1,τ2が「0」近傍であるときの方が、操舵トルクτ1,τ2が操舵トルク閾値τ0の近傍であるときよりも大きく設定してもよい。第2の指令値T2a*,T2b*の操舵トルクτ1,τ2に対する傾きも同様に、操舵トルクτ1,τ2が「0」近傍であるときの方が、操舵トルクτ1,τ2が操舵トルク閾値τ0の近傍であるときよりも小さく設定してもよい。
【0095】
・本実施形態では、パラレル制御中には、系統Aと系統Bの制御負荷を等しくしたが、これに限らない。すなわち、パラレル制御中には、アンバランス制御中よりも、系統Aと系統Bとの制御負荷の差を小さくすればよい。言い換えると、パラレル制御中には、アンバランス制御中よりも、第1の指令値T1a*と第1の指令値T1b*との差を小さくし、第2の指令値T2a*と第2の指令値T2b*との差を小さくすればよい。
【0096】
・本実施形態では、モータ20によってステアリングシャフト11にアシスト力を付与するEPS1に具体化して示したが、これに限らない。たとえば、ラックシャフト12に平行に配置された回転軸21を有するモータ20によってラックシャフト12にアシスト力を付与するEPS1に具体化したステアリング装置であってもよい。また、ステアバイワイヤ装置であってもよい。すなわち、モータ20によって操舵機構2に動力を付与するステアリング装置であれば、どのようなものであってもよい。
【符号の説明】
【0097】
1…EPS、2…操舵機構、3…アシスト機構、10…ステアリングホイール、11…ステアリングシャフト、11a…コラムシャフト、11b…インターミディエイトシャフト、11c…ピニオンシャフト、12…コラムシャフト、13…ラックアンドピニオン機構、14…タイロッド、15…転舵輪、20…モータ、21…回転軸、22…減速機構、23…ロータ、24,24a,24b…コイル、30…ECU、31a…第1発振子、31b…第2発振子、32a…第1マイコン(第1の制御部)、32b…第2マイコン(第2の制御部)、33a…第1電流センサ、33b…第2電流センサ、34a…第1駆動回路、34b…第2駆動回路、40a,40b…トルクセンサ、41…回転角センサ、42…車速センサ、50…アシストトルク演算部、51…第1電流フィードバック制御部、52…第1アシスト制御部、53…均等配分部、54…トルクシフト比演算部(配分比設定部)、55…乗算器、56,57…加算器、60…第2アシストトルク演算部、61…第2電流フィードバック制御部、θ…回転角度、θ1…第1回転角度、θ2…第2回転角度、τ1,τ2…操舵トルク(入力値)、τ0…操舵トルク閾値、I1,I2…電流値、Sm1,Sm2…制御信号、Ta*…基本指令値(入力値、指令値)、T1a*,T1b*…第1の指令値、T2a*,T2b*…第2の指令値、Tae*…均等指令値、Tas*…シフトトルク指令値、T0*…指令閾値。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10