(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-08
(45)【発行日】2023-09-19
(54)【発明の名称】モータ制御装置およびモータ制御方法
(51)【国際特許分類】
H02P 25/22 20060101AFI20230911BHJP
【FI】
H02P25/22
(21)【出願番号】P 2022552263
(86)(22)【出願日】2020-04-27
(86)【国際出願番号】 IB2020000388
(87)【国際公開番号】W WO2021220025
(87)【国際公開日】2021-11-04
【審査請求日】2022-08-29
(73)【特許権者】
【識別番号】000001247
【氏名又は名称】株式会社ジェイテクト
(73)【特許権者】
【識別番号】511056585
【氏名又は名称】ジェイテクト・ヨーロッパ
【氏名又は名称原語表記】JTEKT EUROPE
【住所又は居所原語表記】Z.I. du Broteau, 69540 IRIGNY, FRANCE
(74)【代理人】
【識別番号】100105957
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】藤田 祐志
(72)【発明者】
【氏名】河村 洋
(72)【発明者】
【氏名】スラーマ、タヘル
(72)【発明者】
【氏名】ハンセル、バティスト
(72)【発明者】
【氏名】ジャネル、ローラン
【審査官】島倉 理
(56)【参考文献】
【文献】特開2020-14347(JP,A)
【文献】特開2011-36098(JP,A)
【文献】特開2002-209398(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H02P 25/22
(57)【特許請求の範囲】
【請求項1】
複数のコイル群を有するモータを制御するモータ制御装置において、
処理回路を備え、該処理回路は、
前記複数のコイル群それぞれに対する複数の個別トルク指令値を演算するように構成されたトルク指令値演算部と、
前記複数のコイル群の各々について、そのコイル群で発生するトルクの応答特性を考慮しつつ、現在の演算周期よりも一周期後の演算周期において同コイル群で発生すると理論的に期待される理論出力トルクを、同コイル群に対する前記個別トルク指令値に基づいて演算するように構成された理論出力トルク演算部と、
前記複数のコイル群の各々について、そのコイル群で発生するトルクの応答特性を考慮しつつ、前記現在の演算周期よりも一周期後の演算周期において同コイル群で発生すると現実的に期待される予測出力トルクを、同コイル群で実際に発生した実出力トルクに基づいて演算するように構成された予測出力トルク演算部と、
前記複数のコイル群の各々について、前記理論出力トルクと前記予測出力トルクとの差分である差分トルクを演算するように構成された差分トルク演算部と、
前記複数のコイル群のうちの少なくとも1つに対応する前記差分トルクに基づいて、他の少なくとも一つのコイル群に対する前記個別トルク指令値を補正するように構成された補正演算部と、
前記複数のコイル群に対する給電を、それぞれ対応する補正後の前記個別トルク指令値に基づいてコイル群ごとに独立して制御するように構成された電流制御部と、を備えるモータ制御装置。
【請求項2】
請求項1に記載のモータ制御装置において、
前記理論出力トルク演算部は、次式を用いて、前記理論出力トルクYi
kを演算し、
Yi
k=α×Yi
k-1+(1-α)×U*
k-1
ただし、「α」は定数、「U*
k-1」は前記現在の演算周期よりも一周期前の演算周期において得られた補正後の前記個別トルク指令値、「Yi
k-1」は前記現在の演算周期よりも一周期前の演算周期において得られた前記理論出力トルクであり、
前記予測出力トルク演算部は、次式を用いて、前記現在の演算周期において各コイル群により発生していると推定される推定出力トルクYe
kを演算し、
Ye
k=β×Ye
k-1+(1-β)×U*
k-1+L×(Yr
k-1-Ye
k-1)
ただし、「β」は定数、「U*
k-1」は前記現在の演算周期よりも一周期前の演算周期において得られた補正後の前記個別トルク指令値、「Yr
k-1」は各コイル群で前記現在の演算周期よりも一周期前の演算周期において実際に発生した前記実出力トルク、「Ye
k-1」は前記現在の演算周期よりも一周期前の演算周期において得られた前記推定出力トルクであり、
さらに前記予測出力トルク演算部は、次式を用いて、前記予測出力トルクYee
kを演算し、
Yee
k=β×Ye
k+(1-β)×U*
k+L×(Yr
k-1-Yee
k-1)
ただし、「Yee
k-1」は前記現在の演算周期よりも一周期前の演算周期において得られた前記予測出力トルクであるモータ制御装置。
【請求項3】
請求項1又は2に記載のモータ制御装置において、
前記補正演算部は、
前記他の少なくとも一つのコイル群により出力可能な最大出力トルクから、前記他の少なくとも一つのコイル群に対する補正前の前記個別トルク指令値を減算することにより余裕トルクを演算し、
前記差分トルクに基づいて、前記余裕トルクの範囲で前記他の少なくとも一つのコイル群に対する前記補正前の個別トルク指令値を補正する、ように構成されたモータ制御装置。
【請求項4】
請求項1~3のいずれか一項に記載のモータ制御装置において、
前記トルク指令値演算部は、
前記モータで発生させるべきトルク指令値を演算し、
前記トルク指令値を予め設定される所定比率で分けることにより、前記複数の個別トルク指令値を演算する、ように構成されたモータ制御装置。
【請求項5】
請求項1~4のいずれか一項に記載のモータ制御装置において、
前記モータは、車両の操舵機構に付与されるトルクを発生する、ように構成されたモータ制御装置。
【請求項6】
複数のコイル群を有するモータを制御するモータ制御方法において、
前記複数のコイル群それぞれに対する複数の個別トルク指令値を演算することと、
前記複数のコイル群の各々について、そのコイル群で発生するトルクの応答特性を考慮しつつ、現在の演算周期よりも一周期後の演算周期において同コイル群で発生すると理論的に期待される理論出力トルクを、同コイル群に対する前記個別トルク指令値に基づいて演算することと、
前記複数のコイル群の各々について、そのコイル群で発生するトルクの応答特性を考慮しつつ、前記現在の演算周期よりも一周期後の演算周期において同コイル群で発生すると現実的に期待される予測出力トルクを、同コイル群で実際に発生した実出力トルクに基づいて演算することと、
前記複数のコイル群の各々について、前記理論出力トルクと前記予測出力トルクとの差分である差分トルクを演算することと、
前記複数のコイル群のうちの少なくとも1つに対応する前記差分トルクに基づいて、他の少なくとも一つのコイル群に対する前記個別トルク指令値を補正することと、
前記複数のコイル群に対する給電を、それぞれ対応する補正後の前記個別トルク指令値に基づいてコイル群ごとに独立して制御することと、
を含むモータ制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、モータ制御装置およびモータ制御方法に関する。
【背景技術】
【0002】
従来、たとえば特許文献1に記載されるように、車両の操舵機構に付与されるアシストトルクの発生源であるモータを制御する制御装置が知られている。この制御装置は、2つの制御系統を有し、2つの制御系統にそれぞれ対応する2つのコイル群を有するモータに対する給電を制御する。2つの制御系統の各々は、駆動回路およびマイクロコンピュータの組を有している。各マイクロコンピュータは操舵トルクに応じて対応する駆動回路を制御し、それにより、2つのコイル群に対する給電が制御系統ごとに独立して制御される。モータは、2つのコイル群で発生するトルクの合計であるアシストトルクを発生する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
2つのコイル群を有するモータにおいては、2つのコイル群によりそれぞれ発生させることができる最大のトルクがアンバランスになる状況が想定される。こうした状況が発生する要因としてはいくつかの事象が考えられる。たとえば2つのコイル群のいずれか一方のコイル群が過熱した場合、この過熱が検出されたコイル群を保護するために当該コイル群への給電のみが制限されることが一因として挙げられる。この場合、給電が制限されたコイル群により発生するトルクのみが上限値に達する。このため、給電が制限されたコイル群により発生するトルクが上限値に達するタイミングの前後において、操舵トルクに対するアシストトルクの変化割合が変化する。この変化に伴い発生する操舵トルクの変動あるいはトルクリップルなどを運転者が違和感として感じることが懸念される。
【0005】
本開示の目的は、複数のコイル群によりそれぞれ発生可能な最大のトルクがアンバランスになった場合であれトータルのモータトルクを一定の割合で変化させることができるモータ制御装置およびモータ制御方法を提供することにある。
【課題を解決するための手段】
【0006】
本開示の一態様に係るモータ制御装置は、複数のコイル群を有するモータを制御する。モータ制御装置は、処理回路を備える。処理回路は、前記複数のコイル群それぞれに対する複数の個別トルク指令値を演算するように構成されたトルク指令値演算部と、前記複数のコイル群の各々について、そのコイル群で発生するトルクの応答特性を考慮しつつ、現在の演算周期よりも一周期後の演算周期において同コイル群で発生すると理論的に期待される理論出力トルクを、同コイル群に対する前記個別トルク指令値に基づいて演算するように構成された理論出力トルク演算部と、前記複数のコイル群の各々について、そのコイル群で発生するトルクの応答特性を考慮しつつ、前記現在の演算周期よりも一周期後の演算周期において同コイル群で発生すると現実的に期待される予測出力トルクを、同コイル群で実際に発生した実出力トルクに基づいて演算するように構成された予測出力トルク演算部と、前記複数のコイル群の各々について、前記理論出力トルクと前記予測出力トルクとの差分である差分トルクを演算するように構成された差分トルク演算部と、前記複数のコイル群のうちの少なくとも1つに対応する前記差分トルクに基づいて、他の少なくとも一つのコイル群に対する前記個別トルク指令値を補正するように構成された補正演算部と、前記複数のコイル群に対する給電を、それぞれ対応する補正後の前記個別トルク指令値に基づいてコイル群ごとに独立して制御するように構成された電流制御部と、を備える。
【0007】
本開示の一態様に係るモータ制御方法は、複数のコイル群を有するモータを制御する。モータ制御方法は、前記複数のコイル群それぞれに対する複数の個別トルク指令値を演算することと、前記複数のコイル群の各々について、そのコイル群で発生するトルクの応答特性を考慮しつつ、現在の演算周期よりも一周期後の演算周期において同コイル群で発生すると理論的に期待される理論出力トルクを、同コイル群に対する前記個別トルク指令値に基づいて演算することと、前記複数のコイル群の各々について、そのコイル群で発生するトルクの応答特性を考慮しつつ、前記現在の演算周期よりも一周期後の演算周期において同コイル群で発生すると現実的に期待される予測出力トルクを、同コイル群で実際に発生した実出力トルクに基づいて演算することと、前記複数のコイル群の各々について、前記理論出力トルクと前記予測出力トルクとの差分である差分トルクを演算することと、前記複数のコイル群のうちの少なくとも1つに対応する前記差分トルクに基づいて、他の少なくとも一つのコイル群に対する前記個別トルク指令値を補正することと、前記複数のコイル群に対する給電を、それぞれ対応する補正後の前記個別トルク指令値に基づいてコイル群ごとに独立して制御することと、を含む。
【図面の簡単な説明】
【0008】
【
図1】第1の実施の形態のモータ制御装置が搭載される電動パワーステアリング装置の概略を示す構成図。
【
図2】
図1のモータ制御装置及びモータのブロック図。
【
図3】
図2のモータ制御装置における第1のマイクロコンピュータおよび第2のマイクロコンピュータのブロック図。
【
図4A】第1の実施の形態において、第1のコイル群に対するモータ電流が制限されていない場合の、操舵トルクと第1のコイル群に対する第1の電流指令値との関係を示すグラフ。
【
図4B】は第1の実施の形態において、第2のコイル群に対するモータ電流が制限されていない場合の、操舵トルクと第2のコイル群に対する第2の電流指令値との関係を示すグラフ。
【
図4C】は第1の実施の形態において、第1のコイル群および第2のコイル群に対するモータ電流が制限されていない場合の、操舵トルクとモータに対するトータルの電流指令値との関係を示すグラフ。
【
図5】第1の実施の形態において、
図2のモータ制御装置の第1の制御部に対する電源電圧が低下している場合の操舵速度(モータの回転速度)と、第1のコイル群および第2のコイル群により発生するモータのトルクとの関係を示すグラフ。
【
図6】第1の実施の形態において、
図2のモータ制御装置の第1の制御部および第2の制御部に対する電源電圧と、モータトルクの制限割合との関係を示すグラフ。
【
図7】第1の実施の形態において、
図2のモータのモータ回転数およびモータ制御装置の第1の制御部に対する電源電圧と、第1のコイル群により発生可能な出力トルクとの関係を示すグラフ。
【
図8A】比較例において、第1のコイル群に対するモータ電流が制限されている場合の、操舵トルクと第1のコイル群に対する第1の電流指令値との関係を示すグラフ。
【
図8B】比較例において、第2のコイル群に対するモータ電流が制限されていない場合の、操舵トルクと第2のコイル群に対する第2の電流指令値との関係を示すグラフ。
【
図8C】比較例において、第1のコイル群に対するモータ電流が制限されている場合の、操舵トルクとモータに対するトータルの電流指令値との関係を示すグラフ。
【
図9A】第1の実施の形態において、第1のコイル群に対するモータ電流が制限されている場合の、操舵トルクと第1のコイル群に対する第1の電流指令値との関係を示すグラフ。
【
図9B】第1の実施の形態において、第2のコイル群に対するモータ電流が制限されていない場合の、操舵トルクと第2のコイル群に対する第2の電流指令値との関係を示すグラフ。
【
図9C】第1の実施の形態において、第1のコイル群に対するモータ電流が制限されている場合の、操舵トルクとモータに対するトータルの電流指令値との関係を示すグラフ。
【発明を実施するための形態】
【0009】
<第1の実施の形態>
以下、モータ制御装置を電動パワーステアリング装置10(以下、「EPS10」という。)のECU(電子制御装置)に具体化した第1の実施の形態を説明する。
図1に示すように、EPS10は、運転者のステアリング操作に基づいて転舵輪を転舵させる操舵機構20、運転者のステアリング操作を補助する操舵補助機構30、および操舵補助機構30の作動を制御するECU40を備えている。
【0010】
操舵機構20は、運転者により操作されるステアリングホイール21、およびステアリングホイール21と一体回転するステアリングシャフト22を備えている。ステアリングシャフト22は、ステアリングホイール21に連結されたコラムシャフト22a、コラムシャフト22aの下端部に連結されたインターミディエイトシャフト22b、およびインターミディエイトシャフト22bの下端部に連結されたピニオンシャフト22cを含む。ピニオンシャフト22cの下端部は、ピニオンシャフト22cに交わる方向へ延びるラック軸23に噛合されている。正確には、ピニオンシャフト22cの下端部は、ラック軸23のラック歯23aに噛合されている。ラック軸23の両端には、タイロッド25を介して左右の転舵輪26がそれぞれ連結されている。
【0011】
したがって、ステアリングシャフト22の回転運動は、ピニオンシャフト22cとラック軸23との噛合を通じてラック軸23の往復直線運動に変換される。当該往復直線運動が左右の転舵輪26にそれぞれ伝達されることにより、これら転舵輪26の転舵角θwが変更される。
【0012】
操舵補助機構30は、操舵補助力、すなわちアシストトルクの発生源であるモータ31を備えている。モータ31としては、たとえば三相の表面磁石同期モータ(SPMSM)が採用される。モータ31は、減速機構32を介してコラムシャフト22aに連結されている。減速機構32はモータ31の回転を減速し、当該減速した回転力をコラムシャフト22aに伝達する。すなわち、ステアリングシャフト22にモータ31のトルクが操舵補助力として付与されることにより、運転者のステアリング操作が補助される。
【0013】
ECU40は、車両に設けられる各種のセンサの検出結果を運転者の要求、走行状態および操舵状態を示す状態量として取得し、これら取得される各種の状態量に応じてモータ31を制御する。ECU40は、(1)コンピュータプログラム(ソフトウェア)に従って各種処理を実行する1つ以上のプロセッサ、(2)各種処理のうち少なくとも一部の処理を実行する、特定用途向け集積回路(ASIC)等の1つ以上の専用のハードウェア回路、或いは(3)それらの組み合わせ、を含む処理回路(processing circuitry)として構成し得る。プロセッサは、CPU並びに、RAM及びROM等のメモリを含み、メモリは、処理をCPUに実行させるように構成されたプログラムコードまたは指令を格納している。メモリすなわちコンピュータ可読媒体は、汎用または専用のコンピュータでアクセスできるあらゆる利用可能な媒体を含む。
【0014】
各種のセンサは、たとえば車速センサ41、トルクセンサ42a,42b、および回転角センサ43a,43bを含む。車速センサ41は車両の走行速度である車速Vを検出する。トルクセンサ42a,42bは、コラムシャフト22aに設けられている。トルクセンサ42a,42bはステアリングシャフト22に付与される操舵トルクτ1,τ2を検出する。回転角センサ43a,43bは、モータ31に設けられている。回転角センサ43a,43bは、モータ31の回転角θm1,θm2を検出する。操舵トルクτ1,τ2及び回転角θm1,θm2は、たとえば右方向に操舵した場合に正の値、左方向に操舵した場合に負の値として検出する。操舵トルクτ1,τ2は、トルクセンサ42a,42bが正常であれば、基本的に互いに同一の値である。回転角θm1,θm2は、回転角センサ43a,43bが正常であれば、基本的に互いに同一の値である。
【0015】
ECU40は、回転角センサ43a,43bを通じて検出されるモータ31の回転角θm1,θm2を使用してモータ31のベクトル制御を実行する。また、ECU40は操舵トルクτ1,τ2、および車速Vに基づいて目標アシストトルクを演算し、当該演算される目標アシストトルクを操舵補助機構30に発生させるための駆動電力をモータ31に供給する。
【0016】
つぎに、モータ31の構成を説明する。
図2に示すように、モータ31は、ロータ51、図示しないステータに巻回された第1のコイル群52および第2のコイル群53を有している。第1のコイル群52は、U相コイル、V相コイルおよびW相コイルを有している。第2のコイル群53も、U相コイル、V相コイルおよびW相コイルを有している。
【0017】
つぎに、ECU40について詳細に説明する。
ECU40は、第1のコイル群52に対応する第1の制御系統と、第2のコイル群53に対応する第2の制御系統とを有し、第1のコイル群52および第2のコイル群53に対する給電を制御系統ごとに制御する。ECU40は、第1のコイル群52に対する給電を制御する第1の制御系統である第1の制御部60、および第2のコイル群53に対する給電を制御する第2の制御系統である第2の制御部70を有している。
【0018】
第1の制御部60は、第1の駆動回路61、第1の発振器62、処理回路である第1のマイクロコンピュータ63、および第1の制限制御部64を有している。
第1の駆動回路61には、車両に搭載されるバッテリなどの直流電源81から電力が供給される。第1の駆動回路61と直流電源81のプラス端子とは、第1の給電線82により互いに接続されている。第1の給電線82には、イグニッションスイッチなどの車両の電源スイッチ83が設けられている。この電源スイッチ83は、エンジンなどの車両の走行用駆動源を作動させる際に操作される。電源スイッチ83がオンされたとき、直流電源81の電力は、第1の給電線82を介して第1の駆動回路61に供給される。第1の給電線82には電圧センサ65が設けられている。電圧センサ65は直流電源81の電圧Vb1を検出する。ちなみに、第1のマイクロコンピュータ63、および回転角センサ43aには図示しない給電線を介して直流電源81の電力が供給される。
【0019】
第1の駆動回路61は、U,V,Wの3つの相に対応する3つのレグが並列接続されてなるPWMインバータである。各レグは、互いに直列接続された、電界効果型トランジスタ(FET)などの2つのスイッチング素子を含む。第1の駆動回路61は、第1のマイクロコンピュータ63により生成される指令信号Sc1に基づいて各相のスイッチング素子がスイッチングすることにより、直流電源81から供給される直流電力を三相交流電力に変換する。第1の駆動回路61により生成される三相交流電力は、バスバーあるいはケーブルなどからなる各相の給電経路84を介して第1のコイル群52に供給される。給電経路84には電流センサ66が設けられている。電流センサ66は第1の駆動回路61から第1のコイル群52へ供給される電流Im1を検出する。なお、電流は、たとえば右方向への操舵をアシストする場合に正の値、左方向への操舵をアシストする場合に負の値とする。
【0020】
クロック発生回路として用いられる第1の発振器62は、第1のマイクロコンピュータ63を動作させるための同期信号であるクロックを生成する。
第1のマイクロコンピュータ63は、第1の発振器62により生成されるクロックに従って各種の処理を実行する。第1のマイクロコンピュータ63には、トルクセンサ42aを通じて検出される操舵トルクτ1、車速センサ41を通じて検出される車速V、第1の制限制御部64により演算される制限値ILIM1、電流センサ66を通じて検出される電流Im1、および回転角センサ43aを通じて検出されるモータ31の回転角θm1が入力される。また、第1のマイクロコンピュータ63には、第2のマイクロコンピュータ73により演算される各種の状態量が入力される。
【0021】
第1のマイクロコンピュータ63は、これらの状態量に基づいて第1の駆動回路61に対する指令信号Sc1を生成する。指令信号Sc1は、パルス幅変調されたPWM信号であり、第1の駆動回路61の各スイッチング素子のデューティ比を規定する。デューティ比とは、パルス周期に占めるスイッチング素子のオン時間の割合をいう。第1のマイクロコンピュータ63は、ロータ51の回転角θm1および電流Im1を使用して第1のコイル群52に対する通電を制御する。第1の駆動回路61を通じて指令信号Sc1に応じた電流が第1のコイル群52に供給されることにより、第1のコイル群52は指令信号Sc1に応じたトルクを発生する。
【0022】
第1の制限制御部64には、電圧センサ65を通じて検出される直流電源81の電圧Vb1、および温度センサ44aを通じて検出される第1のコイル群52あるいはその周辺の温度Temp1が入力される。なお、温度センサ44aは、第1の駆動回路61あるいは給電経路84の近傍に設けられる。
【0023】
第1の制限制御部64は、電圧Vb1、およびモータ31の発熱状態に応じて、第1のコイル群52へ供給する電流量を制限するための制限値ILIM1を演算する。制限値ILIM1は、直流電源81の電圧Vb1の低下を抑制する観点、あるいはモータ31を過熱から保護する観点に基づいて、第1のコイル群52へ供給する電流量の上限値、すなわち第1のコイル群52により発生させるトルクの上限値として演算される。
【0024】
第1の制限制御部64は、電圧Vb1が電圧しきい値以下であるとき、その時々の電圧Vb1の値に応じて制限値ILIM1を演算する。電圧しきい値は、EPS10のアシスト保証電圧範囲の下限値を基準として設定される。また、第1の制限制御部64は、温度Temp1が温度しきい値を超えているとき、制限値ILIM1を演算する。制限値ILIM1が演算されるとき、第1のマイクロコンピュータ63は、第1のコイル群52へ供給する電流量を制限値ILIM1に応じて制限する。なお、制限値ILIM1は、操舵状態、電源電圧およびモータ31の発熱状態に応じて変動する。
【0025】
第2の制御部70は、基本的には第1の制御部60と同様の構成を有している。すなわち、第2の制御部70は、第2の駆動回路71、第2の発振器72、処理回路である第2のマイクロコンピュータ73、および第2の制限制御部74を有している。
第2の駆動回路71にも直流電源81から電力が供給される。第1の給電線82において、電源スイッチ83と第1の制御部60との間には接続点Pbが設けられている。この接続点Pbと第2の駆動回路71とは、第2の給電線85により互いに接続されている。電源スイッチ83がオンされたとき、直流電源81の電力は、第2の給電線85を介して第2の駆動回路71に供給される。第2の給電線85には電圧センサ75が設けられている。電圧センサ75は直流電源81の電圧Vb2を検出する。
【0026】
第2の駆動回路71により生成される三相交流電力は、バスバーあるいはケーブルなどからなる各相の給電経路86を介して第2のコイル群53に供給される。給電経路86には電流センサ76が設けられている。電流センサ76は第2の駆動回路71から第2のコイル群53へ供給される電流Im2を検出する。
【0027】
第2のマイクロコンピュータ73は、第2の発振器72により生成されるクロックに従って各種の処理を実行する。第2のマイクロコンピュータ73には、トルクセンサ42bを通じて検出される操舵トルクτ2、および車速センサ41を通じて検出される車速V、第2の制限制御部74により演算される制限値ILIM2、電流センサ76を通じて検出される電流Im2、および回転角センサ43bを通じて検出されるモータ31の回転角θm2が入力される。また、第2のマイクロコンピュータ73には、第1のマイクロコンピュータ63により演算される各種の状態量が入力される。
【0028】
第2のマイクロコンピュータ73は、これらの状態量に基づいて第2の駆動回路71に対する指令信号Sc2を生成する。指令信号Sc2は、パルス幅変調されたPWM信号であり、第2の駆動回路71の各スイッチング素子のデューティ比を規定する。第2のマイクロコンピュータ73は、ロータ51の回転角θm2および電流Im2を使用して第2のコイル群53に対する通電を制御する。第2の駆動回路71を通じて指令信号Sc2に応じた電流が第2のコイル群53に供給されることにより、第2のコイル群53は指令信号Sc2に応じたトルクを発生する。
【0029】
第2の制限制御部74には、電圧センサ75を通じて検出される直流電源81の電圧Vb2、および温度センサ44bを通じて検出される第2のコイル群53あるいはその周辺の温度Temp2が入力される。なお、温度センサ44bは、第2の駆動回路71あるいは給電経路86の近傍に設けられる。
【0030】
第2の制限制御部74は、電圧Vb2、およびモータ31の発熱状態を示す温度Temp2に応じて、第2のコイル群53へ供給する電流量を制限するための制限値ILIM2を演算する。第2の制限制御部74は、第1の制限制御部64と同様に、制限値ILIM2を演算する。制限値ILIM2が演算されるとき、第2のマイクロコンピュータ73は、第2のコイル群53へ供給する電流量、すなわち第2のコイル群53により発生させるトルクを制限値ILIM2に応じて制限する。なお、制限値ILIM2は、操舵状態、電源電圧およびモータ31の発熱状態に応じて変動する。
【0031】
つぎに、第1のマイクロコンピュータ63および第2のマイクロコンピュータ73の構成を詳細に説明する。
図3に示すように、第1のマイクロコンピュータ63は、トルク指令値演算部である第1のアシスト制御部91、および電流制御部である第1の電流制御部92を有している。
【0032】
第1のアシスト制御部91には、トルクセンサ42aを通じて検出される操舵トルクτ1、および車速センサ41を通じて検出される車速Vが入力される。第1のアシスト制御部91は、これらの状態量に基づいて、モータ31に発生させるべき目標アシストトルクに対応するトルク指令値Tas*を演算する。具体的には、第1のアシスト制御部91は、操舵トルクτ1の絶対値が大きいほど、また車速Vが遅いほどより大きな絶対値のトルク指令値Tas*を演算する。
【0033】
第1のアシスト制御部91は、トータルのトルク指令値Tas*に基づいて、第1のコイル群52に対する個別トルク指令値である第1のトルク指令値Tas1*、および第2のコイル群53に対する個別トルク指令値である第2のトルク指令値Tas2*を演算する。換言すれば、第1のアシスト制御部91は、トータルのトルク指令値をその値に応じて第1のトルク指令値Tas1*および第2のトルク指令値Tas2*に分ける。第1のトルク指令値Tas1*は、モータ31に発生させるべき総トルクのうち第1のコイル群52により発生させるべきトルクである。第2のトルク指令値Tas2*は、モータ31に発生させるべき総トルクのうち第2のコイル群53により発生させるべきトルクである。
【0034】
本実施の形態において、モータ31に発生することが要求されるアシストトルクは、第1のコイル群52により発生するトルクと第2のコイル群53により発生するトルクとで半分ずつ賄われる。第1のトルク指令値Tas1*および第2のトルク指令値Tas2*の設計上の上限値は、モータ31が発生させることのできるトルクの最大値(100%)の半分(50%)の値にそれぞれ設定されている。つまり、第1のトルク指令値Tas1*および第2のトルク指令値Tas2*の上限値は、互いに同一の値に設定されている。
【0035】
第1の電流制御部92には、後述する補正後の第1のトルク指令値Uas1*、電流Im1、回転角センサ43aを通じて検出されるモータ31の回転角θm1、第1の制限制御部64により演算される制限値ILIM1が入力される。第1の電流制御部92は、補正後の第1のトルク指令値Uas1*に応じた第1の電流指令値Ias1*を演算する。具体的には、第1の電流制御部92は、補正後の第1のトルク指令値Uas1*の絶対値が大きいほど、より大きな絶対値の第1の電流指令値Ias1*を演算する。第1の電流指令値Ias1*は、補正後の第1のトルク指令値Uas1*を発生させるために第1のコイル群52へ供給すべき電流量である。
【0036】
そして、第1の電流制御部92は、第1のコイル群52へ供給される実際の電流Im1の値を第1の電流指令値Ias1*に追従させる電流フィードバック制御を実行することにより、第1の駆動回路61に対する指令信号Sc1を生成する。第1の電流制御部92は、回転角θm1を使用して第1のコイル群52に対する通電を制御する。第1の駆動回路61を通じて指令信号Sc1に応じた電流が第1のコイル群52に供給されることにより、第1のコイル群52は補正後の第1のトルク指令値Uas1*に応じたトルクを発生する。
【0037】
第1の電流制御部92は、第1の制限制御部64により制限値ILIM1が演算される場合、この演算される制限値ILIM1に応じて第1のコイル群52により発生させるトルクを制限する。具体的には、第1の電流制御部92は、第1の電流指令値Ias1*の絶対値が制限値ILIM1よりも大きい場合には、第1の電流指令値Ias1*の絶対値を制限値ILIM1以下に制限する。これにより、第1の電流指令値Ias1*を補正後の第1のトルク指令値Uas1*に応じた本来の値よりも小さい値に制限する。一方、第1の電流制御部92は、第1の電流指令値Ias1*の絶対値が制限値ILIM1以下の場合には、第1の電流指令値Ias1*の絶対値を制限しない。
【0038】
第2のマイクロコンピュータ73は、第2のアシスト制御部101、および第2の電流制御部102を有している。
第2のアシスト制御部101には、トルクセンサ42bを通じて検出される操舵トルクτ2、および車速センサ41を通じて検出される車速Vが入力される。第2のアシスト制御部101は、これらの状態量に基づいて、モータ31に発生させるべき目標アシストトルクに対応するトルク指令値Tas*を演算する。第2のアシスト制御部101は、トータルのトルク指令値Tas*に基づいて、バックアップ用の第1のトルク指令値Tas1*および第2のトルク指令値Tas2*を演算する。第2のアシスト制御部101は、第1のアシスト制御部91と同様に、トータルのトルク指令値Tas*をバックアップ用の第1のトルク指令値Tas1*、およびバックアップ用の第2のトルク指令値Tas2*に分ける。
【0039】
第2のアシスト制御部101は、バックアップ用の第2のトルク指令値Tas2*を第2の電流制御部102へ供給する。なお、第2のアシスト制御部101は、バックアップ用の第1のトルク指令値Tas1*を、第1のアシスト制御部91により演算される第1のトルク指令値Tas1*と比較することにより、第1のアシスト制御部91の異常検出を行う。
【0040】
第2の電流制御部102には、後述する補正後の第2のトルク指令値Uas2*、電流Im2、回転角センサ43bを通じて検出されるモータ31の回転角θm2、第2の制限制御部74により演算される制限値ILIM2、およびバックアップ用の第2のトルク指令値Tas2*が入力される。
【0041】
第2の電流制御部102は、補正後の第2のトルク指令値Uas2*が入力される場合、補正後の第2のトルク指令値Uas2*に応じた第2の電流指令値Ias2*を演算する。具体的には、第2の電流制御部102は、補正後の第2のトルク指令値Uas2*の絶対値が大きいほど、より大きな絶対値の第2の電流指令値Ias2*を演算する。第2の電流指令値Ias2*は、補正後の第2のトルク指令値Uas2*を発生させるために第2のコイル群53へ供給すべき電流量である。なお、第2の電流制御部102は、第1のマイクロコンピュータ63が正常に動作していない場合、バックアップ用の第2のトルク指令値Tas2*に基づいて第2の電流指令値Ias2*を演算する。
【0042】
第2の電流制御部102は、第2のコイル群53へ供給される実際の電流Im2の値を第2の電流指令値Ias2*に追従させる電流フィードバック制御を実行することにより、第2の駆動回路71に対する指令信号Sc2を生成する。第2の電流制御部102は、回転角θm2を使用して第2のコイル群53に対する通電を制御する。第2の駆動回路71を通じて指令信号Sc2に応じた電流が第2のコイル群53に供給されることにより、第2のコイル群53は補正後の第2のトルク指令値Uas2*に応じたトルクを発生する。
【0043】
第2の電流制御部102は、第2の制限制御部74により制限値ILIM2が演算される場合、この演算される制限値ILIM2に応じて第2のコイル群53により発生させるトルクを制限する。具体的には、第2の電流制御部102は、第2の電流指令値Ias2*の絶対値が制限値ILIM2よりも大きい場合には、第2の電流指令値Ias2*の絶対値を制限値ILIM2以下に制限する。これにより、第2の電流指令値Ias2*を補正後の第2のトルク指令値Uas2*またはバックアップ用の第2のトルク指令値Tas2*に応じた本来の値よりも小さい値に制限する。一方、第2の電流制御部102は、第2の電流指令値Ias2*の絶対値が制限値ILIM2以下の場合には、第2の電流指令値Ias2*の絶対値を制限しない。
【0044】
つぎに、第1のコイル群52および第2のコイル群53にそれぞれ供給される電流が制限されない通常の場合における、操舵トルクτ1,τ2とトルク指令値との理想的な関係を説明する。
【0045】
図4Aのグラフに示すように、横軸に操舵トルクτ1を、縦軸に第1のトルク指令値Tas1*に応じた第1の電流指令値Ias1*をプロットしたとき、操舵トルクτ1と第1の電流指令値Ias1*との関係は、つぎの通りである。すなわち、操舵トルクτ1の絶対値が増加するにつれて、第1の電流指令値Ias1*の絶対値は線形的に増加する。操舵トルクτ1の絶対値がトルクしきい値τth1に達したとき、第1の電流指令値Ias1*の絶対値は最大値、すなわち設定上限値IUL1となる。この設定上限値IUL1は、モータ31が発生させることのできる最大のトルクの半分(50%)に対応する電流値である。
【0046】
図4Bのグラフに示すように、横軸に操舵トルクτ2、縦軸に第2のトルク指令値Tas2*に応じた第2の電流指令値Ias2*をプロットしたとき、操舵トルクτ2と第2の電流指令値Ias2*との関係は、つぎの通りである。すなわち、操舵トルクτ2の絶対値が増加するにつれて、第2の電流指令値Ias2*の絶対値は線形的に増加する。操舵トルクτ2の絶対値がトルクしきい値τth1に達したとき、第2のトルク指令値Tas2*の絶対値は最大値、すなわち設定上限値IUL2となる。この設定上限値IUL2は、モータ31が発生させることのできる最大のトルクの半分(50%)に対応する電流値である。
【0047】
図4Cのグラフに示すように、横軸に操舵トルクτ1,τ2、縦軸に第1の電流指令値Ias1*と第2の電流指令値Ias2*とを合算したトータルの電流指令値Ias*をプロットしたとき、操舵トルクτ1,τ2と電流指令値Ias*との関係は、つぎの通りである。すなわち、操舵トルクτ1,τ2の絶対値が増加するにつれて、トータルの電流指令値Ias*の絶対値は線形的に増加する。操舵トルクτ1,τ2の絶対値がトルクしきい値τth1に達したとき、トータルの電流指令値Ias*の絶対値は最大となる。このトータルの電流指令値Ias*の最大値は、モータ31が発生させることのできる最大のトルク(100%)に対応する電流値である。
【0048】
したがって、第1のコイル群52により発生するトルクおよび第2のコイル群53により発生するトルクは基本的には互いに同じ値であってバランスがとれている。モータ31はこれら2つのコイル群によりそれぞれ発生したトルクをトータルしたトルクを発生する。しかし、第1のコイル群52により発生させることができる最大のトルクと、第2のコイル群53により発生させることができる最大のトルクとが異なるアンバランスな状況の発生が懸念される。この2つ最大トルクがアンバランスになる状況としては、たとえばつぎの4つの状況(A1),(A2),(A3),(A4)が考えられる。
【0049】
(A1)アシスト保証電圧範囲内であるものの、第1の駆動回路61および第2の駆動回路71に供給される電源電圧が互いに異なり、かつ運転者により高速操舵が行われる状況。
【0050】
(A2)第1の駆動回路61および第2の駆動回路71のいずれか一方に供給される電源電圧が低下した場合、それ以上の電源電圧の低下を抑制するために、電源電圧が低下した制御系統に対応する第1のコイル群52または第2のコイル群53に発生させるトルクが制限される状況。
【0051】
(A3)第1のコイル群52または第2のコイル群53を過熱から保護するために、過熱保護対象である第1のコイル群52または第2のコイル群53に発生させるトルクが制限される状況。
【0052】
(A4)たとえば第1の駆動回路61および第2の駆動回路71のいずれか一方を構成するスイッチング素子の故障により、第1のコイル群52または第2のコイル群53に供給される電流が小さく制限される状況。
【0053】
ちなみに、状況(A1),(A2)において、2つの制御系統における電源電圧の変動は、たとえば直流電源81、オルタネータの供給電圧、およびワイヤハーネスの抵抗値のばらつき、あるいは劣化などに起因して発生する。
【0054】
状況(A1)の一例は、つぎの通りである。すなわち
図5のグラフに示すように、操舵速度ω(モータ31の回転数Nm)とモータ31のトルクTmとの関係においては、操舵速度ωが増加するにつれて第1のコイル群52および第2のコイル群53により発生するトルクTmは減少する。ここで、たとえば第1の駆動回路61に供給される電源電圧が第2の駆動回路71に供給される電源電圧よりも低い値に低下した場合に、操舵速度が所定値ωth(>0)であるとすると、第1のコイル群52が発生することのできるトルクT1は、第2のコイル群53が発生することのできるトルクT2よりも小さな値になる。
【0055】
状況(A2)の一例は、つぎの通りである。すなわち
図6のグラフに示すように、電圧センサ65,75を通じて検出される直流電源81の電圧Vb1,Vb2が第1の電圧しきい値Vth1よりも大きい値である場合、電圧Vb1,Vb2は正常値であって、第1のコイル群52および第2のコイル群53により発生させるトルクが制限されることはなく、100%の出力が可能になる。電圧Vb1,Vb2が第1の電圧しきい値Vth1以下である場合、第1のコイル群52および第2のコイル群53により発生させるトルクが電圧Vb1,Vb2の値に応じて制限される。電圧Vb1,Vb2の値が、第2の電圧しきい値Vth2(<Vth1)よりも大きく、かつ第1の電圧しきい値Vth1以下の範囲内であるとき、電圧Vb1,Vb2の値が小さくなるほど、第1のコイル群52および第2のコイル群53により発生させるトルクの制限度合いが大きくなる。電圧Vb1,Vb2の値が、第2の電圧しきい値Vth2以下の値であるとき、第1のコイル群52および第2のコイル群53により発生させるトルクが0(零)に制限され、0%の出力となる。
【0056】
つぎに、比較例として、第1のコイル群52により発生させることができる最大のトルクと、第2のコイル群53により発生させることができる最大のトルクとが異なるアンバランスな状況が発生した場合における操舵トルクτ1,τ2とトータルの電流指令値Ias*との関係を説明する。ここでは、第1のコイル群52により発生するトルクが制限される場合を例に挙げる。
【0057】
図8Aのグラフに示すように、ここでの制限値ILIM1は、第1のトルク指令値Tas1*の上限値に対応する設定上限値IUL1の半分、すなわちモータ31が発生させることのできる最大のトルクの1/4(25%)に対応する電流値に演算される場合を想定する。操舵トルクτ1の絶対値が増加するにつれて、第1の電流指令値Ias1*の絶対値は線形的に増加する。そして、第1の電流指令値Ias1*は、操舵トルクτ1の絶対値がトルクしきい値τth2(<τth1)に達するタイミングで制限値ILIM1に達する。なお、同図において、制限値ILIM1が設定上限値IUL1と等しい場合の第1の電流指令値Ias1*を二点鎖線で示す。
【0058】
図8Bのグラフに示すように、制限値ILIM2が演算されていないため、操舵トルクτ2の絶対値がトルクしきい値τth1に達するタイミングで、第2の電流指令値Ias2*は第2のトルク指令値Tas2*の上限値に対応する設定上限値IUL2に達する。すなわち、操舵トルクτ1,τ2の絶対値がトルクしきい値τth2に達した以降、第1の電流指令値Ias1*の最大値と、第2の電流指令値Ias2*の最大値とが異なるアンバランスな状況が発生する。換言すると、操舵トルクτ1,τ2の絶対値がトルクしきい値τth2に達した以降、第1のコイル群52により発生させることができる最大のトルクと、第2のコイル群53により発生させることができる最大のトルクとが異なるアンバランスな状況が発生する。
【0059】
図8Cのグラフに示すように、操舵トルクτ1,τ2の絶対値がトルクしきい値τth2に達するまでの間、操舵トルクτ1,τ2の絶対値が増加するにつれて、第1の電流指令値Ias1*と第2の電流指令値Ias2*とを合算したトータルの電流指令値Ias*の絶対値は線形的に増加する。操舵トルクτ1,τ2の絶対値がトルクしきい値τth2に達した以降においても、操舵トルクτ1,τ2の絶対値の増加に対してトータルの電流指令値Ias*の絶対値は線形的に増加する。ただし、操舵トルクτ1,τ2の絶対値がトルクしきい値τth2に達した以降、第1の電流指令値Ias1*が制限値ILIM1(<IUL1)に制限される。このため、操舵トルクτ1,τ2の絶対値がトルクしきい値τth2に達した後においては、操舵トルクτ1,τ2の絶対値の増加量に対するトータルの電流指令値Ias*の絶対値の増加量の割合、すなわちアシストゲインは、操舵トルクτ1,τ2の絶対値がトルクしきい値τth2に達する前よりも小さくなる。やがて、操舵トルクτ1,τ2の絶対値がトルクしきい値τth1に達したとき、トータルの電流指令値Ias*の絶対値は最大となる。このときのトータルの電流指令値Ias*の最大値は、モータ31が発生させることのできる最大のトルクの75%に対応する値となる。なお、同図において、制限値ILIM1が演算されていない場合のトータルの電流指令値Ias*を二点鎖線で示す。
【0060】
ここで、アシストゲインは、電流指令値Ias*の変化量の絶対値を操舵トルクτ1,τ2の変化量の絶対値で除算した値である。ちなみに、トータルの電流指令値Ias*はモータ31が発生するトータルのアシストトルクに対応するものであるため、アシストゲインは、操舵トルクτ1,τ2に対するアシストトルクの変化割合を示す値であるともいえる。
【0061】
このように、操舵トルクτ1,τ2の絶対値がトルクしきい値τth2に達する前後でアシストゲインが変化することに起因して、操舵トルクτ1,τ2の変動あるいはトルクリップルなどを運転者が違和感として感じることが懸念される。なお、このようなアシストゲインの変化は、設定上限値IUL1よりも小さな制限値ILIM1が演算される場合に限らず、たとえば第1の駆動回路61を構成するスイッチング素子の故障により第1のコイル群52に供給される電流が小さく制限される場合にも、同様に生じる。
【0062】
こうした懸念を解消するために、本実施の形態では、第1のマイクロコンピュータ63および第2のマイクロコンピュータ73として、つぎの構成を採用している。
図3に示すように、第1のマイクロコンピュータ63は、第1のアシスト制御部91および第1の電流制御部92に加えて、第1の最大出力トルク演算部111と、第1の実出力トルク演算部112と、第1の理論出力トルク演算部113と、第1の予測出力トルク演算部114と、第1の差分トルク演算部115と、第1の補正演算部116とを備えている。さらに、第1のマイクロコンピュータ63は、第2の理論出力トルク演算部117と、第2の予測出力トルク演算部118と、第2の差分トルク演算部119と、第2の補正演算部120とを有している。第2のマイクロコンピュータ73は、第2のアシスト制御部101および第2の電流制御部102に加えて、第2の最大出力トルク演算部121および第2の実出力トルク演算部122を有している。
【0063】
第1の最大出力トルク演算部111には、電圧センサ65を通じて検出される直流電源81の電圧Vb1、回転角センサ43aを通じて検出されるモータ31の回転角θm1、及び第1の制限制御部64により演算される制限値ILIM1が入力される。第1の最大出力トルク演算部111は、これらの状態量に基づいて第1の最大出力トルクTmax1を演算する。第1の最大出力トルクTmax1は、入力された状態量の下で、第1のコイル群52により発生可能なトルクの最大値である。
【0064】
具体的には、第1の最大出力トルク演算部111は、回転角θm1に基づいてモータ31の回転数Nm1を演算する。第1の最大出力トルク演算部111は、
図7に示すように、電圧Vb1及び回転数Nm1と出力トルクTa1との関係を定めたマップを備えている。第1の最大出力トルク演算部111は、このマップを参照することにより電圧Vb1及び回転数Nm1に応じた出力トルクTa1を演算する。また、第1の最大出力トルク演算部111は、制限値ILIM1に応じた出力トルクTb1、すなわち制限値ILIM1だけモータ31に電流を供給した場合の出力トルクを演算する。そして、第1の最大出力トルク演算部111は、出力トルクTa1,Tb1のうちの小さい方を第1の最大出力トルクTmax1として演算する。
図3に示すように、このように演算された第1の最大出力トルクTmax1は、第1の補正演算部116に出力される。
【0065】
第2の最大出力トルク演算部121には、電圧センサ75を通じて検出される直流電源81の電圧Vb2、回転角センサ43bを通じて検出されるモータ31の回転角θm2、及び第2の制限制御部74により演算される制限値ILIM2が入力される。第2の最大出力トルク演算部121は、これらの状態量に基づいて第2の最大出力トルクTmax2を演算する。第2の最大出力トルクTmax2は、入力された状態量の下で、第2のコイル群53により発生可能なトルクの最大値である。第2の最大出力トルク演算部121による第2の最大出力トルクTmax2の演算方法は、第1の最大出力トルク演算部111による第1の最大出力トルクTmax1の演算方法と同様である。このように演算された第2の最大出力トルクTmax2は、第2の補正演算部120に出力される。
【0066】
第1の実出力トルク演算部112には、電流センサ66を通じて検出される電流Im1が入力される。第1の実出力トルク演算部112は、電流Im1に基づいて第1の実出力トルクYr1を演算する。具体的には、第1の実出力トルク演算部112は、電流Im1に第1のモータ定数Km1を乗算することにより、第1の実出力トルクYr1を演算する。第1の実出力トルクYr1は、第1のコイル群52により実際に発生しているトルクである。第1のモータ定数Km1は、第1のコイル群52の巻き数やロータ51の磁極数等に基づいて設定される。このように演算された第1の実出力トルクYr1は、第1の予測出力トルク演算部114に出力される。
【0067】
第2の実出力トルク演算部122には、電流センサ76を通じて検出される電流Im2が入力される。第2の実出力トルク演算部122は、電流Im2に基づいて第2の実出力トルクYr2を演算する。具体的には、第2の実出力トルク演算部122は、電流Im2に第2のモータ定数Km2を乗算することにより、第2の実出力トルクYr2を演算する。第2の実出力トルクYr2は、第2のコイル群53により実際に発生しているトルクである。第2のモータ定数Km2は、第2のコイル群53の巻き数やロータ51の磁極数等に基づいて設定される。第2の実出力トルクYr2は、第2の予測出力トルク演算部118に出力される。
【0068】
第1の理論出力トルク演算部113には、第1の補正演算部116により演算される補正後の第1のトルク指令値Uas1*が入力される。第1の理論出力トルク演算部113は、補正後の第1のトルク指令値Uas1*に基づいて、第1の理論出力トルクYi1を演算する。第1の理論出力トルクYi1は、第1のコイル群52で発生するトルクの応答特性を考慮しつつ、現在の演算周期よりも一周期後の演算周期において第1のコイル群52により発生すると理論的に期待されるトルクである。
【0069】
具体的には、第1の理論出力トルク演算部113は、下記(1)式で示される離散式を用いて第1の理論出力トルクYi1を演算する。なお、参照符号の添え字は、各状態量が演算された演算周期を示し、基準となる現在の演算周期を「k」としている。
Yi1k=α×Yi1k-1+(1-α)×Uas1*k-1 (1)
【0070】
上記(1)の係数αは、第1のコイル群52で発生するトルクの応答特性を考慮して予め設定された定数である。なお、第1のコイル群52で発生するトルクの応答特性としては、第1のコイル群52で発生するトルクの遅れのみならず、第1のマイクロコンピュータ63での演算処理の時間に起因する遅れも含まれる。
【0071】
第1の理論出力トルク演算部113は、このように演算した第1の理論出力トルクYi1を第1の差分トルク演算部115に出力するとともに、一周期後の演算周期まで記憶する。
第1の予測出力トルク演算部114には、第1の実出力トルク演算部112により演算される第1の実出力トルクYr1および第1の補正演算部116により演算される補正後の第1のトルク指令値Uas1*が入力される。第1の予測出力トルク演算部114は、これらの状態量に基づいて、第1の予測出力トルクYee1を演算する。第1の予測出力トルクYee1は、第1のコイル群52で発生するトルクの応答特性を考慮しつつ、一周期後の演算周期において、第1のコイル群52で現実的に発生すると期待されるトルクである。
【0072】
具体的には、第1の予測出力トルク演算部114は、下記(2)式で示される離散式を用いて、まず第1の推定出力トルクYe1を演算する。第1の推定出力トルクYe1は、第1のコイル群52で発生するトルクの応答特性を考慮しつつ、現在の演算周期において第1のコイル群52により発生していると推定されるトルクである。第1の予測出力トルク演算部114は、このように演算した第1の推定出力トルクYe1を一周期後の演算周期まで記憶する。
Ye1k=β×Ye1k-1+(1-β)×Uas1*k-1+L×(Yr1k-1-Ye1k-1) (2)
【0073】
上記(2)の係数βは、第1のコイル群52で発生するトルクの応答特性を考慮して予め設定されている。なお、第1のコイル群52で発生するトルクの応答特性としては、第1のコイル群52で発生するトルクの遅れのみならず、第1のマイクロコンピュータ63での演算処理の時間に起因する遅れも含まれる。係数Lは、オブザーバゲインである。
【0074】
続いて、第1の予測出力トルク演算部114は、下記(3)式で示される離散式を用いて、第1の予測出力トルクYee1を演算する。
Yee1k=β×Ye1K+(1-β)×Uas1*k+L×(Yr1k-1-Yee1k-1) (3)
【0075】
第1の予測出力トルク演算部114は、このように演算した第1の予測出力トルクYee1を第1の差分トルク演算部115に出力するとともに、一周期後の演算周期まで記憶する。
第1の差分トルク演算部115は、第1の理論出力トルクYi1から第1の予測出力トルクYee1を減算することにより第1の差分トルクΔY1を演算する。このように演算された第1の差分トルクΔY1は、第2の補正演算部120に出力される。第1の差分トルクΔY1は、第1のコイル群52により実際に発生しているトルクが、第1の制御部60の演算処理速度やモータ31の応答特性に起因する応答遅れを除きつつ、目標値である補正後の第1のトルク指令値Uas1*に対してどの程度制限されているかを示す。応答遅れが除かれているのは、第1の理論出力トルクYi1および第1の予測出力トルクYee1がそれぞれ第1の制御部60の演算処理速度やモータ31の応答特性を踏まえて演算されるためである。
【0076】
第2の理論出力トルク演算部117には、第2の補正演算部120により演算される補正後の第2のトルク指令値Uas2*が入力される。第2の理論出力トルク演算部117は、補正後の第2のトルク指令値Uas2*に基づいて、第1の理論出力トルク演算部113と同様に、第2の理論出力トルクYi2を演算する。第2の理論出力トルクYi2は、第2のコイル群53で発生するトルクの応答特性を考慮しつつ、一周期後の演算周期において第2のコイル群53により発生すると理論的に期待されるトルクである。
【0077】
第2の予測出力トルク演算部118には、第2の実出力トルク演算部122により演算される第2の実出力トルクYr2および第2の補正演算部120により演算される補正後の第2のトルク指令値Uas2*が入力される。第2の予測出力トルク演算部118は、第1の予測出力トルク演算部114と同様に、これらの状態量に基づいて、第2の推定出力トルクYe2を演算し、第2の予測出力トルクYee2を演算する。第2の予測出力トルクYee2は、第2のコイル群53で発生するトルクの応答特性を考慮しつつ、一周期後の演算周期において、第2のコイル群53で現実的に発生すると期待されるトルクである。
【0078】
第2の差分トルク演算部119は、第2の理論出力トルクYi2から第2の予測出力トルクYee2を減算することにより第2の差分トルクΔY2を演算する。このように演算された第2の差分トルクΔY2は、第1の補正演算部116に出力される。第2の差分トルクΔY2は、第2のコイル群53により実際に発生しているトルクが、第2の制御部70の演算処理速度や第2のコイル群53により発生するトルクの応答特性に起因する応答遅れを除きつつ、目標値である補正後の第2のトルク指令値Uas2*に対してどの程度制限されているかを示す。
【0079】
第1の補正演算部116は、第1の最大出力トルクTmax1および第2の差分トルクΔY2に基づいて、第1のアシスト制御部91により演算される第1のトルク指令値Tas1*を補正する。具体的には、第1の補正演算部116は、第1の最大出力トルクTmax1から第1のトルク指令値Tas1*を減算することにより第1の余裕トルクTc1を演算する。そして、第1の補正演算部116は、第1の余裕トルクTc1の範囲内で第1のトルク指令値Tas1*を補正する。
【0080】
より具体的には、第1の補正演算部116は、第1の最大出力トルクTmax1の絶対値が第1のトルク指令値Tas1*の絶対値以下の場合、すなわち第1の余裕トルクTc1が「0(零)」である場合には、第1のトルク指令値Tas1*をそのまま補正後の第1のトルク指令値Uas1*として出力する。一方、第1の補正演算部116は、第1の最大出力トルクTmax1の絶対値が第1のトルク指令値Tas1*の絶対値よりも大きく、かつ第1の余裕トルクTc1の絶対値が第2の差分トルクΔY2の絶対値以上の場合には、第1のトルク指令値Tas1*に第2の差分トルクΔY2を加算することにより得られる値を補正後の第1のトルク指令値Uas1*とする。また、第1の補正演算部116は、第1の最大出力トルクTmax1の絶対値が第1のトルク指令値Tas1*の絶対値よりも大きく、かつ第1の余裕トルクTc1の絶対値が第2の差分トルクΔY2の絶対値未満の場合には、第1のトルク指令値Tas1*に第1の余裕トルクTc1を加算することにより得られる値、すなわち第1の最大出力トルクTmax1を補正後の第1のトルク指令値Uas1*とする。
【0081】
これにより、第2のコイル群53へ供給される電流が制限される場合、その制限される電流量の分だけ、補正後の第1のトルク指令値Uas1*が第1のトルク指令値Tas1*よりも大きくなるように補正される。一方、第2のコイル群53へ供給される電流が制限されない場合、補正後の第1のトルク指令値Uas1*は、第1のアシスト制御部91により演算される第1のトルク指令値Tas1*のままとなる。このように演算された補正後の第1のトルク指令値Uas1*は、第1の電流制御部92に出力される。
【0082】
第2の補正演算部120は、第2の最大出力トルクTmax2および第1の差分トルクΔY1に基づいて、第1のアシスト制御部91により演算される第2のトルク指令値Tas2*を補正する。具体的には、第2の補正演算部120は、第2の最大出力トルクTmax2から第2のトルク指令値Tas2*を減算することにより第2の余裕トルクTc2を演算する。そして、第2の補正演算部120は、第2の余裕トルクTc2の範囲内で第2のトルク指令値Tas2*を補正する。
【0083】
より具体的には、第2の補正演算部120は、第2の最大出力トルクTmax2の絶対値が第2のトルク指令値Tas2*の絶対値以下の場合、すなわち第2の余裕トルクTc2が「0(零)」である場合には、第2のトルク指令値Tas2*をそのまま補正後の第2のトルク指令値Uas2*として出力する。一方、第2の補正演算部120は、第2の最大出力トルクTmax2の絶対値が第2のトルク指令値Tas2*の絶対値よりも大きく、かつ第2の余裕トルクTc2の絶対値が第1の差分トルクΔY1の絶対値以上の場合には、第2のトルク指令値Tas2*に第1の差分トルクΔY1を加算することにより得られる値を補正後の第2のトルク指令値Uas2*とする。一方、第2の補正演算部120は、第2の最大出力トルクTmax2の絶対値が第2のトルク指令値Tas2*の絶対値よりも大きく、かつ第2の余裕トルクTc2の絶対値が第1の差分トルクΔY1の絶対値未満の場合には、第2のトルク指令値Tas2*に第2の余裕トルクTc2を加算することにより得られる値、すなわち第2の最大出力トルクTmax2を補正後の第2のトルク指令値Uas2*とする。
【0084】
これにより、第1のコイル群52へ供給される電流が制限される場合、その制限される電流量の分だけ、補正後の第2のトルク指令値Uas2*は第2のトルク指令値Tas2*よりも大きくなるように補正される。一方、第1のコイル群52へ供給される電流が制限されない場合、補正後の第2のトルク指令値Uas2*は、第1のアシスト制御部91により演算される第2のトルク指令値Tas2*のままとなる。このように演算された補正後の第2のトルク指令値Uas2*は、第2の電流制御部102に出力される。
【0085】
このように、本実施の形態では、第1のコイル群52および第2のコイル群53のいずれか一方へ供給される電流が制限される場合、その制限される分の電流量が、第1のコイル群52および第2のコイル群53のいずれか他方へ供給される電流を増加させることにより補われる。これにより、つぎの作用を得ることができる。
【0086】
<第1の実施の形態の作用>
本実施の形態において、第1のコイル群52により発生させることができる最大のトルクと、第2のコイル群53により発生させることができる最大のトルクとが異なるアンバランスな状況が発生した場合における操舵トルクτ1,τ2とトータルのトルク指令値Tas*との関係は、つぎの通りである。ここでも、先の条件(A1)~(A4)のいずれかに起因して、第1のコイル群52により発生するトルクが制限される場合を例に挙げる。
【0087】
図9Aのグラフに示すように、ここでの制限値ILIM1は、設定上限値IUL1の半分、すなわちモータ31が発生させることのできる最大のトルクの1/4(25%)に対応する電流値に演算される場合を想定する。第1の電流指令値Ias1*は、操舵トルクτ1の絶対値がトルクしきい値τth2に達するタイミングで制限値ILIM1に達する。なお、同図において、制限値ILIM1が設定上限値IUL1と等しい場合の第1の電流指令値Ias1*を二点鎖線で示す。
【0088】
図9Bのグラフに示すように、第2の電流指令値Ias2*は制限されない。ただし、操舵トルクτ2の絶対値がトルクしきい値τth2に達した以降、操舵トルクτ2の絶対値の増加量に対する第2の電流指令値Ias2*の絶対値の増加量の割合、すなわちアシストゲインは、操舵トルクτ2の絶対値がトルクしきい値τth2に達する前よりも大きくなる。これは、第1の差分トルク演算部115により演算される第1の差分トルクΔY1が、第2の補正演算部120によって本来の第2のトルク指令値Tas2*に加算されることによる。操舵トルクτ2の絶対値がトルクしきい値τth2に達した以降、操舵トルクτ2の絶対値の増加に対して第2の電流指令値Ias2*の絶対値は線形的に増加する。そして、操舵トルクτ2の絶対値がトルクしきい値τth3(τth2<τth3<τth1)に達するタイミングで第2の電流指令値Ias2*の絶対値は設定上限値IUL2に至る。なお、同図において、第1の電流指令値Ias1*が制限されていない場合の第2のトルク指令値Tas2*を二点鎖線で示す。
【0089】
したがって、操舵トルクτ1,τ2の絶対値の変化に対するトータルとしてのトルク指令値Tas*の変化は、つぎのようになる。
図9Cのグラフに示すように、操舵トルクτ1,τ2の絶対値が「0」を起点としてトルクしきい値τth3に達するまでの間、操舵トルクτ1,τ2の絶対値が増加するにつれて、第1の電流指令値Ias1*と第2の電流指令値Ias2*とを合算したトータルの電流指令値Ias*の絶対値は線形的に増加する。操舵トルクτ1,τ2の絶対値がトルクしきい値τth3に達したとき、トータルの電流指令値Ias*の絶対値は最大となる。このときのトータルの電流指令値Ias*の最大値IULは、モータ31が発生させることのできる最大のトルクの75%に対応する値となる。操舵トルクτ1,τ2の絶対値がトルクしきい値τth3に達した以降、操舵トルクτ1,τ2の絶対値の増加に対してトータルの電流指令値Ias*の絶対値は最大値IULに維持される。なお、同図において、第1の電流指令値Ias1*が制限されていない場合の電流指令値Ias*を二点鎖線で示す。
【0090】
このように、第1の電流指令値Ias1*が制限値ILIM1に制限された以降、補正後の第2のトルク指令値Uas2*は、第1の差分トルクΔY1だけ第2のトルク指令値Tas2*よりも大きな値となる。これにより、トータルの電流指令値Ias*の絶対値が最大値IULに達するまでの期間において、トータルの電流指令値Ias*のアシストゲインの値が一定に維持される。モータ31が発生させることのできるトルクはその最大値の75%に制限されるものの、アシストゲインの値が変化することがないため、操舵トルクτ1,τ2の変動を抑えることができる。また、トルクリップルが悪化すること、ひいてはNV(騒音および振動)特性が悪化することを抑制することができる。
【0091】
また、制限値ILIM1が演算される場合に限らず、たとえば第1の駆動回路61を構成するスイッチング素子の故障により、第1のコイル群52に供給される電流が制限される場合も、補正後の第2のトルク指令値Uas2*は、第1の差分トルクΔY1だけ第2のトルク指令値Tas2*よりも大きな値となる。これにより、トータルの電流指令値Ias*のアシストゲインの値が一定に維持される。
【0092】
なお、第2のコイル群53に供給される電流が制限される場合についても同様に、補正後の第1のトルク指令値Uas1*は、第2の差分トルクΔY2だけ第1のトルク指令値Tas1*よりも大きな値となる。これにより、トータルの電流指令値Ias*のアシストゲインの値が一定に維持される。
【0093】
<第1の実施の形態の効果>
したがって、本実施の形態によれば、以下の効果を得ることができる。
(1)ECU40は、第1の理論出力トルクYi1と第1の予測出力トルクYee1との差分である第1の差分トルクΔY1に基づいて、第2のトルク指令値Tas2*を補正する。第1の差分トルクΔY1は、第1のコイル群52により実際に発生しているトルクが、補正後の第1のトルク指令値Uas1*に対してどの程度制限されているかを示す。したがって、第1のコイル群52へ供給される電流が制限される場合、補正後の第1のトルク指令値Uas1*に示されるトルクに対して、第1のコイル群52により実際に発生しているトルクでは不足する分が、第2のコイル群53により補われて発生する。
【0094】
また、ECU40は、第2の理論出力トルクYi2と第2の予測出力トルクYee2との差分である第2の差分トルクΔY2に基づいて、第1のトルク指令値Tas1*を補正する。したがって、第2のコイル群53へ供給される電流が制限される場合、補正後の第2のトルク指令値Uas2*に示されるトルクに対して、第2のコイル群53により実際に発生しているトルクでは不足する分が、第1のコイル群52により補われて発生する。
【0095】
このため、目標アシストトルクの変化に対して、トータルの電流指令値Ias*を一定の割合で変化させることができる。したがって、第1のコイル群52および第2のコイル群53により発生するトルクをトータルしたモータトルクを一定の割合で変化させることができる。その結果、操舵トルクτ1,τ2の変動あるいはトルクリップルを抑制することができる。また、運転者は良好な操舵感触を得ることができる。
【0096】
ここで、第1の差分トルクΔY1を、たとえば第1のトルク指令値Tas1*から第1の実出力トルクYr1を減算することにより得られる値とした場合を想定する。この場合、モータ31に異常がなくても、第1のコイル群52により発生するトルクが遅れるために、第1の差分トルクΔY1が瞬間的に「0(零)」よりも大きな値となり、補正後の第2のトルク指令値Uas2*が第2のトルク指令値Tas2*よりも増加する。そして、第1のコイル群52により発生するトルクは、時間の経過に伴って第1のトルク指令値Tas1*に近づくため、第2のトルク指令値Tas2*を増加させた分だけ、第1のコイル群52および第2のコイル群53により発生するトータルのトルクが過剰になる。
【0097】
この点、本実施の形態では、第1の理論出力トルクYi1および第1の予測出力トルクYee1は、それぞれ第1の制御部60の演算処理速度やモータ31の応答特性を踏まえて演算される。そのため、第1の差分トルクΔY1は、モータ31が正常である場合に生じる応答遅れに起因した差分を含まない値となるため、第1のコイル群52および第2のコイル群53により発生するトータルのトルクが過剰になることを抑制できる。
【0098】
(2)第1の補正演算部116は、第1のコイル群52により出力可能な第1の最大出力トルクTmax1から第1のトルク指令値Tas1*を減算することにより第1の余裕トルクTc1を演算する。そして、第1の補正演算部116は、第2の差分トルクΔY2に基づいて、第1の余裕トルクTc1の範囲で第1のトルク指令値Tas1*を補正する。そのため、第1のコイル群52により出力できない過大なトルクが指令値となることを抑制できる。同様に、第2の補正演算部120は、第2のコイル群53により出力可能な第2の最大出力トルクTmax2から第2のトルク指令値Tas2*を減算することにより第2の余裕トルクTc2を演算する。そして、第2の補正演算部120は、第1の差分トルクΔY1に基づいて、第2の余裕トルクTc2の範囲で第2のトルク指令値Tas2*を補正する。そのため、第2のコイル群53により出力できない過大なトルクが指令値となることを抑制できる。
【0099】
(3)第1の理論出力トルク演算部113は、上記(1)式に基づいて第1の理論出力トルクYi1を演算するため、第1のトルク指令値Tas1*に基づいて容易に第1の理論出力トルクYi1を演算できる。同様に、第2の理論出力トルク演算部117は、上記(1)式に基づいて第2の理論出力トルクYi2を演算するため、第2のトルク指令値Tas2*に基づいて容易に第2の理論出力トルクYi2を演算できる。
【0100】
(4)第1の予測出力トルク演算部114は、上記(2),(3)式に基づいて第1の予測出力トルクYee1を演算するため、第1の実出力トルクYr1に基づいて容易に第1の予測出力トルクYee1を演算できる。同様に、第2の予測出力トルク演算部118は、上記(2),(3)式に基づいて第2の予測出力トルクYee2を演算するため、第2の実出力トルクYr2に基づいて容易に第2の予測出力トルクYee2を演算できる。
【0101】
<第2の実施の形態>
つぎに、モータ制御装置の第2の実施の形態を説明する。本実施の形態は、先の
図1~
図3に示される第1の実施の形態と同様の構成を有している。
近年では、システムが運転を代替する自動運転機能を実現するための自動運転システムの開発が盛んに行われている。ただし、自動運転システムには、車両の安全性あるいは利便性をより向上させるために運転者の運転操作を支援するADAS(先進運転支援システム)などの協調制御システムが含まれる。車両に自動運転システムが搭載される場合、車両においては、ECU40と他の車載システムの制御装置との協調制御が行われる。協調制御とは、複数種の車載システムの制御装置が互いに連携して車両の動きを制御する技術をいう。
【0102】
図1に二点鎖線で示すように、車両には、たとえば各種の車載システムの制御装置を統括的に制御する上位ECU(ADAS-ECUとも言う。)200が搭載される。上位ECU200は、その時々の車両の状態に基づいて最適な制御方法を求め、その求められる制御方法に応じて各種の車載制御装置に対して個別の制御を指令する。上位ECU200は、ECU40により実行される制御に介入する。上位ECU200は、運転席などに設けられる図示しないスイッチの操作に基づいて、自己の自動運転制御機能をオンとオフとの間で切り替える。
【0103】
上位ECU200の自動運転制御機能がオンされている場合、ステアリングホイール21の操作の実行主体は上位ECU200となる。そして、ECU40は上位ECU200からの指令に基づくモータ31の制御を通じて転舵輪26を転舵させる転舵制御、すなわち自動操舵制御を実行する。上位ECU200は、たとえば車両に目標車線上を走行させるための指令値として、転舵角指令値θ1*,θ2*を演算する。転舵角指令値θ1*,θ2*は、その時々の車両の走行状態に応じて、車両を車線に沿って走行させるために必要とされる転舵角θwの目標値、あるいは転舵角θwが反映される状態量の目標値である。転舵角θwが反映される状態量としては、たとえばピニオンシャフト22cの回転角であるピニオン角が挙げられる。ECU40は、上位ECU200により演算される転舵角指令値θ1*,θ2*を使用してモータ31を制御する。
【0104】
図2に二点鎖線で示すように、転舵角指令値θ1*は第1のマイクロコンピュータ63に対するものである。また、転舵角指令値θ2*は第2のマイクロコンピュータ73に対するものである。第1のマイクロコンピュータ63は、転舵角指令値θ1*に実際の転舵角θwを追従させる角度フィードバック制御の実行を通じて、第1のコイル群52に対して供給すべき電流の目標値である第1の電流指令値を演算する。第2のマイクロコンピュータ73は、転舵角指令値θ2*に実際の転舵角θwを追従させる角度フィードバック制御の実行を通じて、第2のコイル群53に対して供給すべき電流の目標値である第2の電流指令値を演算する。ちなみに、実際の転舵角θwは、回転角センサ43a,43bを通じて検出されるモータ31の回転角θm1,θm2に基づいて演算することができる。
【0105】
通常時、モータ31に発生することが要求されるトルクは、第1のコイル群52により発生するトルクと第2のコイル群53により発生するトルクとで半分(50%)ずつ賄われる。また、通常時において2つの転舵角指令値θ1*,θ2*は基本的には同じ値に設定される。ただし、2つのコイル群(52,53)のいずれか一方が失陥した場合、残る正常なコイル群を通じてモータ31の動作が継続される。この場合、上位ECU200は、残る正常なコイル群を通じたモータ31の制御に適した転舵角指令値θ1*,θ2*を演算するようにしてもよい。したがって、第2の実施の形態によれば、ECU40として、自動運転機能に対応することができる。
【0106】
<他の実施の形態>
なお、第1および第2の実施の形態は、つぎのように変更して実施してもよい。
・第1および第2の実施の形態では、温度センサ44a,44bをECU40に設けたが、これら温度センサ44a,44bはモータ31に設けてもよい。
【0107】
・第1および第2の実施の形態では、ECU40は、互いに独立した第1の制御部60および第2の制御部70を有していたが、製品仕様などによっては、たとえば第1のマイクロコンピュータ63と第2のマイクロコンピュータ73とを単一のマイクロコンピュータとして構築してもよい。
【0108】
・第1および第2の実施の形態では、第1のマイクロコンピュータ63において第1のトルク指令値Tas1*および第2のトルク指令値Tas2*の補正に係る演算を行ったが、たとえば第2のマイクロコンピュータ73において第1のトルク指令値Tas1*および第2のトルク指令値Tas2*の補正に係る演算を行ってもよい。また、たとえば第1のマイクロコンピュータ63において第1のトルク指令値Tas1*の補正に係る演算を行い、第2のマイクロコンピュータ73において第2のトルク指令値Tas2*の補正に係る演算を行ってもよい。
【0109】
・第1および第2の実施の形態では、第1のコイル群52および第2のコイル群53により発生されるトルクの最大値は、それぞれモータ31が発生させることのできるトルクの最大値(100%)の半分(50%)で同じ値としたが、たとえば「60:40」あるいは「70:30」などのように異なる値としてもよい。ただし、第1のコイル群52および第2のコイル群53により発生するトルクの最大値の合計は、モータ31が発生させることのできるトルクの最大値(100%)以内である。
【0110】
・第1および第2の実施の形態では、トータルのトルク指令値が増大するにつれて、第1のトルク指令値Tas1*および第2のトルク指令値Tas2*が同時に増大するようにこれらを演算したが、たとえば、つぎのような構成を採用できる。具体的には、トータルのトルク指令値が第1のトルク指令値Tas1*の上限値以下の値であるとき、当該トルク指令値をそのまま第1のトルク指令値Tas1*として設定し、第2のトルク指令値Tas2*の値を「0(零)」に設定する。また、トータルのトルク指令値が第1のトルク指令値Tas1*の上限値を超える値であるとき、第1のトルク指令値Tas1*の値を上限値に設定し、トルク指令値が上限値を超える分を第2のトルク指令値Tas2*として設定する。
【0111】
・第1および第2の実施の形態では、第1の余裕トルクTc1の範囲内で第1のトルク指令値Tas1*を補正したが、たとえば第1の余裕トルクTc1と第2の差分トルクΔY2との大小関係を考慮せず、そのまま第2の差分トルクΔY2を第1のトルク指令値Tas1*に加算することにより、補正後の第1のトルク指令値Uas1*を演算してもよい。同様に、たとえば第2の余裕トルクTc2と第1の差分トルクΔY1との大小関係を考慮せず、そのまま第1の差分トルクΔY1を第2のトルク指令値Tas2*に加算することにより、補正後の第2のトルク指令値Uas2*を演算してもよい。
【0112】
・第1および第2の実施の形態では、2つのコイル群(52,53)に対する給電を独立して制御するようにしたが、モータ31が3つ以上のコイル群を有するものである場合、これら3つ以上のコイル群に対する給電を独立して制御するようにしてもよい。この場合、ECU40は、コイル群の数と同数の制御部(制御系統)を有することが好ましい。モータ31がたとえば3つのコイル群(第1~第3のコイル群)を有している場合、3つの制御部の各々は、第1~第3のコイル群のうち対応するコイル群に対する個別のトルク指令値を演算する。これら個別のトルク指令値の最大値は、モータ31が発生させることのできる最大のトルクの1/3のトルクに対応する値となる。
【0113】
3つのコイル群のうちいずれか1つのコイル群により発生するトルクが制限される場合、その1つのコイル群において制限される分のトルクを残る2つのコイル群により50%ずつ補償するようにしてもよい。すなわち、残る2つのコイル群は、それぞれ、1つのコイル群における制限量の半分に相当するトルクを発生する。また、3つのコイル群のうちいずれか1つのコイル群により発生するトルクが制限される場合、その1つのコイル群において制限される分のトルクを、残る2つのコイル群のいずれか一方によってのみ補償するようにしてもよい。
【0114】
モータ31が4つ以上のコイル群を有している場合においても、2つのコイル群あるいは3つのコイル群の場合と同様の考え方に基づいて、各コイル群に対する個別のトルク指令値を演算する。
・第1および第2の実施の形態では、EPS10として、モータ31のトルクをステアリングシャフト22、厳密にはコラムシャフト22aに伝達するタイプを例に挙げたが、モータ31のトルクをラック軸23に伝達するタイプであってもよい。
【0115】
・第1および第2の実施の形態では、モータ制御装置をEPS10のモータ31を制御するECU40に具体化したが、EPS31以外の他の機器に使用されるモータの制御装置に具体化してもよい。モータ制御装置は、たとえば運転者により操作される操舵ユニットと、転舵輪を転舵させる転舵ユニットとの間の動力伝達が分離されたステアバイワイヤ式の操舵装置に用いられるモータを制御するものであってもよい。