(57)【要約】【課題】各制御系統がより最適な指令値を用いてモータの駆動を制御することができる操舵制御装置を提供する。【解決手段】第１マイコン３２ａは、第１電流指令値Ｉ１ａ＊及び第２電流指令値Ｉ２ａ＊を演算する第１電流指令値演算部５１を有している。第２マイコン３２ｂは、第２電流フィードバック制御部６２を有している。第１電流指令値演算部５１は、演算した第２電流指令値Ｉ２ａ＊を第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信により第２電流フィードバック制御部６２に送信する。第１マイコン３２ａがマスターとして動作する場合、第２電流フィードバック制御部６２は、第２電流指令値Ｉ２ａ＊を用いてフィードバック制御を実行する。第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期は、第１電流指令値演算部５１による第１電流指令値Ｉ１ａ＊及び第２電流指令値Ｉ２ａ＊の演算周期と同じ周期に設定されている。【選択図】図３
2020096512.tif 000002
【特許請求の範囲】
【請求項１】
操舵機構に対してトルクを付与するモータの駆動を制御する複数の制御系統を備えており、前記複数の制御系統は、第１コイルが設けられるとともに前記第１コイルに対する給電を制御する第１制御系統と第２コイルが設けられるとともに前記第２コイルに対する給電を制御する第２制御系統とを含む操舵制御装置において、
前記第１制御系統は、第１発振器から入力された第１クロックに基づいて前記第１制御系統の各部の処理タイミングを規定するためのクロックを生成する第１クロック生成部と、前記第１コイルに対する給電を制御するための第１指令値及び前記第２コイルに対する給電を制御するための第２指令値を演算する第１指令値演算部と、前記第１コイルに供給される第１実電流値を前記第１指令値に追従させる第１フィードバック制御部とを有し、
前記第２制御系統は、前記第１発振器と異なる第２発振器から入力された第２クロックに基づいて前記第２制御系統の各部の処理タイミングを規定するためのクロックを生成する第２クロック生成部と、前記第１指令値及び前記第２指令値を演算する第２指令値演算部と、前記第２コイルに供給される第２実電流値を前記第２指令値に追従させる第２フィードバック制御部とを有し、
前記第１制御系統の前記第１指令値演算部は、前記第２フィードバック制御部に対して演算した前記第２指令値を送信し、前記第２制御系統の前記第２指令値演算部は、前記第１フィードバック制御部に対して演算した前記第１指令値を送信することで、前記第１制御系統と前記第２制御系統との間で前記第１指令値及び前記第２指令値を互いに通信しており、
前記第１フィードバック制御部は、前記第１指令値演算部により演算された前記第１指令値あるいは前記第２指令値演算部により演算された前記第１指令値を用いてフィードバック制御を実行し、前記第２フィードバック制御部は、前記第１指令値演算部により演算された前記第２指令値あるいは前記第２指令値演算部により演算された前記第２指令値を用いてフィードバック制御を実行し、
前記第１制御系統と前記第２制御系統との間の通信の周期は、前記第１指令値演算部及び前記第２指令値演算部による前記第１指令値及び前記第２指令値の演算周期以下の周期に設定されている操舵制御装置。
【請求項２】
前記第１制御系統と前記第２制御系統との間の通信の周期は、前記第１指令値演算部及び前記第２指令値演算部による前記第１指令値及び前記第２指令値の演算周期よりも短い周期で行われる前記第１フィードバック制御部及び前記第２フィードバック制御部によるフィードバック制御の周期以下の周期に設定されている請求項１に記載の操舵制御装置。
【請求項３】
前記第１制御系統は、
前記第１フィードバック制御部からの出力値である第１デューティ指令値に基づいて、第１ＰＷＭ信号を生成する第１モータ駆動指令値生成部と、
前記第１モータ駆動指令値生成部からの出力値である前記第１ＰＷＭ信号に基づいて、前記第１コイルに対する給電を実行する第１駆動回路とを有し、
前記第２制御系統は、
前記第２フィードバック制御部からの出力値である第２デューティ指令値に基づいて、第２ＰＷＭ信号を生成する第２モータ駆動指令値生成部と、
前記第２モータ駆動指令値生成部からの出力値である前記第２ＰＷＭ信号に基づいて、前記第２コイルに対する給電を実行する第２駆動回路とを有し、
前記第１制御系統と前記第２制御系統との間の通信の周期は、前記第１フィードバック制御部及び前記第２フィードバック制御部によるフィードバック制御の周期よりも短い周期で行われる前記第１ＰＷＭ信号及び前記第２ＰＷＭ信号の更新周期以下の周期に設定されている請求項２に記載の操舵制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操舵制御装置に関する。
【背景技術】
【０００２】
従来、車両の操舵機構にモータの駆動力を付与することにより、運転者のステアリング操作をアシストするステアリング装置が知られている。このようなステアリング装置には、モータの動作を制御する電子制御装置（ＥＣＵ）が搭載されている。例えば、特許文献１に示すように、モータの駆動を制御する系統を複数系統で構成するものがあり、この場合、各系統に対応するコイルがそれぞれ設けられるとともに、コイルに対する給電を制御する制御系統も各系統に対応してそれぞれ設けられる。各制御系統は、モータの駆動を制御するための電流指令値を演算する電流指令値演算部及びコイルに供給される実電流値を電流指令値に追従させるフィードバック制御部を有するマイコンをそれぞれ備えている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１９５０８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えば、一方の制御系統のマイコンの電流指令値演算部は、演算した電流指令値を一方の制御系統のマイコンのフィードバック制御部に対して送信する。また、一方の制御系統のマイコンの電流指令値演算部は、一方の制御系統のマイコンと他方の制御系統のマイコンとの間の通信により、演算した電流指令値を他方の制御系統のマイコンのフィードバック制御部に対して送信する。また、他方の制御系統のマイコンの電流指令値演算部は、演算した電流指令値を他方の制御系統のマイコンのフィードバック制御部に対して送信する。また、他方の制御系統のマイコンの電流指令値演算部は、一方の制御系統のマイコンと他方の制御系統のマイコンとの間の通信により、演算した電流指令値を一方の制御系統のマイコンのフィードバック制御部に対して送信する。一方の制御系統のマイコンのフィードバック制御部及び他方の制御系統のマイコンのフィードバック制御部は、一方の制御系統のマイコンの電流指令値演算部で演算された電流指令値あるいは他方の制御系統のマイコンの電流指令値演算部で演算された電流指令値のいずれかを用いてフィードバック制御を実行する。
【０００５】
各制御系統には、クロックを生成する発振器をそれぞれ備えるものがある。発振器からのクロックの周波数、すなわちクロックの周期は、発振器の個体ごとにばらつくことから、一方の制御系統の発振器のクロックの周期と、他方の制御系統の発振器のクロックの周期とは異なることがある。この場合、各制御系統の各部はクロックの周期を用いて時間を規定していることから、一方の制御系統が規定した時間と他方の制御系統が規定した時間とは異なることになる。そして、各制御系統の各部はクロックの周期を用いて処理タイミングを規定していることから、一方の制御系統の各部の処理タイミングと他方の制御系統の各部の処理タイミングとのずれは経時的に変化するおそれがある。この経時的な処理タイミングのずれの変化は、所定周期で繰り返されている。例えば、一方の制御系統で演算した電流指令値が他方の制御系統に対して送信されたとしても、発振器のクロックのばらつきに起因して他方の制御系統の電流指令値の受信タイミングが一方の制御系統の指令値の送信タイミングから遅れている場合には、他方の制御系統のマイコンは一方の制御系統のマイコンによって今回の演算周期で演算された電流指令値を把握することができない。そして、他方の制御系統のマイコンのフィードバック制御部は、たとえ一方の制御系統のマイコンの電流指令値演算部で今回の演算周期の電流指令値が演算されたとしても、一方の制御系統のマイコンと他方の制御系統との間で通信が確立されるまでは、前回の通信が確立した際に受け取った電流指令値を用いてフィードバック制御を行うことになる。前回の通信が確立した際に受け取った電流指令値は、今回の演算周期の電流指令値よりも過去の演算周期において演算された電流指令値である。この場合、一方の制御系統のマイコンと他方の制御系統のマイコンとの間で通信が行われた直後に、一方の制御系統のマイコンの電流指令値演算部が今回の電流指令値を演算した場合には、最大で通信の周期と同程度の間、他方の制御系統のマイコンのフィードバック制御部は前回の通信が確立した際に受け取った電流指令値を用いてフィードバック制御をすることになる。このように、他方の制御系統のマイコンのフィードバック制御部は、前回の通信が確立した際に受け取った電流指令値を用いてフィードバック制御をすることになることから、モータのコイルに対してより最適な給電を行うことができないおそれがある。この場合、トルクリップルが生じるおそれがある。
【０００６】
本発明の目的は、各制御系統がより最適な指令値を用いてモータの駆動を制御することができる操舵制御装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成しうる操舵制御装置は、操舵機構に対してトルクを付与するモータの駆動を制御する複数の制御系統を備えており、前記複数の制御系統は、第１コイルが設けられるとともに前記第１コイルに対する給電を制御する第１制御系統と第２コイルが設けられるとともに前記第２コイルに対する給電を制御する第２制御系統とを含む操舵制御装置において、前記第１制御系統は、第１発振器から入力された第１クロックに基づいて前記第１制御系統の各部の処理タイミングを規定するためのクロックを生成する第１クロック生成部と、前記第１コイルに対する給電を制御するための第１指令値及び前記第２コイルに対する給電を制御するための第２指令値を演算する第１指令値演算部と、前記第１コイルに供給される第１実電流値を前記第１指令値に追従させる第１フィードバック制御部とを有し、前記第２制御系統は、前記第１発振器と異なる第２発振器から入力された第２クロックに基づいて前記第２制御系統の各部の処理タイミングを規定するためのクロックを生成する第２クロック生成部と、前記第１指令値及び前記第２指令値を演算する第２指令値演算部と、前記第２コイルに供給される第２実電流値を前記第２指令値に追従させる第２フィードバック制御部とを有し、前記第１制御系統の前記第１指令値演算部は、前記第２フィードバック制御部に対して演算した前記第２指令値を送信し、前記第２制御系統の前記第２指令値演算部は、前記第１フィードバック制御部に対して演算した前記第１指令値を送信することで、前記第１制御系統と前記第２制御系統との間で前記第１指令値及び前記第２指令値を互いに通信しており、前記第１フィードバック制御部は、前記第１指令値演算部により演算された前記第１指令値あるいは前記第２指令値演算部により演算された前記第１指令値を用いてフィードバック制御を実行し、前記第２フィードバック制御部は、前記第１指令値演算部により演算された前記第２指令値あるいは前記第２指令値演算部により演算された前記第２指令値を用いてフィードバック制御を実行し、前記第１制御系統と前記第２制御系統との間の通信の周期は、前記第１指令値演算部及び前記第２指令値演算部による前記第１指令値及び前記第２指令値の演算周期以下の周期に設定されている。
【０００８】
上記構成によれば、第１制御系統と第２制御系統との間の通信の周期を、第１指令値演算部及び第２指令値演算部による第１指令値及び第２指令値の演算周期以下の周期に設定している。このことから、発振器からのクロックの周期のばらつきによって、第１制御系統と第２制御系統との間の通信が行われた直後に第１指令値演算部が第２指令値を演算したとしても、通信の周期を指令値の演算周期以下の周期にしていることから、第２制御系統が今回の演算周期で演算された第２指令値を把握できない期間を短くすることができる。これにより、第２フィードバック制御部が前回の通信が確立した際に受け取った過去の演算周期で演算された第２指令値を用いてフィードバック制御する期間を短くすることができる。また、第１制御系統と第２制御系統との間で通信が行われた直後に第２指令値演算部が第１指令値を演算したとしても、通信の演算周期を指令値の演算周期以下の周期にしていることから、第１制御系統が今回の演算周期で演算された第１指令値を把握できない期間を短くすることができる。このため、第１フィードバック制御部及び第２フィードバック制御部が今回の演算周期で演算された指令値よりも過去の演算周期の指令値でフィードバック制御をする期間を短くすることができる。すなわち、第１フィードバック制御部の処理タイミングと第２フィードバック制御部の処理タイミングとのずれを抑制することができる。これにより、トルクリップルが生じることを抑えることができる。このようにすることで、各制御系統がより最適な演算周期の指令値を用いてモータの駆動を制御することができるようになる。
【０００９】
上記の操舵制御装置において、前記第１制御系統と前記第２制御系統との間の通信の周期は、前記第１指令値演算部及び前記第２指令値演算部による前記第１指令値及び前記第２指令値の演算周期よりも短い周期で行われる前記第１フィードバック制御部及び前記第２フィードバック制御部によるフィードバック制御の周期以下の周期に設定されていることが好ましい。
【００１０】
上記構成のように通信の周期を、第１指令値及び第２指令値の演算周期よりもさらに短い周期であるフィードバック制御の周期以下に設定している。これにより、第１フィードバック制御部及び第２フィードバック制御部が新たに演算された指令値よりも過去の演算周期の指令値でフィードバック制御をする期間をさらに短くすることができる。
【００１１】
上記の操舵制御装置において、前記第１制御系統は、前記第１フィードバック制御部からの出力値である第１デューティ指令値に基づいて、第１ＰＷＭ信号を生成する第１モータ駆動指令値生成部と、前記第１モータ駆動指令値生成部からの出力値である前記第１ＰＷＭ信号に基づいて、前記第１コイルに対する給電を実行する第１駆動回路とを有し、前記第２制御系統は、前記第２フィードバック制御部からの出力値である第２デューティ指令値に基づいて、第２ＰＷＭ信号を生成する第２モータ駆動指令値生成部と、前記第２モータ駆動指令値生成部からの出力値である前記第２ＰＷＭ信号に基づいて、前記第２コイルに対する給電を実行する第２駆動回路とを有し、前記第１制御系統と前記第２制御系統との間の通信の周期は、前記第１フィードバック制御部及び前記第２フィードバック制御部によるフィードバック制御の周期よりも短い周期で行われる前記第１ＰＷＭ信号及び前記第２ＰＷＭ信号の更新周期以下の周期に設定されていることが好ましい。
【００１２】
上記構成のように通信の周期を、フィードバック制御の周期よりもさらに短い周期である第１ＰＷＭ信号及び第２ＰＷＭ信号の更新周期以下に設定している。これにより、第１フィードバック制御部及び第２フィードバック制御部が新たに演算された指令値よりも過去の演算周期の指令値でフィードバック制御する期間をさらに短くすることができる。
【発明の効果】
【００１３】
本発明の操舵制御装置によれば、各制御系統がより最適な演算周期の指令値を用いてモータの駆動を制御することができる。
【図面の簡単な説明】
【００１４】
【図１】操舵制御装置を搭載したステアリング装置の概略構成を示す構成図。
【図２】操舵制御装置の概略構成を示すブロック図。
【図３】第１マイコン及び第２マイコンの概略構成を示すブロック図。
【図４】第１電流指令値演算部の概略構成を示すブロック図。
【図５】基本電流指令値と操舵トルクとの関係を示すグラフ。
【図６】第１電流指令値と第２電流指令値との関係を示すグラフ。
【図７】第１制御系統と第２制御系統との間のＰＷＭ信号の時間的なずれを示す図。
【図８】第１制御系統と第２制御系統との間のクロックのずれを示す図。
【図９】比較例において、第１制御系統の各部の処理タイミングと第２制御系統の各部の処理タイミングとを示す図。
【図１０】第１制御系統の各部の処理タイミングと第２制御系統の各部の処理タイミングとを示す図。
【発明を実施するための形態】
【００１５】
操舵制御装置を電動パワーステアリング装置（以下、「ＥＰＳ」という。）に適用した第１実施形態について説明する。
図１に示すように、ＥＰＳ１は運転者のステアリングホイール１０の操作に基づいて転舵輪１５を転舵させる操舵機構２、運転者のステアリング操作を補助するアシスト機構３、及びアシスト機構３を制御する操舵制御装置３０を備えている。
【００１６】
操舵機構２は、運転者により操作されるステアリングホイール１０及びステアリングホイール１０と一体回転するステアリング軸１１を備えている。ステアリング軸１１は、ステアリングホイール１０と連結されたコラム軸１１ａ、コラム軸１１ａの下端部に連結された中間軸１１ｂ、及び中間軸１１ｂの下端部に連結されたピニオン軸１１ｃを有している。ピニオン軸１１ｃの下端部は、ラックアンドピニオン機構１３を介してラック軸１２に連結されている。ステアリング軸１１の回転運動は、ラックアンドピニオン機構１３を介してラック軸１２の軸方向（図１の左右方向）の往復直線運動に変換される。ラック軸１２の往復直線運動は、ラック軸１２の両端にそれぞれ連結されたタイロッド１４を介して左右の転舵輪１５にそれぞれ伝達されることにより、転舵輪１５の転舵角が変化し、車両の進行方向が変更される。
【００１７】
アシスト機構３は、回転軸２１を有するモータ２０と、減速機構２２とを備えている。モータ２０は、ステアリング軸１１にトルクを付与する。モータ２０の回転軸２１は、減速機構２２を介してコラム軸１１ａに連結されている。減速機構２２はモータ２０の回転を減速し、当該減速した回転力をコラム軸１１ａに伝達する。すなわち、ステアリング軸１１にモータ２０のトルクが付与されることにより、運転者のステアリング操作が補助される。
【００１８】
図２に示すように、モータ２０は、その回転軸２１を中心に回転するロータ２３と、ロータ２３の外周に配置されるステータ２４とを備えている。ロータ２３には、その表面に永久磁石が固定されている。永久磁石は、ロータ２３の周方向に異なる極性（Ｎ極、Ｓ極）が交互に並んで配置されている。こうした永久磁石は、モータ２０が回転する際に磁界を形成する。ステータ２４には、３相（Ｕ相、Ｖ相、Ｗ相）のコイル２５が円環状に配置されている。コイル２５は、第１コイル２５ａと第２コイル２５ｂとを有している。第１コイル２５ａ及び第２コイル２５ｂは、それぞれスター結線されたＵ相、Ｖ相、Ｗ相のコイルを含んでいる。モータ２０には、モータ２０の制御量である電流量を制御することによって、モータ２０の駆動を制御する制御ユニットである操舵制御装置３０が接続されている。
【００１９】
図１に示すように、操舵制御装置３０は、車両に設けられた各種のセンサの検出結果に基づいてモータ２０を制御する。各種のセンサとしては、例えばトルク検出装置としての第１トルクセンサ４０ａ、第２トルクセンサ４０ｂ、回転角センサ４１、及び車速センサ４２が設けられている。第１トルクセンサ４０ａ及び第２トルクセンサ４０ｂは、コラム軸１１ａに設けられている。回転角センサ４１は、モータ２０に設けられている。第１トルクセンサ４０ａは、運転者のステアリング操作に伴いステアリング軸１１に付与される第１操舵トルクτ１を検出する。また、第２トルクセンサ４０ｂは、運転者のステアリング操作に伴いステアリング軸１１に付与される第２操舵トルクτ２を検出する。回転角センサ４１は、モータ２０の回転軸２１の回転角度θを検出する。なお、回転角センサ４１から第１マイコン３２ａに対して入力される回転角度θを第１回転角度θ１とする。また、回転角センサ４１から第２マイコン３２ｂに対して入力される回転角度θを第２回転角度θ２とする。車速センサ４２は、車両の走行速度である車速Ｖを検出する。操舵制御装置３０は、各センサの出力値に基づいて、操舵機構２に対して付与するモータ２０の目標となるトルクを設定し、実際のモータ２０のトルクが目標のトルクとなるように、モータ２０に供給される電流を制御する。
【００２０】
図２を参照して操舵制御装置３０の機能について説明する。
操舵制御装置３０は、第１コイル２５ａに対する給電を制御する第１制御系統Ａと、第２コイル２５ｂに対する給電を制御する第２制御系統Ｂとを有している。第１実施形態では、例えば、第１制御系統Ａにモータ２０の駆動に関わる制御を継続できない異常が生じる場合には、第１制御系統Ａによるモータ２０への給電の制御が停止され、第２制御系統Ｂのみによってモータ２０への給電を制御するフェイルセーフ制御へと移行する。一方、第２制御系統Ｂにモータ２０の駆動に関わる制御を継続できない異常が生じる場合には、第２制御系統Ｂによるモータ２０への給電の制御が停止され、第１制御系統Ａのみによってモータ２０への給電を制御するフェイルセーフ制御へと移行する。
【００２１】
操舵制御装置３０の第１制御系統Ａは、第１発振器３１ａ、第１マイコン３２ａ、第１電流センサ３３ａ、及び第１駆動回路３４ａを有している。操舵制御装置３０の第２制御系統Ｂは、第２発振器３１ｂ、第２マイコン３２ｂ、第２電流センサ３３ｂ、及び第２駆動回路３４ｂを有している。また、第１発振器３１ａと第２発振器３１ｂとは、同一構成である。また、第１マイコン３２ａと第２マイコン３２ｂとは、同一構成である。また、第１電流センサ３３ａと第２電流センサ３３ｂとは同一構成である。また、第１駆動回路３４ａと第２駆動回路３４ｂとは同一構成である。第１実施形態において、同一構成とは、同一の設計思想のなかで同一の機能及び性能を有するものである。
【００２２】
第１発振器３１ａは、基本周波数の第１クロックＣＬＫ１を生成する。第１発振器３１ａとしては、例えば水晶素子等が採用される。第１制御系統Ａの各部は、第１クロックＣＬＫ１に基づいて、所定の処理タイミングで動作する。
【００２３】
第１駆動回路３４ａは、３相（Ｕ相、Ｖ相、Ｗ相）の駆動回路である。第１駆動回路３４ａは、直列に接続された２つのスイッチング素子を１組とする３組のアームが、それぞれ直流電源の＋端子と−端子との間に並列に接続されてなる。スイッチング素子には、ＭＯＳ−ＦＥＴ（電界効果トランジスタ：metal-oxide-semiconductor field-effect-transistor）が採用される。第１電流センサ３３ａは、第１駆動回路３４ａと第１コイル２５ａとの間の給電経路を流れる各相（Ｕ相、Ｖ相、Ｗ相）の電流値である第１実電流値Ｉ１を検出する。
【００２４】
第１マイコン３２ａは、所定の制御周期毎に、第１トルクセンサ４０ａにより検出される第１操舵トルクτ１、回転角センサ４１により検出される第１回転角度θ１、車速センサ４２により検出される車速Ｖ、及び第１電流センサ３３ａにより検出される第１実電流値Ｉ１を取得する。第１マイコン３２ａは、第１操舵トルクτ１、第１回転角度θ１、車速Ｖ、及び第１実電流値Ｉ１に基づいて、第１ＰＷＭ信号Ｐ１を生成する。第１駆動回路３４ａは、所定の制御周期で第１マイコン３２ａにより生成された第１ＰＷＭ信号Ｐ１に基づいて、第１駆動回路３４ａを構成するスイッチング素子をオンオフすることにより、図示しない直流電源から供給される直流電力を３相交流電力に変換する。これにより、第１駆動回路３４ａは、３相交流電力を第１コイル２５ａに供給する。
【００２５】
第２発振器３１ｂは、基本周波数の第２クロックＣＬＫ２を生成する。第２発振器３１ｂとしては、例えば水晶素子等が採用される。第２制御系統Ｂの各部は、第２クロックＣＬＫ２に基づいて、所定の処理タイミングで動作する。
【００２６】
第２駆動回路３４ｂは、３相（Ｕ相、Ｖ相、Ｗ相）の駆動回路である。第２駆動回路３４ｂは、直列に接続された２つのスイッチング素子を１組とする３組のアームが、それぞれ直流電源の＋端子と−端子との間に並列に接続されてなる。第２電流センサ３３ｂは、第２駆動回路３４ｂと第２コイル２５ｂとの間の給電経路を流れる各相（Ｕ相、Ｖ相、Ｗ相）の電流値である第２実電流値Ｉ２を検出する。
【００２７】
第２マイコン３２ｂは、所定の制御周期毎に、第２トルクセンサ４０ｂにより検出される第２操舵トルクτ２、回転角センサ４１により検出される第２回転角度θ２、車速センサ４２により検出される車速Ｖ、及び第２電流センサ３３ｂにより検出される第２実電流値Ｉ２を取得する。第２マイコン３２ｂは、第２操舵トルクτ２、第２回転角度θ２、車速Ｖ、及び第２実電流値Ｉ２に基づいて、第２ＰＷＭ信号Ｐ２を生成する。第２駆動回路３４ｂは、所定の制御周期で第２マイコン３２ｂにより生成された第２ＰＷＭ信号Ｐ２に基づいて、第２駆動回路３４ｂを構成するスイッチング素子をオンオフすることにより、図示しない直流電源から供給される直流電力を３相交流電力に変換する。これにより、第２駆動回路３４ｂは、３相交流電力を第２コイル２５ｂに供給する。
【００２８】
このように、第１マイコン３２ａ及び第２マイコン３２ｂは、第１駆動回路３４ａ及び第２駆動回路３４ｂの制御を通じて、第１制御系統Ａの第１コイル２５ａ及び第２制御系統Ｂの第２コイル２５ｂへの給電を制御する。
【００２９】
第１マイコン３２ａ及び第２マイコン３２ｂの機能について説明する。
図３に示すように、第１マイコン３２ａは、第１クロック生成部５０、第１電流指令値演算部５１、第１電流フィードバック制御部５２、第１タイマカウント部５３、第１三角波生成部５４、及び第１モータ駆動指令値生成部５５を有している。また、第２マイコン３２ｂは、第２クロック生成部６０、第２電流指令値演算部６１、第２電流フィードバック制御部６２、第２タイマカウント部６３、第２三角波生成部６４、及び第２モータ駆動指令値生成部６５を有している。なお、第１マイコン３２ａ及び第２マイコン３２ｂは、ステアリング軸１１の回転に応じた第１操舵トルクτ１を第１トルクセンサ４０ａから取得できない場合、第１トルクセンサ４０ａが異常であると判定する。また、第１マイコン３２ａ及び第２マイコン３２ｂは、ステアリング軸１１の回転に応じた第２操舵トルクτ２を第２トルクセンサ４０ｂから取得できない場合、第２トルクセンサ４０ｂが異常であると判定する。第１トルクセンサ４０ａが異常でない場合には、第１マイコン３２ａがいわゆるマスターとして動作し、第２マイコン３２ｂがいわゆるスレーブとして動作する。また、第１トルクセンサ４０ａが異常である場合、第１マイコン３２ａがスレーブとして動作し、第２マイコン３２ｂがマスターとして動作する。第１マイコン３２ａ及び第２マイコン３２ｂは、マスターとして動作するマイコンが演算した指令値を給電の制御に用いる一方、スレーブとして動作するマイコンが演算した指令値を給電の制御に用いない。
【００３０】
第１クロック生成部５０は、逓倍器である。第１クロック生成部５０は、第１発振器３１ａから入力された第１クロックＣＬＫ１を所定倍数で逓倍することにより、第１マイコン３２ａ用の第１クロックＣＬＫａを生成する。第１クロック生成部５０は、生成された第１クロックＣＬＫａを、第１電流指令値演算部５１、第１電流フィードバック制御部５２、及び第１タイマカウント部５３に出力する。
【００３１】
第２クロック生成部６０は、逓倍器である。第２クロック生成部６０は、第２発振器３１ｂから入力された第２クロックＣＬＫ２を所定倍数で逓倍することにより、第２マイコン３２ｂ用の第２クロックＣＬＫｂを生成する。第２クロック生成部６０は、生成された第２クロックＣＬＫｂを、第２電流指令値演算部６１、第２電流フィードバック制御部６２、及び第２タイマカウント部６３に出力する。
【００３２】
第１電流指令値演算部５１は、第１トルクセンサ４０ａにより検出された第１操舵トルクτ１及び車速センサ４２により検出された車速Ｖに基づいて、第１電流指令値Ｉ１ａ＊及び第２電流指令値Ｉ２ａ＊を演算する。なお、第１電流指令値Ｉ１ａ＊は、第１コイル２５ａに対する給電を制御するための指令値である。第１電流指令値Ｉ１ａ＊は、第１制御系統Ａの第１コイル２５ａへの給電によりモータ２０が発生すべきトルクに対応している。また、第２電流指令値Ｉ２ａ＊は、第２コイル２５ｂに対する給電を制御するための指令値である。第２電流指令値Ｉ２ａ＊は、第２制御系統Ｂの第２コイル２５ｂへの給電によりモータ２０が発生すべきトルクに対応している。第１電流指令値演算部５１は、第１電流指令値Ｉ１ａ＊を第１電流フィードバック制御部５２に出力し、第２電流指令値Ｉ２ａ＊を第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信により第２マイコン３２ｂの第２電流フィードバック制御部６２に送信する。特許請求の範囲で記載した第１指令値演算部は、第１電流指令値演算部５１である。
【００３３】
第２電流指令値演算部６１は、第２トルクセンサ４０ｂにより検出された第２操舵トルクτ２及び車速センサ４２により検出された車速Ｖに基づいて、第１電流指令値Ｉ１ｂ＊及び第２電流指令値Ｉ２ｂ＊を演算する。なお、第１電流指令値Ｉ１ｂ＊は、第１コイル２５ａに対する給電を制御するための指令値である。第１電流指令値Ｉ１ｂ＊は、第１制御系統Ａの第１コイル２５ａへの給電によりモータ２０が発生すべきトルクに対応している。また、第２電流指令値Ｉ２ｂ＊は、第２コイル２５ｂに対する給電を制御するための指令値である。第２電流指令値Ｉ２ｂ＊は、第２制御系統Ｂの第２コイル２５ｂへの給電によりモータ２０が発生すべきトルクに対応している。第２電流指令値演算部６１は、第２電流指令値Ｉ２ｂ＊を第２電流フィードバック制御部６２に出力し、第１電流指令値Ｉ１ｂ＊を第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信により第１電流フィードバック制御部５２に送信する。特許請求の範囲で記載した第２指令値演算部は、第２電流指令値演算部６１である。
【００３４】
第１電流フィードバック制御部５２は、第１電流指令値Ｉ１ａ＊及び第１電流指令値Ｉ１ｂ＊の他、第１回転角度θ１及び第１実電流値Ｉ１を取得する。第１電流フィードバック制御部５２は、第１電流指令値Ｉ１ａ＊及び第１電流指令値Ｉ１ｂ＊のいずれか一方を用いて第１デューティ指令値Ｄ１の演算を実行する。第１デューティ指令値Ｄ１は、ＰＷＭ制御におけるデューティ比を指示する指令値である。第１マイコン３２ａがマスターとして動作する場合、第１電流フィードバック制御部５２は、第１電流指令値Ｉ１ａ＊に第１実電流値Ｉ１を追従させるべく、第１電流指令値Ｉ１ａ＊と第１実電流値Ｉ１との偏差に基づく電流フィードバック制御である第１フィードバック制御を実行することにより、第１デューティ指令値Ｄ１を演算する。また、第２マイコン３２ｂがマスターとして動作する場合、第１電流フィードバック制御部５２は、第１電流指令値Ｉ１ｂ＊に第１実電流値Ｉ１を追従させるべく、第１電流指令値Ｉ１ｂ＊と第１実電流値Ｉ１との偏差に基づく電流フィードバック制御である第１フィードバック制御を実行することにより、第１デューティ指令値Ｄ１を演算する。第１電流フィードバック制御部５２は、演算した第１デューティ指令値Ｄ１を第１モータ駆動指令値生成部５５に対して出力する。特許請求の範囲で記載した第１フィードバック制御部は、第１電流フィードバック制御部５２である。
【００３５】
第２電流フィードバック制御部６２は、第２電流指令値Ｉ２ａ＊及び第２電流指令値Ｉ２ｂ＊の他、第２回転角度θ２及び第２実電流値Ｉ２を取得する。第２電流フィードバック制御部６２は、第２電流指令値Ｉ２ａ＊及び第２電流指令値Ｉ２ｂ＊のいずれか一方を用いて第２デューティ指令値Ｄ２の演算を実行する。第２デューティ指令値Ｄ２は、ＰＷＭ制御におけるデューティ比を指示する指令値である。第１マイコン３２ａがマスターとして動作する場合、第２電流フィードバック制御部６２は、第２電流指令値Ｉ２ａ＊に第２実電流値Ｉ２を追従させるべく、第２電流指令値Ｉ２ａ＊と第２実電流値Ｉ２との偏差に基づく電流フィードバック制御である第２フィードバック制御を実行することにより、第２デューティ指令値Ｄ２を演算する。また、第２マイコン３２ｂがマスターとして動作する場合、第２電流フィードバック制御部６２は、第２電流指令値Ｉ２ｂ＊に第２実電流値Ｉ２を追従させるべく、第２電流指令値Ｉ２ｂ＊と第２実電流値Ｉ２との偏差に基づく電流フィードバック制御である第２フィードバック制御を実行することにより、第２デューティ指令値Ｄ２を演算する。第２電流フィードバック制御部６２は、演算した第２デューティ指令値Ｄ２を第２モータ駆動指令値生成部６５に対して出力する。特許請求の範囲に記載した第２フィードバック制御部は、第２電流フィードバック制御部６２である。
【００３６】
第１タイマカウント部５３は、公知の分周器及びアップダウンカウンタからなる。第１タイマカウント部５３は、分周期で分周された第１クロックＣＬＫａのクロック数をアップダウンカウンタでインクリメント及びデクリメントし、その第１カウント値Ｃｔ１を第１三角波生成部５４に対して出力する。第１タイマカウント部５３は、インクリメント及びデクリメントをそれぞれ繰り返した回数が予め定められた上限カウント値Ｃｔ０に達した場合、インクリメント及びデクリメントを切り替える。
【００３７】
第２タイマカウント部６３は、公知の分周器及びアップダウンカウンタからなる。第２タイマカウント部６３は、分周期で分周された第２クロックＣＬＫｂのクロック数をアップダウンカウンタでインクリメント及びデクリメントし、その第２カウント値Ｃｔ２を第２三角波生成部６４に対して出力する。なお、上限カウント値Ｃｔ０は、第１タイマカウント部５３及び第２タイマカウント部６３の間で同一値に設定されている。
【００３８】
第１三角波生成部５４は、第１タイマカウント部５３により演算された第１カウント値Ｃｔ１に基づいて、搬送波としての三角波Ｗ１（図７参照）を生成し、その三角波Ｗ１を第１モータ駆動指令値生成部５５に出力する。第１三角波生成部５４は、第１カウント値Ｃｔ１が入力される毎に、インクリメントを示す間は予め定められた信号レベルを累積加算するとともに、デクリメントを示す間は予め定められた信号レベルを累積減算することによって、三角波Ｗ１を生成する。このように生成される三角波Ｗ１は、第１クロックＣＬＫａの上限カウント値Ｃｔ０に応じた所定周期毎に、ハイレベルＨ（いわゆる、山）及びローレベルＬ（いわゆる、谷）の変化を繰り返す。
【００３９】
第１三角波生成部５４は、生成した三角波Ｗ１に基づいて処理タイミング信号を生成し、その処理タイミング信号を第１電流指令値演算部５１及び第１電流フィードバック制御部５２に対して出力する。第１電流指令値演算部５１の処理タイミングとは、第１電流指令値演算部５１が第１電流指令値Ｉ１ａ＊及び第２電流指令値Ｉ２ａ＊の演算処理を実行するタイミングである。また、第１電流フィードバック制御部５２の処理タイミングとは、第１電流フィードバック制御部５２がフィードバック制御を実行するタイミングである。すなわち、これらの処理タイミングは、三角波Ｗ１における山の頂点と谷の頂点となるタイミングに基づいて定められている。これらの処理タイミングの周期は、例えば、三角波Ｗ１の山の頂点と谷の頂点との間の期間に基づいて設定されている。第１電流フィードバック制御部５２によるフィードバック制御の周期は、第１電流指令値演算部５１による第１電流指令値Ｉ１ａ＊及び第２電流指令値Ｉ２ａ＊の演算周期よりも短く設定されている。
【００４０】
第２三角波生成部６４は、第２タイマカウント部６３により演算された第２カウント値Ｃｔ２に基づいて、搬送波としての三角波Ｗ２（図７参照）を生成し、その三角波Ｗ２を第２モータ駆動指令値生成部６５に出力する。第２三角波生成部６４は、第２カウント値Ｃｔ２が入力される毎に、インクリメントを示す間は予め定められた信号レベルを累積加算するとともに、デクリメントを示す間は予め定められた信号レベルを累積減算することによって、三角波Ｗ２を生成する。このように生成される三角波Ｗ２は、第２クロックＣＬＫｂの上限カウント値Ｃｔ０に応じた所定周期毎に、ハイレベルＨ（いわゆる、山）及びローレベルＬ（いわゆる、谷）の変化を繰り返す。三角波Ｗ１，Ｗ２において、ハイレベルＨ及びローレベルＬの変化を繰り返す周期は、設計上同一周期となるように設定されている。
【００４１】
第２三角波生成部６４は、生成した三角波Ｗ２に基づいて処理タイミング信号を生成し、その処理タイミング信号を第２電流指令値演算部６１及び第２電流フィードバック制御部６２に対して出力する。第２電流指令値演算部６１の処理タイミングとは、第２電流指令値演算部６１が第１電流指令値Ｉ１ｂ＊及び第２電流指令値Ｉ２ｂ＊の演算処理を実行するタイミングである。また、第２電流フィードバック制御部６２の処理タイミングとは、第２電流フィードバック制御部６２がフィードバック制御を実行するタイミングである。これらの処理タイミングは、三角波Ｗ２における山の頂点と谷の頂点となるタイミングに基づいて定められている。すなわち、これらの処理タイミングの周期は、例えば、三角波Ｗ２の山の頂点と谷の頂点との間の期間に基づいて設定されている。第２電流フィードバック制御部６２によるフィードバック制御の周期は、第２電流指令値演算部６１による第１電流指令値Ｉ１ｂ＊及び第２電流指令値Ｉ２ｂ＊の演算周期よりも短く設定されている。また、第２電流指令値演算部６１による第１電流指令値Ｉ１ｂ＊及び第２電流指令値Ｉ２ｂ＊の演算周期と、第１電流指令値演算部５１による第１電流指令値Ｉ１ａ＊及び第２電流指令値Ｉ２ａ＊の演算周期とは、設計上同一周期となるように設定されている。また、第２電流フィードバック制御部６２によるフィードバック制御の周期と、第１電流フィードバック制御部５２によるフィードバック制御の周期とは、設計上同一周期となるように設定されている。
【００４２】
第１モータ駆動指令値生成部５５は、第１三角波生成部５４により生成された三角波Ｗ１及び第１電流フィードバック制御部５２により演算された第１デューティ指令値Ｄ１に基づいて、所定の処理タイミングで第１ＰＷＭ信号Ｐ１を生成する。第１モータ駆動指令値生成部５５は、生成した第１ＰＷＭ信号Ｐ１を第１駆動回路３４ａに対して出力する。第１モータ駆動指令値生成部５５の処理タイミングとは、第１モータ駆動指令値生成部５５が前回の演算周期の第１ＰＷＭ信号Ｐ１から今回の演算周期の第１ＰＷＭ信号Ｐ１へ更新するタイミングである。第１実施形態において、第１ＰＷＭ信号Ｐ１は、三角波Ｗ１と第１デューティ指令値Ｄ１とを比較して、第１デューティ指令値Ｄ１が大きい場合にオン信号となり、第１デューティ指令値Ｄ１が小さい場合にオフ信号となる。第１モータ駆動指令値生成部５５による第１ＰＷＭ信号Ｐ１の更新周期は、第１電流フィードバック制御部５２によるフィードバック制御の周期よりも短く設定されている。
【００４３】
第２モータ駆動指令値生成部６５は、第２三角波生成部６４により生成された三角波Ｗ２及び第２電流フィードバック制御部６２により演算された第２デューティ指令値Ｄ２に基づいて、所定の処理タイミングで第２ＰＷＭ信号Ｐ２を生成する。第２モータ駆動指令値生成部６５は、生成した第２ＰＷＭ信号Ｐ２を第２駆動回路３４ｂに対して出力する。第２モータ駆動指令値生成部６５の処理タイミングとは、第２モータ駆動指令値生成部６５が前回の演算周期の第２ＰＷＭ信号Ｐ２から今回の演算周期の第２ＰＷＭ信号Ｐ２へ更新するタイミングである。第１実施形態において、第２ＰＷＭ信号Ｐ２は、三角波Ｗ２と第２デューティ指令値Ｄ２とを比較して、第２デューティ指令値Ｄ２が大きい場合にオン信号となり、第２デューティ指令値Ｄ２が小さい場合にオフ信号となる。第２モータ駆動指令値生成部６５による第２ＰＷＭ信号Ｐ２の更新周期は、第２電流フィードバック制御部６２によるフィードバック制御の周期よりも短く設定されている。
【００４４】
図４を参照して、第１電流指令値演算部５１の機能について説明する。
第１電流指令値演算部５１は、第１基本電流指令値演算部５１ａ及び均等配分部５１ｂを備えている。なお、第２電流指令値演算部６１も第１電流指令値演算部５１と同様の構成要素を有している。
【００４５】
第１基本電流指令値演算部５１ａは、第１操舵トルクτ１及び車速Ｖに基づいて、第１電流指令値Ｉ１ａ＊及び第２電流指令値Ｉ２ａ＊の合算値である基本電流指令値Ｉａ＊を演算する。
【００４６】
具体的には、図５に示すように、第１基本電流指令値演算部５１ａは、入力される第１操舵トルクτ１の絶対値が大きいほど、また車速Ｖが小さいほど、より大きな絶対値を有する基本電流指令値Ｉａ＊を演算する。第１操舵トルクτ１の絶対値の変化量｜Δτ１｜に対する基本電流指令値Ｉａ＊の絶対量の変化量｜ΔＩａ＊｜の比（｜ΔＩａ＊／Δτ１｜）は、第１操舵トルクτ１の絶対値が大きいほど、大きくなっている。なお、第１操舵トルクτ１は、ステアリングホイール１０の右操舵方向であるか、あるいは左操舵方向であるかに基づいて正負が定められている。第１操舵トルクτ１の正負の符号に伴い、第１基本電流指令値演算部５１ａにより演算される基本電流指令値Ｉａ＊も正負の符号を有する。
【００４７】
均等配分部５１ｂは、入力される基本電流指令値Ｉａ＊に「１／２」を乗算する。すなわち、均等配分部５１ｂは、基本電流指令値Ｉａ＊を均等に配分した均等指令値Ｉａｅ＊（「Ｉａ＊／２」）を演算する。均等配分部５１ｂにより演算された均等指令値Ｉａｅ＊が、そのまま第１電流指令値Ｉ１ａ＊及び第２電流指令値Ｉ２ａ＊として出力される。要するに、均等配分部５１ｂにより演算される第１電流指令値Ｉ１ａ＊及び第２電流指令値Ｉ２ａ＊は、互いに等しい値に設定される。
【００４８】
均等指令値Ｉａｅ＊は、第１操舵トルクτ１及び第２操舵トルクτ２の絶対値が大きくなるにつれて大きくなる。均等指令値Ｉａｅ＊の第１操舵トルクτ１及び第２操舵トルクτ２の絶対値に対する関係は、車速Ｖが同一の条件であるとき、図５に示される基本電流指令値Ｉａ＊の曲線の第１操舵トルクτ１及び第２操舵トルクτ２の絶対値に対する関係を半分の傾きにしたものと同じになる。このため、均等指令値Ｉａｅ＊の第１操舵トルクτ１及び第２操舵トルクτ２に対する傾きは、第１操舵トルクτ１及び第２操舵トルクτ２の絶対値が大きいほど、大きくなる。
【００４９】
図６は、横軸に第２電流指令値Ｉ２ａ＊，Ｉ２ｂ＊を、縦軸に第１電流指令値Ｉ１ａ＊，Ｉ１ｂ＊をプロットしたものである。図６には、第１電流指令値Ｉ１ａ＊，Ｉ１ｂ＊及び第２電流指令値Ｉ２ａ＊，Ｉ２ｂ＊が同一である場合の関係が示されている。
【００５０】
第１実施形態において、第１電流指令値演算部５１及び第２電流指令値演算部６１の演算処理と、第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２のフィードバック制御と、第１モータ駆動指令値生成部５５及び第２モータ駆動指令値生成部６５の更新処理とは、第１クロックＣＬＫａ及び第２クロックＣＬＫｂに基づいて生成される処理タイミングで行われる。
【００５１】
例えば、図７に示すように、第１制御系統Ａにおいて、第１三角波生成部５４が生成した三角波Ｗ１の山の頂点及び谷の頂点のタイミングで、例えば第１モータ駆動指令値生成部５５がスイッチング素子をオンオフする。また、第１電流指令値演算部５１や第１電流フィードバック制御部５２は、第１三角波生成部５４が生成した三角波Ｗ１の山の頂点及び谷の頂点のタイミングに基づいて、各処理を実行する。なお、これは、第２制御系統Ｂでも同様である。ところで、第１実施形態においては、第１制御系統Ａ及び第２制御系統Ｂの各部の処理タイミングの周期は設計上同一に設定されている。第１発振器３１ａの周期と第２発振器３１ｂの周期とがばらついていなければ、第１制御系統Ａが規定した時間と第２制御系統Ｂが規定した時間とは同一になる。ただし、第１制御系統Ａの各部の処理タイミングは第１発振器３１ａを用いて規定され、第２制御系統Ｂの各部の処理タイミングは第１発振器３１ａとは別個の第２発振器３１ｂを用いて規定されている。第１制御系統Ａの第１マイコン３２ａと第２制御系統Ｂの第２マイコン３２ｂとは、同期することなく独立してコイル２５への給電を制御している。同期とは、第１制御系統Ａの処理タイミングと第２制御系統Ｂの処理タイミングとを合わせることである。本実施形態では、第１実施形態の第１マイコン３２ａ及び第２マイコン３２ｂは、非同期で各処理を実行する。
【００５２】
図７及び図８に示すように、発振器からのクロックの周期は、発振器の製造のばらつきや劣化や素材のばらつき等によって個体ごとにばらつくことがある。例えば、発振器の水晶素子に個体ごとにばらつきがある場合には、発振器からのクロックの周期が個体ごとにばらつく。このことから、第１制御系統Ａの第１発振器３１ａの第１クロックＣＬＫ１の周期と、第２制御系統Ｂの第２発振器３１ｂの第２クロックＣＬＫ２の周期とは異なることがある。この場合、第１制御系統Ａが規定した時間と第２制御系統Ｂが規定した時間とは異なることになる。こうした第１クロックＣＬＫ１と第２クロックＣＬＫ２とのずれは解消されるものではなく、このずれは、第１タイマカウント部５３の第１カウント値Ｃｔ１、さらには第１三角波生成部５４の三角波Ｗ１へと波及し、最終的に第１制御系統Ａと第２制御系統Ｂとの間で処理タイミングの時間的なずれを生じさせる。また、第１クロックＣＬＫ１と第２クロックＣＬＫ２とのずれは、第２タイマカウント部６３の第２カウント値Ｃｔ２、さらには第２三角波生成部６４の三角波Ｗ２へと波及し、最終的に第１制御系統Ａと第２制御系統Ｂとの間で処理タイミングの時間的なずれを生じさせる。これにより、第１電流指令値演算部５１と第２電流指令値演算部６１との間で処理タイミングの時間的なずれが生じ、第１電流フィードバック制御部５２と第２電流フィードバック制御部６２との間で処理タイミングの時間的なずれが生じ、第１モータ駆動指令値生成部５５と第２モータ駆動指令値生成部６５との間で処理タイミングの時間的ずれが生じる。
【００５３】
図７に示すように、第１制御系統Ａの処理タイミングと第２制御系統Ｂとの間の処理タイミングとのずれは経時的に変化するおそれがある。すなわち、第１制御系統Ａと第２制御系統Ｂとの間の処理タイミングの時間的なずれは、発振器のクロックの周期に個体ごとにばらつきがある場合、時間経過とともに大きくなる。この処理タイミングのずれの経時的な変化は、所定周期で繰り返されている。これにより、例えば第１電流指令値演算部５１によって第２電流指令値Ｉ２ａ＊が演算されたとしても、第１マイコン３２ａと第２マイコン３２ｂとの間で通信されるまでは、第２マイコン３２ｂは第１電流指令値演算部５１によって演算された第２電流指令値Ｉ２ａ＊を把握することができない。そして、第２マイコン３２ｂの第２電流フィードバック制御部６２は、たとえ第１電流指令値演算部５１で新たに第２電流指令値Ｉ２ａ＊が演算されたとしても、第１マイコン３２ａと第２マイコン３２ｂとの間で通信が確立するまでは、前回の通信が確立した際に受け取った第２電流指令値Ｉ２ａ＊を用いてフィードバック制御を行うことになる。前回の通信が確立した際に受け取った第２電流指令値Ｉ２ａ＊は、今回の演算周期で演算された第２電流指令値Ｉ２ａ＊よりも過去の演算周期で演算された第２電流指令値Ｉ２ａ＊である。このように、第２制御系統Ｂの第２マイコン３２ｂの第２電流フィードバック制御部６２は、今回の演算周期で演算された第２電流指令値Ｉ２ａ＊よりも過去の演算周期の第２電流指令値Ｉ２ａ＊を用いてフィードバック制御をすることになる。これは、第１電流フィードバック制御部５２が第２電流指令値演算部６１によって演算された第１電流指令値Ｉ１ｂ＊を用いてフィードバック制御する場合にも同様である。この場合、第１マイコン３２ａと第２マイコン３２ｂとの間で通信されるまでは、第１電流フィードバック制御部５２は、過去の演算周期の第１電流指令値Ｉ１ｂ＊を用いてフィードバック制御することになる。フィードバック制御においては、マスターとして動作する第１マイコン３２ａによって演算される最新の指令値を用いることが最適である。すなわち、第１マイコン３２ａ及び第２マイコン３２ｂは、より最新の電流指令値を用いてフィードバック制御をすることが最適である。
【００５４】
そこで、第１実施形態では、第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２が過去の演算周期の電流指令値でフィードバック制御をする期間を短くし、第１制御系統Ａ及び第２制御系統Ｂがより最適な演算周期の電流指令値を用いてモータ２０の駆動を制御できるようにするために、下記の構成を採用している。すなわち、第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期を、第１電流指令値演算部５１による第１電流指令値Ｉ１ａ＊及び第２電流指令値Ｉ２ａ＊の演算周期と同じ周期に設定している。また、第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期を、第２電流指令値演算部６１による第１電流指令値Ｉ１ｂ＊及び第２電流指令値Ｉ２ｂ＊の演算周期と同じ周期に設定している。
【００５５】
第１実施形態の作用及び効果を説明する。
（１）比較例として、第１制御系統Ａと第２制御系統Ｂとの間の通信の周期が、第１電流指令値演算部５１及び第２電流指令値演算部６１による電流指令値の演算周期よりも長い周期に設定されている場合について説明する。ここでは、第１制御系統Ａと第２制御系統Ｂとの間の通信の周期が、第１電流指令値演算部５１及び第２電流指令値演算部６１による電流指令値の演算周期の５倍の周期に設定されている場合について説明する。
【００５６】
比較例として図９に示すように、第１制御系統Ａと第２制御系統Ｂとの間の処理タイミングに時間的なずれが生じている。ここでは、一例として、第２制御系統Ｂの処理タイミングは、第１制御系統Ａの処理タイミングに対して、第１電流指令値演算部５１による第２電流指令値Ｉ２ａ＊の演算周期の４回分遅れているものとする。例えば、ｎ回目の第２電流指令値Ｉ２ａ＊の演算の処理タイミングでは、第１制御系統Ａ側からｎ回目の第２電流指令値Ｉ２ａ＊が送信されるとともに、第１電流フィードバック制御部５２においてｎ回目の第１電流指令値Ｉ１ａ＊を用いたフィードバック制御が実行される。一方、第２制御系統Ｂには時間的な遅れが生じていることから、ｎ回目の第２電流指令値Ｉ２ａ＊が演算されたタイミングでは、第２制御系統Ｂ側はｎ回目の第２電流指令値Ｉ２ａ＊を受信することができない。第２制御系統Ｂ側がｎ回目の第２電流指令値Ｉ２ａ＊を把握することができるのは、マイコン間通信が確立するタイミング、すなわち第２制御系統Ｂが第２電流指令値Ｉ２ａ＊を受信するタイミングである。第２電流フィードバック制御部６２は、時間的な遅れがなければｎ回目の第２電流指令値Ｉ２ａ＊が演算されたタイミングでｎ回目の第２電流指令値Ｉ２ａ＊を用いたフィードバック制御を実行できるところ、時間的な遅れに起因して、第２制御系統Ｂが第２電流指令値Ｉ２ａ＊を受信できるタイミングが遅れている。第２制御系統Ｂがｎ回目の第２電流指令値Ｉ２ａ＊を受信できるタイミングは、時間的なずれ（ここでは遅れ）に起因して、第２電流指令値Ｉ２ａ＊の演算周期の４回分遅れたｎ＋４回目の第２電流指令値Ｉ２ａ＊が演算されたタイミングになる。第１制御系統Ａ側からｎ回目の第２電流指令値Ｉ２ａ＊が送信された時点においては、第２電流フィードバック制御部６２がｎ回目の第２電流指令値Ｉ２ａ＊を用いてフィードバック制御をすることが最適である。第２電流フィードバック制御部６２は、ｎ回目の第２電流指令値Ｉ２ａ＊が演算されたタイミングでは当該ｎ回目の第２電流指令値Ｉ２ａ＊を把握できないため、前回のマイコン間通信が確立した際に受け取ったｎ−５回目の第２電流指令値Ｉ２ａ＊を用いてフィードバック制御をすることになる。このｎ−５回目の第２電流指令値Ｉ２ａ＊は、発振器のクロックの周期に個体毎にばらつきがない場合、前回の周期のマイコン間通信が行われた時点において、第２電流フィードバック制御部６２が受信してフィードバック制御に用いるべき電流指令値である。第１マイコン３２ａと第２マイコン３２ｂとの間で通信が行われた直後に、第１電流指令値演算部５１が今回の演算周期の第２電流指令値Ｉ２ａ＊を演算した場合には、最大で通信の周期と同程度の間、第２電流フィードバック制御部６２は前回のマイコン間通信が確立した際に受け取った第２電流指令値Ｉ２ａ＊を用いてフィードバック制御することになる。このように、第２電流フィードバック制御部６２は、今回の演算周期で演算された第２電流指令値Ｉ２ａ＊よりも過去の演算周期の第２電流指令値Ｉ２ａ＊を用いてフィードバック制御をすることになることから、モータ２０のコイル２５に対して最適な給電を行うことができないおそれがある。この場合、トルクリップルが生じるおそれがある。なお、第１電流フィードバック制御部５２が第２電流指令値演算部６１によって演算された第１電流指令値Ｉ１ｂ＊を用いてフィードバック制御する際にも同様の課題が生じる。
【００５７】
第１実施形態として図１０に示すように、第１制御系統Ａと第２制御系統Ｂとの間の処理タイミングには、比較例の場合と同様の時間的な遅れが生じている。例えば、ｎ回目の第２電流指令値Ｉ２ａ＊の演算の処理タイミングでは、第１制御系統Ａ側からｎ回目の第２電流指令値Ｉ２ａ＊が送信されるとともに、第１電流フィードバック制御部５２においてｎ回目の第１電流指令値Ｉ１ａ＊を用いたフィードバック制御が実行される。一方、第２制御系統Ｂには第１制御系統Ａに対して時間的な遅れが生じていることから、ｎ回目の第２電流指令値Ｉ２ａ＊が演算されたタイミングでは、第２制御系統Ｂ側はｎ回目の第２電流指令値Ｉ２ａ＊を受信することができない。第１実施形態では、第１制御系統Ａと第２制御系統Ｂとの間の通信の周期を、第１電流指令値演算部５１及び第２電流指令値演算部６１による電流指令値の演算周期と同じ周期に設定している。このことから、第１制御系統Ａと第２制御系統Ｂとの間の通信が行われた直後に第１電流指令値演算部５１が第２電流指令値Ｉ２ａ＊を演算したとしても、通信の周期を各電流指令値の演算周期と同じ周期にしていることから、第２制御系統Ｂが今回の演算周期で演算された第２電流指令値Ｉ２ａ＊を把握できない期間を短くすることができる。第２制御系統Ｂが今回の演算周期の第２電流指令値Ｉ２ａ＊を把握できない期間とは、第１制御系統Ａが第２電流指令値Ｉ２ａ＊を送信したにもかかわらず第２制御系統Ｂが第２電流指令値Ｉ２ａ＊を受信していないために、当該第２電流指令値Ｉ２ａ＊をフィードバック制御に反映できない期間のことである。すなわち、ｎ回目の第２電流指令値Ｉ２ａ＊が演算されたタイミングでは、第２制御系統Ｂ側はｎ回目の第２電流指令値Ｉ２ａ＊を受信することはできないものの、ｎ＋１回目の第２電流指令値Ｉ２ａ＊が演算されたタイミングで、第２制御系統Ｂ側はｎ回目の第２電流指令値Ｉ２ａ＊を受信することができる。これにより、第２電流フィードバック制御部６２が前回のマイコン間通信が確立した際に受け取った第２電流指令値Ｉ２ａ＊を用いてフィードバック制御する期間を短くすることができる。第２電流フィードバック制御部６２が前回のマイコン間通信が確立した際に受け取った第２電流指令値Ｉ２ａ＊を用いてフィードバック制御する期間とは、第２制御系統Ｂが今回の演算周期で演算された第２電流指令値Ｉ２ａ＊を把握できない期間である。また、第１制御系統Ａと第２制御系統Ｂとの間で通信が行われた直後に第２電流指令値演算部６１が第１電流指令値Ｉ１ｂ＊を演算したとしても、通信の演算周期を各電流指令値の演算周期と同じ周期にしていることから、第１制御系統Ａが今回の演算周期で演算された第１電流指令値Ｉ１ｂ＊を把握できない期間を短くすることができる。このため、第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２が今回の演算周期で演算された電流指令値よりも過去の演算周期の電流指令値でフィードバック制御をする期間を短くすることができる。これにより、トルクリップルが生じることを抑えることができる。このようにすることで、各制御系統がより最適な演算周期の電流指令値を用いてモータ２０の駆動を制御することができるようになる。
【００５８】
（２）第１マイコン３２ａ及び第２マイコン３２ｂが同期して各処理を実行する場合には、第１マイコン３２ａ及び第２マイコン３２ｂの間の処理タイミングの時間的なずれが所定値を超えた場合に、第１マイコン３２ａ及び第２マイコン３２ｂをリセットすることで両者を同期している。しかし、第１マイコン３２ａ及び第２マイコン３２ｂが非同期で各処理を実行する場合には、第１マイコン３２ａ及び第２マイコン３２ｂの処理タイミングのずれに経時的な変化が生じたとしても、その経時的なずれの変化を解消できない。第１実施形態の構成は、このような第１マイコン３２ａ及び第２マイコン３２ｂが非同期で各処理するものに好適であり、第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２が今回の演算周期で演算された指令値よりも過去の演算周期の指令値でフィードバック制御をする期間を短くすることができる。
【００５９】
＜第２実施形態＞
操舵制御装置をＥＰＳに適用した第２実施形態について説明する。ここでは、第１実施形態との違いを中心に説明する。
【００６０】
第２実施形態では、第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期を、第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２のフィードバック制御の周期と同じ周期に設定している。
【００６１】
第２実施形態の作用及び効果を説明する。
（３）第２実施形態では、第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期を、第１電流指令値演算部５１及び第２電流指令値演算部６１による電流指令値の演算周期よりもさらに短い周期である第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２のフィードバック制御の周期と同じ周期に設定している。これにより、第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２が今回の演算周期で演算された指令値よりも過去の演算周期の指令値でフィードバック制御をする期間をさらに短くすることができる。
【００６２】
＜第３実施形態＞
操舵制御装置をＥＰＳに適用した第３実施形態について説明する。ここでは、第１実施形態との違いを中心に説明する。
【００６３】
第３実施形態では、第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期を、第１モータ駆動指令値生成部５５の第１ＰＷＭ信号Ｐ１の更新周期及び第２モータ駆動指令値生成部６５の第２ＰＷＭ信号Ｐ２の更新周期と同じに設定している。
【００６４】
第３実施形態の作用及び効果を説明する。
（４）第３実施形態では、第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期を、第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２のフィードバック制御の周期よりもさらに短い周期である第１ＰＷＭ信号Ｐ１及び第２ＰＷＭ信号Ｐ２の更新周期と同じ周期に設定している。これにより、第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２が今回の演算周期で演算された指令値よりも過去の演算周期の指令値でフィードバック制御をする期間をさらに短くすることができる。
【００６５】
なお、各実施形態は次のように変更してもよい。また、以下の他の実施形態は、技術的に矛盾しない範囲において、互いに組み合わせることができる。
・各実施形態では、第１制御系統Ａ及び第２制御系統Ｂの２つの制御系統としたが、３つ以上の制御系統にしてもよい。この場合、各制御系統のマイコンは、モータ２０の最大のトルクを制御系統の数で割った値のトルクをそれぞれのコイルで発生させるように給電を制御すればよい。
【００６６】
・第１電流指令値演算部５１及び第２電流指令値演算部６１は、第１操舵トルクτ１及び第２操舵トルクτ２が所定値以下の場合、第１電流指令値Ｉ１ａ＊，Ｉ１ｂ＊及び第２電流指令値Ｉ２ａ＊，Ｉ２ｂ＊を異なる値に設定するようにしてもよい。
【００６７】
・第１電流指令値演算部５１は、第１操舵トルクτ１及び車速Ｖに基づいて基本電流指令値Ｉａ＊を演算したが、第１操舵トルクτ１のみに基づいて基本電流指令値Ｉａ＊を演算するようにしてもよい。また、第２電流指令値演算部６１は、第２操舵トルクτ２及び車速Ｖに基づいて基本電流指令値Ｉａ＊を演算したが、第２操舵トルクτ２のみに基づいて基本電流指令値Ｉａ＊を演算するようにしてもよい。また、モータ２０が発生すべきトルクの指令値の基となる指令値を演算し、当該指令値を操舵制御装置３０に対して出力する外部ＥＣＵを別途設けるようにしてもよい。
【００６８】
・第１電流指令値演算部５１は、第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信により送信しているのは第２電流指令値Ｉ２ａ＊であったが、これに限らない。また、第２電流指令値演算部６１は、第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信により送信しているのは第１電流指令値Ｉ１ｂ＊であったが、これに限らない。すなわち、第１電流指令値演算部５１及び第２電流指令値演算部６１は、電流指令値に限らず、モータ２０が発生すべきトルクの指令値を演算し、その指令値をマイコン間通信により送信するようにしてもよい。
【００６９】
・各実施形態は、モータ２０と操舵制御装置３０とが一体的に構成される機電一体のモータ装置に適用してもよい。
・回転角センサ４１は、ＭＲセンサを用いたものであってもよいし、ホールセンサを用いたものであってもよいし、レゾルバを用いたものであってもよい。
【００７０】
・第１マイコン３２ａが把握する第１回転角度θ１及び第２マイコン３２ｂが把握する第２回転角度θ２は、同一の回転角センサ４１により検出されたが、これに限らない。例えば、第１マイコン３２ａが把握する第１回転角度θ１は第１回転角センサにより検出され、第２マイコン３２ｂが把握する第２回転角度θ２は第１回転角センサとは異なる第２回転角センサにより検出されてもよい。
【００７１】
・第１実施形態では、第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期を、第１電流指令値演算部５１及び第２電流指令値演算部６１による電流指令値の演算周期と同じ周期に設定していたが、これに限らない。第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期は、第１電流指令値演算部５１による第１電流指令値Ｉ１ａ＊及び第２電流指令値Ｉ２ａ＊の演算周期よりも短い周期に設定されてもよい。
【００７２】
・第２実施形態では、第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期を、第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２のフィードバック制御の周期と同じ周期に設定していたが、これに限らない。第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期は、第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２のフィードバック制御の周期よりも短い周期に設定されてもよい。
【００７３】
・第３実施形態では、第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期を、第１モータ駆動指令値生成部５５の第１ＰＷＭ信号Ｐ１の更新周期及び第２モータ駆動指令値生成部６５の第２ＰＷＭ信号Ｐ２の更新周期と同じに設定していたが、これに限らない。第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期は、第１モータ駆動指令値生成部５５の第１ＰＷＭ信号Ｐ１の更新周期及び第２モータ駆動指令値生成部６５の第２ＰＷＭ信号Ｐ２の更新周期よりも短い周期に設定されてもよい。例えば、第１マイコン３２ａ及び第２マイコン３２ｂの間のマイコン間通信の周期は、第１発振器３１ａの第１クロックＣＬＫ１の周期及び第２発振器３１ｂの第２クロックＣＬＫ２の周期と同じに設定してもよい。
【００７４】
・各実施形態では、第１マイコン３２ａがスレーブとして動作する場合でも、第１電流指令値演算部５１は第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２に対して指令値を出力したが、出力しないようにしてもよい。また、各実施形態では、第２マイコン３２ｂがスレーブとして動作する場合でも、第２電流指令値演算部６１は第１電流フィードバック制御部５２及び第２電流フィードバック制御部６２に対して指令値を出力したが、出力しないようにしてもよい。
【００７５】
・各実施形態では、第１マイコン３２ａは状況に応じてマスターとして動作する一方、第２マイコン３２ｂが状況に応じてスレーブとして動作していたが、これに限らない。第１マイコン３２ａを常にマスターとして動作させる一方、第２マイコン３２ｂを常にスレーブとして動作させるようにしてもよい。この場合、スレーブとして動作する第２マイコン３２ｂは、第２電流指令値演算部６１を有していなくてよい。この場合、第１マイコン３２ａはマスター制御部として動作し、第２マイコン３２ｂはスレーブ制御部として動作する。また、第１電流指令値Ｉ１ａ＊はマスター用指令値であり、第２電流指令値Ｉ２ａ＊はスレーブ用指令値である。また、第１発振器３１ａはマスター用発振器であり、第２発振器３１ｂはスレーブ用発振器である。
【００７６】
・各実施形態では、モータ２０によってステアリング軸１１にアシスト力を付与するＥＰＳ１に具体化して示したが、これに限らない。例えば、ラック軸１２に平行に配置された回転軸２１を有するモータ２０によってラック軸１２にアシスト力を付与するＥＰＳ１に具体化したステアリング装置であってもよい。また、ステアバイワイヤ装置であってもよい。すなわち、モータ２０によって操舵機構２に動力を付与するステアリング装置であれば、どのようなものであってもよい。
【００７７】
上記実施形態及び変形例から把握できる技術的思想について、それらの効果とともに以下に追記する。
操舵機構に対してトルクを付与するモータの駆動を制御する複数の制御系統を備えており、前記複数の制御系統毎に複数のコイルが設けられ、複数のコイルに対する給電を制御するための指令値を演算するマスター制御部と、当該マスター制御部が演算する指令値に基づいて動作するスレーブ制御部とを含む操舵制御装置において、前記マスター制御部は、マスター用発振器から入力されたクロックに基づいた処理タイミングで動作し、前記スレーブ制御部は、スレーブ用発振器から入力されたクロックに基づいた処理タイミングで動作し、前記マスター制御部は、前記マスター制御部が対応するコイルに対する給電を制御するためのマスター用指令値及び前記スレーブ制御部が対応するコイルに対する給電を制御するためのスレーブ用指令値を演算し、当該スレーブ用指令値を前記スレーブ制御部との間の通信を通じて送信する機能を有し、前記マスター制御部と前記スレーブ制御部との間の通信の周期は、前記マスター制御部による指令値の演算周期以下に設定されている。
【００７８】
上記構成によれば、マスター制御部とスレーブ制御部との間の通信の周期を、マスター制御部及びスレーブ制御部によるマスター用指令値及びスレーブ用指令値の演算周期以下の周期に設定している。このことから、発振器からのクロックの周期のばらつきによって、マスター制御部とスレーブ制御部との間の通信が行われた直後にマスター制御部がスレーブ用指令値を演算したとしても、通信の周期を指令値の演算周期以下の周期にしていることから、スレーブ制御部が今回の演算周期で演算されたスレーブ用指令値を把握できない期間を短くすることができる。これにより、スレーブ制御部が前回の通信が確立した際に受け取った過去の演算周期で演算されたスレーブ用指令値を用いて給電の制御をする期間を短くすることができる。このため、スレーブ制御部が今回の演算周期で演算されたスレーブ用指令値よりも過去の演算周期のスレーブ用指令値で給電の制御をする期間を短くすることができる。すなわち、マスター制御部の処理タイミングとスレーブ制御部の処理タイミングとのずれを抑制することができる。これにより、トルクリップルが生じることを抑えることができる。このようにすることで、各制御系統がより最適な演算周期の指令値を用いてモータの駆動を制御することができるようになる。
【符号の説明】
【００７９】
１…ＥＰＳ、２…操舵機構、３…アシスト機構、１０…ステアリングホイール、１１…ステアリング軸、１１ａ…コラム軸、１１ｂ…中間軸、１１ｃ…ピニオン軸、１２…ラック軸、１３…ラックアンドピニオン機構、１４…タイロッド、１５…転舵輪、２０…モータ、２１…回転軸、２２…減速機構、２３…ロータ、２４…コイル、２４ａ…第１コイル、２４ｂ…第２コイル、３０…ＥＣＵ、３２ａ…第１マイコン、３２ｂ…第２マイコン、３３ａ…第１電流センサ、３３ｂ…第２電流センサ、３４ａ…第１駆動回路、３４ｂ…第２駆動回路、４０ａ…第１トルクセンサ、４０ｂ…第２トルクセンサ、４１…回転角センサ、４２…車速センサ、５０…第１クロック生成部、５１…第１電流指令値演算部、５１ａ…第１基本電流指令値演算部、５１ｂ…均等配分部、５２…第１電流フィードバック制御部、５３…第１タイマカウント部、５４…第１三角波生成部、５５…第１モータ駆動指令値生成部、６０…第２クロック生成部、６１…第２電流指令値演算部、６２…第２電流フィードバック制御部、６３…第２タイマカウント部、６４…第２三角波生成部、６５…第２モータ駆動指令値生成部、θ…回転角度、θ１…第１回転角度、θ２…第２回転角度、Ａ…第１制御系統、Ｂ…第２制御系統、Ｃｔ０…上限カウント値、Ｃｔ１…第１カウント値、Ｃｔ２…第２カウント値、ＣＬＫ１，ＣＬＫａ…第１クロック、ＣＬＫ２，ＣＬＫｂ…第２クロック、Ｄ１…第１デューティ指令値、Ｄ２…第２デューティ指令値、Ｉ１…第１実電流値、Ｉ２…第２実電流値、Ｉ１ａ＊，Ｉ１ｂ＊…第１電流指令値、Ｉ２ａ＊，Ｉ２ｂ＊…第２電流指令値、Ｉａ＊…基本電流指令値、Ｉａｅ＊…均等指令値、Ｐ１…第１ＰＷＭ信号、Ｐ２…第２ＰＷＭ信号、Ｖ…車速、τ１…第１操舵トルク、τ２…第２操舵トルク、Ｗ１，Ｗ２…三角波。
【図１】
2020096512.tif 000003
【図２】
2020096512.tif 000004
【図３】
2020096512.tif 000005
【図４】
2020096512.tif 000006
【図５】
2020096512.tif 000007
【図６】
2020096512.tif 000008
【図７】
2020096512.tif 000009
【図８】
2020096512.tif 000010
【図９】
2020096512.tif 000011
【図１０】
2020096512.tif 000012