(57)【特許請求の範囲】
【請求項１】
Ｎ個（Ｎは２以上の自然数）の交流回転電機のそれぞれに対応付けられたＮ個のインバータを、キャリアを用いたパルス幅変調方式により生成されたスイッチング制御信号により制御して、前記Ｎ個の交流回転電機の電流フィードバック制御を行う回転電機制御装置であって、
前記Ｎ個の交流回転電機のそれぞれに対する前記電流フィードバック制御を重複することなく順次実行させると共に、前記Ｎ個の交流回転電機の前記電流フィードバック制御を所定の制御周期内で完了させるタスク管理部と、
前記Ｎ個のインバータのそれぞれに対応する前記キャリアの基準区間の長さを所定の変動幅の範囲内でランダムに変動させて、Ｎ個の前記キャリアを生成するキャリア生成部と、を備え、
前記キャリア生成部は、前記Ｎ個のキャリアのそれぞれに対して互いに開始タイミングが一致することなく所定周期で現れるように管理区間を設定し、当該管理区間のそれぞれがＮ個の前記基準区間を含むと共に、前記管理区間のそれぞれの長さが前記制御周期に一致するように、それぞれの前記キャリアを生成する回転電機制御装置。
【請求項２】
前記Ｎ個の交流回転電機のそれぞれに対応するＮ個の前記管理区間が、互いに等間隔ずらして設定されている請求項１に記載の回転電機制御装置。
【請求項３】
前記タスク管理部は、前記Ｎ個の交流回転電機のそれぞれに流れる電流を検出する電流検出タスクを、当該それぞれの交流回転電機に対応する前記管理区間の開始を基準とする所定のタイミングで実行させる請求項１又は２に記載の回転電機制御装置。
【請求項４】
前記タスク管理部は、前記電流検出タスクを、前記それぞれの交流回転電機に対応する前記管理区間の最初に実行させる請求項３に記載の回転電機制御装置。
【請求項５】
前記キャリア生成部は、前記管理区間のそれぞれにおいて、
（Ｎ−１）個の前記基準区間の長さを、それぞれ所定の変動幅の範囲内でランダムに変動させ、
残余のＮ個目の前記基準区間の長さを、前記制御周期と前記（Ｎ−１）個の前記基準区間の長さの総和との差に一致するように変動させて、前記キャリアを生成する請求項１から４のいずれか一項に記載の回転電機制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｎ個（Ｎは２以上の自然数）の交流回転電機のそれぞれに対応付けられたＮ個のインバータを、キャリアを用いたパルス幅変調方式により生成されたスイッチング制御信号により制御して、当該Ｎ個の交流回転電機の電流フィードバック制御を行う回転電機制御装置に関する。
【背景技術】
【０００２】
例えば、走行用の回転電機と発電用の回転電機とを備えたハイブリッド自動車など、複数の回転電機のそれぞれに対応づけて複数備えられたインバータを介して、当該複数の回転電機の電流フィードバック制御を行う回転電機制御装置が知られている。特開２００２−２７２１８４号公報（特許文献１）には、１つのディジタル演算手段を用いて２個の回転電機の電流フィードバック制御を共通に行う制御装置が開示されている。この制御装置は、ディジタル演算手段による電流フィードバックの演算周期をディジタル演算手段の出力周期のｎ倍とし、且つ、各回転電機に対する電流フィードバック演算を互いに重ならないタイミングで実施する。演算負荷の重い電流フィードバック演算をパルス幅変調などの出力周期のｎ倍の長い演算周期で行うことによって演算負荷を大幅に軽減すると共に、演算負荷の分散も可能となる（特許文献１：要約、図５等）。
【０００３】
ところで、インバータをパルス幅変調により駆動する場合、パルス幅変調の出力周期に応じた高調波のノイズ（インバータノイズ）が生じることが知られている。パルス幅変調は、例えば三角波状のキャリアに基づいて実施される。従って、この高調波のノイズは、キャリアの周波数に応じたものとなる。このような高調波のノイズを低減するため、三角波状のキャリアの周波数を所定の範囲内で変動させたり、三角波状のキャリアの変化点（ピーク又はボトム）のタイミングを所定の範囲内で変動させたりするなど、キャリアの波形を変動させることによって、高調波のノイズの基本周波数を分散させ、高調波ノイズの周波数も分散させる手法が知られている。つまり、ノイズが特定の周波数に集中しないようにして、各周波数のノイズの最高エネルギーを抑制する手法が知られている。特許文献１のように、複数の回転電機を制御する場合には、それぞれの回転電機に対応するインバータのパルス幅変調に用いられるキャリアの波形を個別に変動させることによって、さらにノイズの周波数を分散させることが可能となる。
【０００４】
ところで、回転電機に対する電流フィードバック制御は、キャリアに同期して実施することが好ましい。例えば、三角波状のキャリアの波形がピークやボトムのタイミングでは、変調により生成されるパルスが変化する可能性が低く、インバータノイズの発生も少ない。従って、安定した制御を実現するために、実際に回転電機を流れる電流を検出して電流フィードバック制御を開始するタイミングを、キャリアのピークやボトムのタイミングに同期させる構成がしばしば採用される。また、変調の周期に応じて、キャリアに対する変調指令（電圧指令）が演算されると演算効率も高くなるため、この観点からもキャリアと、電流フィードバック制御の実行タイミングとが同期していることが好ましい。特許文献１のように、１つのディジタル演算手段を用いて複数の回転電機を制御する場合には、それぞれの回転電機に対応するキャリアに、それぞれの回転電機の電流フィードバック制御の実行タイミングが同期していると共に、全ての回転電機の電流フィードバック制御が演算周期内で完了することが望ましい。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−２７２１８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記背景に鑑みて、複数の交流回転電機の電流フィードバック制御を順次実施する際に、各交流回転電機に対応するパルス幅変調のキャリアの波形を個別に変動させると共に、各交流回転電機に対応する当該キャリアと各交流回転電機に対する電流フィードバック制御の実行タイミングとを同期させ、且つ、所定の制御周期内で全ての交流回転電機の電流フィードバック制御を完了させる技術の提供が望まれる。
【課題を解決するための手段】
【０００７】
上記課題に鑑みた本発明に係る回転電機制御装置の特徴構成は、
Ｎ個（Ｎは２以上の自然数）の交流回転電機のそれぞれに対応付けられたＮ個のインバータを、キャリアを用いたパルス幅変調方式により生成されたスイッチング制御信号により制御して、前記Ｎ個の交流回転電機の電流フィードバック制御を行う回転電機制御装置であって、
前記Ｎ個の交流回転電機のそれぞれに対する前記電流フィードバック制御を重複することなく順次実行させると共に、前記Ｎ個の交流回転電機の前記電流フィードバック制御を所定の制御周期内で完了させるタスク管理部と、
前記Ｎ個のインバータのそれぞれに対応する前記キャリアの基準区間の長さを所定の変動幅の範囲内でランダムに変動させて、Ｎ個の前記キャリアを生成するキャリア生成部と、を備え、
前記キャリア生成部は、前記Ｎ個のキャリアのそれぞれに対して互いに開始タイミングが一致することなく所定周期で現れるように管理区間を設定し、当該管理区間のそれぞれがＮ個の前記基準区間を含むと共に、前記管理区間のそれぞれの長さが前記制御周期に一致するように、それぞれの前記キャリアを生成する点にある。
【０００８】
この構成によれば、Ｎ個の交流回転電機のそれぞれに対する電流フィードバック制御が重複することなく順次実行される。また、Ｎ個の交流回転電機の電流フィードバック制御は、所定の制御周期内で完了される。従って、Ｎ個よりも少ない数、例えば単一の演算装置を用いてＮ個の交流回転電機を制御することができる。つまり、回転電機制御装置を小規模な構成で実現することができる。また、Ｎ個のインバータのそれぞれに対応するパルス幅変調に用いられるＮ個のキャリアは、各キャリアの基準区間の長さを所定の変動幅の範囲内でランダムに変動させて生成される。この基準区間は、例えば、キャリアが三角波の場合のピークとボトムとの相互の間隔や、ピーク・トゥ・ピーク（ボトム・トゥ・ボトム）の間隔とすることができる。基準区間の変動により、キャリアを用いてパルス幅変調により生成されるスイッチング制御信号のパルスに起因するノイズの基本周波数が分散される。これにより、この基本周波数の高調波の周波数も分散するので、特定の周波数へのノイズの集中が緩和され、ノイズの最大エネルギーを小さくすることができる。さらに、各キャリアには、Ｎ個のキャリアのそれぞれに対して互いに開始タイミングが一致することがないように管理区間が設定されている。また、この管理区間は、管理区間のそれぞれがＮ個の基準区間を含むように設定されている。従って、Ｎ個の交流回転電機に対応して、効率よくキャリアを生成することができ、スイッチング制御信号を生成することができるので、円滑な回転電機制御が可能となる。また、管理区間は、それぞれの長さが制御周期に一致するように設定されており、各管理区間と制御周期とは互いに同期する。従って、キャリアの基準区間の長さがランダムに変動しても、各キャリアと制御周期との同期が保たれ、安定した回転電機制御が可能となる。このように、本構成によれば、複数の交流回転電機の電流フィードバック制御を順次実施する際に、各交流回転電機に対応するパルス幅変調のキャリアの波形を個別に変動させると共に、各交流回転電機に対応する当該キャリアと各交流回転電機に対する電流フィードバック制御の実行タイミングとを同期させ、且つ、所定の制御周期内で全ての交流回転電機の電流フィードバック制御を完了させることが可能となる。
【０００９】
互いに開始タイミングが一致することがないように設定される管理区間の開始タイミングの間隔は、例えば、１つの交流回転電機に対して１回の電流フィードバック制御を実行可能な演算区間の長さ以上であるとよい。各管理区間が順次開始される間に、各管理区間の始めにおいて各交流回転電機の１回の電流フィードバック制御を実行することができるのでタスク管理も容易である。更に、管理区間の間隔を一定にすれば、複数の交流回転電機に対応する複数のキャリアの生成やタスク管理が容易となる。即ち、１つの態様として、本発明に係る回転電機制御装置は、前記Ｎ個の交流回転電機のそれぞれに対応するＮ個の前記管理区間が、互いに等間隔ずらして設定されていると好適である。
【００１０】
電流フィードバック制御は、実際に交流回転電機を流れる電流の検出結果を用いて実施される。従って、管理区間の開始タイミングを基準とした一定のタイミングで当該電流が検出されると、安定した電流フィードバックが実現できて好ましい。１つの態様として、本発明に係る回転電機制御装置は、前記タスク管理部が、前記Ｎ個の交流回転電機のそれぞれに流れる電流を検出する電流検出タスクを、当該それぞれの交流回転電機に対応する前記管理区間の開始を基準とする所定のタイミングで実行させると好適である。
【００１１】
例えば、キャリアが三角波の場合、管理区間の開始タイミングを三角波のピークやボトムと一致させることが可能である。キャリアの波形がピーク又はボトムであるタイミングでは、パルス幅変調の原理から、スイッチング制御信号のパルスの変化点と重なる可能性が低い。従って、インバータがスイッチングして交流回転電機に流れる電流が変化する過渡状態となる可能性が低く、当該電流が安定している可能性が高くなる。従って、管理区間の最初に電流検出タスクが実行されると、高い精度で交流回転電機に流れる電流を検出できて好適である。また、電流フィードバック制御の演算時間を有効に活用する観点からも、できるだけ初期に、実際に交流回転電機を流れる電流が検出されることが好ましい。即ち、１つの態様として、本発明に係る回転電機制御装置は、前記タスク管理部が、前記電流検出タスクを、前記それぞれの交流回転電機に対応する前記管理区間の最初に実行させると好適である。
また、１つの態様として、本発明に係る回転電機制御装置は、前記キャリア生成部は、前記管理区間のそれぞれにおいて、（Ｎ−１）個の前記基準区間の長さを、それぞれ所定の変動幅の範囲内でランダムに変動させ、残余のＮ個目の前記基準区間の長さを、前記制御周期と前記（Ｎ−１）個の前記基準区間の長さの総和との差に一致するように変動させて、前記キャリアを生成すると好適である。
【図面の簡単な説明】
【００１２】
【図１】回転電機制御装置を含むシステム構成の一例を模式的に示すブロック図
【図２】本発明の回転電機制御装置の構成の一例を模式的に示すブロック図
【図３】キャリアを用いたパルス幅変調の原理を示す波形図
【図４】キャリアに同期させて複数のモータをタイムシェアリング制御する原理を示すタイムチャート
【図５】変化点を変動させたキャリアに同期させて２つのモータをタイムシェアリング制御する例（比較例）を示すタイムチャート
【図６】各モータ個別のキャリアに同期させて２つのモータをタイムシェアリング制御する一例を示すタイムチャート
【図７】各モータ個別のキャリアに同期させて２つのモータをタイムシェアリング制御する他の例を示すタイムチャート
【図８】各モータ個別のキャリアに同期させて３つのモータをタイムシェアリング制御する例を示すタイムチャート
【図９】タスクの実行タイミングのバリエーションを示すタイムチャート
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態を、ハイブリッド自動車や電気自動車などの車両の駆動源及び当該車両の直流電源への回生源となる回転電機を制御する回転電機制御装置を例として、図面に基づいて説明する。本実施形態では、回転電機制御装置が、内燃機関と回転電機とが協働するハイブリッド自動車に搭載される２つの回転電機を制御する場合を例として説明する。２つの回転電機は、共に状況に応じて、電動機及び発電機として機能する。以下、回転電機を適宜、モータと称して説明するが、これは、電動機及び発電機として機能する回転電機を指す。
【００１４】
図１のブロック図は、そのようなモータＭの制御装置１００（回転電機制御装置）を含む車両のシステム構成の一例を模式的に示している。図１に示すように、本実施形態では、交流回転電機として２つの３相同期モータＭＧ１、ＭＧ２が備えられている。両モータを区別する場合には、第１モータＭＧ１、第２モータＭＧ２と称する。例えば、第１モータＭＧ１は、主として発電機として機能し、第２モータＭＧ２は主として電動機として機能する。１つの好適な形態として、第１モータＭＧ１は、遊星歯車機構を有して構成される動力分配機構のサンギヤを介して入力された内燃機関からの駆動力により発電を行い、直流電源部５６に備えられたバッテリを充電すると共に、第２モータＭＧ２に電力を供給可能である。また、第２モータＭＧ２は、直流電源部５６や第１モータＭＧ１から供給されて電動機として機能し、車両の走行用の駆動力を補助することが可能である。尚、車両が高速走行する際には、第１モータＭＧ１が車両の駆動源となる電動機として機能することもある。また、第２モータＭＧ２は、車両の減速時には車両の慣性力を電気エネルギーとして回生する発電機として機能するともある。この他、２つのモータＭＧ１，ＭＧ２がそれぞれ異なる駆動輪に対して駆動連結される構成を採用することも可能である。
【００１５】
両モータＭＧ１，ＭＧ２は、同じ性能のモータであってもよいし、異なる性能のモータであってもよい。また、モータＭＧ１，ＭＧ２をそれぞれ制御するインバータ５７ａ，５７ｂなどの制御回路も、同じ構成であってもよいし、モータの性能や仕様に応じて異なる構成であってもよい。本実施形態では、説明を容易にするために、特に、第１モータＭＧ１と第２モータＭＧ２とを区別する必要がない場合には、適宜モータＭとして説明する。同様に、制御回路などについても区別する必要がない場合には、例えば、適宜インバータ５７などとして説明する。
【００１６】
図１に示すように、第１モータＭＧ１及び第２モータＭＧ２は、それぞれ、インバータ５７ａ，５７ｂを介して、直流電源部５６と電気的に接続される。この直流電源部５６は、バッテリであっても良いし、バッテリ及びバッテリの出力電圧を昇圧するコンバータを含むものであってもよい。インバータ５７（５７ａ，５７ｂ）は、直流電源部５６から出力される直流電力を３相交流電力に変換する。変換された３相交流電力によって、電動機として機能するモータＭ（ＭＧ１，ＭＧ２）が駆動される。インバータ５７は、モータＭが発電機として機能する場合には、発電された３相交流電力を直流電力に変換して直流電源部５６に回生する。
【００１７】
インバータ５７は、よく知られているようにスイッチング素子を用いた３相のブリッジ回路により構成される。スイッチング素子には、ＩＧＢＴ（insulated gate bipolar transistor）やＭＯＳＦＥＴ（metal oxide semiconductor field effect transistor）を適用すると好適である。以下、スイッチング素子としてＩＧＢＴを用いる場合を例として説明する。
【００１８】
インバータ５７の直流の正極側と直流の負極側との間には、２つのＩＧＢＴが直列に接続された１相分のレッグが構成され、このレッグが３回線並列接続される。つまり、モータＭのｕ，ｖ，ｗ各相に対応するステータコイルのそれぞれに一組のレッグが対応したブリッジ回路が構成される。各レッグの上段側のＩＧＢＴのコレクタはインバータ５７の直流の正極側に接続され、エミッタは各レッグの下段側のＩＧＢＴのコレクタに接続される。また、各レッグの下段側のＩＧＢＴのエミッタは、インバータ５７の直流の負極側（例えば、グラウンド）に接続される。各レッグにおいて対となるＩＧＢＴの中間点、つまり、ＩＧＢＴの接続点は、モータＭの３相のステータコイルにそれぞれ接続される。ＩＧＢＴには、それぞれ、カソード端子がＩＧＢＴのコレクタ端子に接続され、アノード端子がＩＧＢＴのエミッタ端子に接続される形でフリーホイールダイオード（回生ダイオード）が並列に接続される。各ＩＧＢＴのゲートは、後述するドライバ回路５５を介してＥＣＵ（electronic control unit）５０に接続されており、それぞれ個別にスイッチング制御される。本実施形態では、他のＥＣＵと区別するために、ＥＣＵ５０をＴＣＵ（trans-axle control unit）５０と称する。
【００１９】
ＴＣＵ５０は、マイクロコンピュータなどの論理回路を中核として構成される。本実施形態では、ＴＣＵ５０は、シングルタスクのマイクロコンピュータであるＣＰＵ（central processing unit）５１と、インターフェース回路５２と、その他の周辺回路等とを有して構成される。ＣＰＵ５１は、回転電機制御プログラムをシリアルに実行するコンピュータである。インターフェース回路５２は、ＥＭＩ（electro-magnetic interference）対策部品やバッファ回路などにより構成される。ＣＰＵ５１は、本発明の回転電機制御装置に相当する制御装置１００の中核となる。高電圧をスイッチングするＩＧＢＴやＭＯＳＦＥＴのゲートに入力される駆動信号は、マイクロコンピュータなどの一般的な電子回路の電源電圧よりも高い電圧を必要とするため、ドライバ回路５５を介して電圧変換（例えば昇圧）された後、インバータ５７に入力される。
【００２０】
ＣＰＵ５１は、少なくとも、ＣＰＵコア１１と、プログラムメモリ１２と、パラメータメモリ１３と、ワークメモリ１４と、通信制御部１５と、Ａ／Ｄコンバータ１６と、タイマ１７と、ポート１８とを有して構成される。ＣＰＵコア１１は、ＣＰＵ５１の中核であり、命令レジスタや命令デコーダ、種々の演算の実行主体となるＡＬＵ(arithmetic logic unit)、フラグレジスタ、汎用レジスタ、割り込みコントローラなどを有して構成される。ＣＰＵコア１１は、単一の演算処理ユニットにより、シリアルにプログラムを実行するシングルタスクのコンピュータの中核を担う。
【００２１】
プログラムメモリ１２は、モータ制御プログラム（回転電機制御プログラム）が格納された不揮発性のメモリである。パラメータメモリ１３は、プログラムの実行の際に参照される種々のパラメータが格納された不揮発性のメモリである。パラメータメモリ１３は、プログラムメモリ１２と区別することなく構築されてもよい。プログラムメモリ１２やパラメータメモリ１３は、例えばフラッシュメモリなどによって構成されると好適である。ワークメモリ１４は、プログラム実行中の一時データを一時記憶するメモリである。ワークメモリ１４は、揮発性で問題なく、高速にデータの読み書きが可能なＤＲＡＭ（dynamic RAM）やＳＲＡＭ（static RAM）により構成される。
【００２２】
通信制御部１５は、車両内の他のシステムとの通信を制御する。例えば、車両内のＣＡＮ（controller area network）などのネットワークを介して、走行制御システム６０や、その他のシステム、センサ等との通信を制御する。本実施形態では、ＣＰＵ５１は、通信制御部１５を介して、走行制御システム６０から、モータ制御指令Ｈｒを受け取り、これに基づいて、モータＭを制御する。
【００２３】
Ａ／Ｄコンバータ１６は、アナログの電気信号をデジタルデータに変換する。本実施形態では、モータＭの各ステータコイルに流れるモータ電流の検出結果を電流センサ５８（５８ａ，５８ｂ）から受け取り、デジタルデータに変換する。尚、ｕ，ｖ，ｗ相の３相電流は平衡しており、その瞬時値はゼロであるので、２相分のみの電流を検出し、残る１相はＣＰＵ５１において演算により求めてもよい。本実施形態では、３相の全てが非接触型の電流センサ５８により検出される場合を例示している。また、本例では、Ａ／Ｄコンバータ１６が６つのアナログ入力を有しているように図示しているが、これは３相２回線の合計６つの電流値を計測していることを明示するためである。従って、必ずしも６つの入力を有する必要はない。例えば、インターフェース回路５２にマルチプレクサを備えて、時分割により６つ未満のアナログ入力からアナログの電流値を取得してもよい。
【００２４】
タイマ１７は、ＣＰＵ５１のクロック周期を最小分解能として、時間を計測する。例えば、タイマ１７は、プログラムの実行周期を監視する。また、タイマ１７は、インバータ５７のＩＧＢＴを駆動するスイッチング制御信号の有効時間を計測して、当該スイッチング制御信号を生成する。また、タイマ１７は、後述するように、管理区間ＴＭや基準区間ＴＲを計測して、パルス幅変調のキャリアＣＷを生成する。ポート１８は、インバータ５７のＩＧＢＴのスイッチング制御信号などをＣＰＵ５１の端子を介して出力したり、ＣＰＵ５１に入力される回転検出センサ５９（５９ａ，５９ｂ）からの回転検出信号Ｒ（Ｒ１，Ｒ２）を受け取ったりする端子制御部である。回転検出センサ５９は、モータＭの近傍に設置されてモータＭのロータの回転位置や回転速度を検出センサであり、例えば、レゾルバなどを用いて構成される。
【００２５】
レジスタ９１〜９８は、ＣＰＵ５１のＣＰＵコア１１内の汎用レジスタや、ワークメモリ１４により構成される。レジスタ９１〜９８は、ＣＰＵコア１１によって実行されるプログラムの進行に応じて、適宜、一定期間データを一時記憶する。当然ながら、ＣＰＵコア１１によって実行されるプログラムに応じて、一時記憶することなく、レジスタへのデータの入力と同時に出力させてもよい。尚、このようなレジスタ構成は一例であり、本発明を限定するものではない。
【００２６】
本実施形態において、モータＭの制御装置１００は、上述したようなＣＰＵ５１を中核として構成される。つまり、ＣＰＵコア１１を主として、ワークメモリ１４やタイマ１７なども含むハードウェアと、プログラムメモリ１２やパラメータメモリ１３に格納されたプログラムやパラメータなどのソフトウェアとの協働により、制御装置１００が構成される。図２に示すように、制御装置１００は、トルク制御部１０と、電流制御部３（３ａ，３ｂ）と、電圧制御部６（６ａ，６ｂ）と、キャリア生成部５と、回転状態演算部９（９ａ，９ｂ）と、タスク管理部１とを有して構成される。尚、直流電源部５６にコンバータが含まれる場合には、制御装置１００に昇圧制御部が含まれると好適である。図２において、第１モータＭＧ１を制御する機能部は末尾に「ａ」を付した符号で示され、第２モータＭＧ２を制御する機能部は末尾に「ｂ」を付した符号で示されている。以下、特に断らない限り、第１モータＭＧ１を制御する機能部と第２モータＭＧ２を制御する機能部とを区別することなく、適宜、電流制御部３などと称して説明する。
【００２７】
交流モータを制御する方法として、ベクトル制御と呼ばれる制御方法が知られている。ベクトル制御では、交流モータの３相各相のステータコイルに流れるコイル電流を、回転子に配置された永久磁石が発生する磁界の方向に準じた第１軸（例えば、磁界の方向に沿ったｄ軸）と、第１軸に直交する第２軸（例えばｑ軸）との２相のベクトル成分に座標変換してフィードバック制御を行う。本実施形態においては、このｄ−ｑ軸ベクトル空間におけるベクトル制御を採用した場合を例として説明する。
【００２８】
ベクトル制御における座標変換に際しては、モータＭの回転状態をリアルタイムで知る必要がある。従って、図１に示すように、モータＭの近傍にレゾルバなどの回転検出センサ５９が備えられる。その検出結果は、上述したように、ＣＰＵ５１のポート１８を介して、ＣＰＵコア１１内のレジスタやワークメモリ１４に伝達される。制御装置１００に設けられた回転状態演算部９は、回転検出センサ５９の回転検出信号Ｒ（Ｒ１，Ｒ２）に基づいて、ロータ位置（電気角θ）や、回転速度（角速度ω）を求める。求められた電気角θや角速度ωは、トルク制御部１０や電流制御部３や電圧制御部６において用いられる。
【００２９】
トルク制御部１０は、走行制御システム６０から与えられるモータ制御指令（走行制御指令）Ｈｒに基づいて、各モータＭを制御するための要求トルク（トルク指令）Ｔｒを演算し、それぞれの要求トルクＴｒに応じて電流フィードバック制御のための２相の目標電流（電流指令）ｉｄ，ｉｑを設定する機能部である。目標電流ｉｄ，ｉｑは、上述したｄ軸及びｑ軸に対応して設定される。このため、トルク制御部１０は、回転状態演算部９により求められた電気角θ（θ１，θ２）に基づいて要求トルクＴｒをｄ軸の目標電流ｉｄ及びｑ軸の目標電流ｉｑに座標変換する２相変換部２（２ａ，２ｂ）を有して構成される。２相変換部２ａは、第１モータＭＧ１の要求トルクＴｒ１に応じて、第１モータＭＧ１の目標電流ｉｄ，ｉｑを演算する。２相変換部２ｂは、第２モータＭＧ２の要求トルクＴｒ２に応じて、第２モータＭＧ２の目標電流ｉｄ，ｉｑを演算する。
【００３０】
電流制御部３は、目標電流ｉｄ，ｉｑと、フィードバックされたモータ電流との偏差に基づいて、例えば比例積分制御（ＰＩ制御）や、比例微積分制御（ＰＩＤ制御）を行い、目標電圧（電圧指令）ｖｄ，ｖｑを設定する機能部である。ここでは、比例微積分制御（ＰＩＤ制御）が行われる場合を例示しており、電流制御部３は、２相変換部３１とＰＩＤ制御部３２とを有して構成される。電流センサ５８により検出された電流値は、３相電流であるから、２相変換部３１は、回転状態演算部９により求められた電気角θ（θ１，θ２）に基づいて、２相電流Ｉｄ，Ｉｑに座標変換する。ＰＩＤ制御部３２は、目標電流ｉｄ，ｉｑと、２相モータ電流Ｉｄ，Ｉｑとの偏差、及び、回転状態演算部９により求められた角速度ω（ω１，ω２）に基づいて、ＰＩＤ制御を行い、目標電圧ｖｄ，ｖｑを設定する。
【００３１】
電圧制御部６は、目標電圧ｖｄ，ｖｑに基づいて、インバータ５７の３相のＩＧＢＴを駆動するスイッチング制御信号を生成する。電圧制御部６は、３相変換部６１とＰＷＭ制御部６２とを有して構成される。上述したように、インバータ５７は、モータＭの３相のステータコイルに対応して３相分設けられている。従って、３相変換部６１により、２相の目標電圧（電圧指令）ｖｄ，ｖｑは、回転状態演算部９により求められた電気角θ（θ１，θ２）に基づいて、３相の目標電圧ｖｕ，ｖｖ，ｖｗ（３相電圧指令ｖ＊）に座標変換される。ＰＷＭ制御部６２は、インバータ５７をパルス幅変調（ＰＷＭ）により制御する機能部であり、インバータ５７を構成する各ＩＧＢＴのスイッチング制御信号ＰＷを生成する。
【００３２】
１つの態様として、図３に示すように、３相それぞれの電圧指令ｖ＊と、パルス幅変調のためのキャリアＣＷとに基づいて各スイッチング制御信号ＰＷの有効時間が求められる。そして、ＣＰＵ５１のタイマ１７により各スイッチング制御信号ＰＷの有効時間が計測され、ポート１８を介してパルス状のスイッチング制御信号ＰＷが出力される。ここで、キャリアＣＷが、対称な波形を有する三角波であるとする。つまり、キャリアＣＷの１周期ＴＰは、ピーク・トゥ・ピーク（ボトム・トゥ・ボトム）であり、ピーク・トゥ・ボトム及びボトム・トゥ・ピークはそれぞれ等しく、キャリアＣＷの１周期ＴＰの１／２である半周期ＨＴＰである。キャリア生成部５は、各モータＭの各インバータに対応するキャリアＣＷを生成する機能部である。
【００３３】
本実施形態のようにモータＭが２つである場合、図４に示すように、キャリアＣＷの１周期ＴＰを２個のモータＭの１回の電流フィードバック制御を完了させる制御周期ＴＣとすることができる。つまり、キャリアＣＷに同期させて、複数のモータＭの電流フィードバック制御を実施することができる。図４に示すように、対称な波形を有するキャリアＣＷの１周期ＴＰにおいて、２つのモータＭの１回の電流フィードバック制御を完了させる場合、第１モータＭＧ１、第２モータＭＧ２のそれぞれの電流フィードバック制御は、キャリアＣＷの１周期ＴＰの１／２である半周期ＨＴＰで完了させれば良い。ここで、第１モータＭＧ１、第２モータＭＧ２のそれぞれの１回の電流フィードバック制御の演算を実施可能な時間を演算区間ＴＵと称する。例えば図４に示すように、第１モータＭＧ１の演算区間ＴＵ１をキャリアＣＷのピーク・トゥ・ボトムの区間に設定し、第２モータＭＧ２の演算区間ＴＵ２をキャリアＣＷのボトム・トゥ・ピークの区間に設定することによって、キャリアＣＷに同期させて、２つのモータＭの電流フィードバック制御を実施することが可能である。図３及び図４に示すように、キャリアＣＷが対称な波形である場合には、両演算区間ＴＵ１，ＴＵ２は、共にキャリアＣＷの１周期ＴＰの１／２である半周期ＨＴＰとなる。尚、後述するように、キャリアＣＷのピーク・トゥ・ボトムの区間やボトム・トゥ・ピークの区間は、キャリアＣＷの波形を変動させる際の基準区間ＴＲとして設定可能である。
【００３４】
各演算区間ＴＵにおいては、例えば図４に示すようなタスクが実行される。即ち、制御周期ＴＣに含まれる一方の演算区間ＴＵ１において、第１モータＭＧ１に流れる電流を検出する第１電流検出タスクＴＳ１１、第１モータＭＧ１に対する電流制御演算を行う第１電流制御タスクＴＳ２１、第１モータＭＧ１のインバータ５７ａを駆動するスイッチング制御信号ＰＷを生成する第１電圧制御タスクＴＳ３１が実行され、完了される。同様に、制御周期ＴＣに含まれる他方の演算区間ＴＵ２において、第２モータＭＧ２に流れる電流を検出する第２電流検出タスクＴＳ１２、第２モータＭＧ２に対する電流制御演算を行う第２電流制御タスクＴＳ２２、第２モータＭＧ２のインバータ５７ｂを駆動するスイッチング制御信号ＰＷを生成する第２電圧制御タスクＴＳ３２が実行され、完了される。タスク管理部１０は、これら各タスクを管理し、適切なタイミングで各タスクを実行させる機能部である。
【００３５】
尚、タスクは各モータＭについて３種類ではなく、他のタスクも存在するが、ここでは、説明を容易にするために、上記３種類を例示している。例えば、トルク制御部１０を中核として実施される目標トルクの演算や、回転状態演算部９を中核として実施される角速度ωや電気角θの演算などは省略している。また、以下の説明においては、第１モータＭＧ１と第２モータＭＧ２とを区別する必要が無い限り、各タスクを共通して、電流検出タスクＴＳ１、電流制御タスクＴＳ２、電圧制御タスクＴＳ３と称する。
【００３６】
上述したように、制御周期ＴＣと基準区間ＴＲとを適切に設定することによって、１つのマイクロコンピュータなど、単一の演算装置をタイムシェアリングして、複数のモータＭを制御することが可能である。つまり、タスク管理部１は、Ｎ個（ここでは２個）のモータＭのそれぞれに対する電流フィードバック制御を重複することなく順次実行させると共に、Ｎ個のモータＭの電流フィードバック制御を所定の制御周期ＴＣ内で完了させる。
【００３７】
ところで、第１モータＭＧ１及び第２モータＭＧ２が、同一のキャリアＣＷ（又は同一波形のキャリアＣＷ）を基準として制御されると、同一のキャリアＣＷを用いてスイッチング制御信号ＰＷが生成されることになる。このため、スイッチング制御信号ＰＷの基本周波数がほぼ同一の周波数となる。パルス波形であるスイッチング制御信号ＰＷに起因して生じる高周波数のノイズ（インバータノイズ）は、この基本周波数の高調波成分である。従って、複数のモータＭのスイッチング制御信号ＰＷの基本周波数がほぼ同一の周波数であると、高周波数のノイズが特定の周波数に集中することになり、ノイズのエネルギーが高くなってしまう。本実施形態においては、このように特定の周波数にノイズが集中することがないように、スイッチング制御信号ＰＷの基本周波数を所定の範囲内で変動させ、高調波成分の周波数も分散するようにキャリアＣＷを変動させる。
【００３８】
図５は、スイッチング制御信号ＰＷの基本周波数を所定の範囲内で変動させるためにキャリアＣＷの変化点（ピーク又はボトム）を所定の範囲内で変動させると共に、このキャリアＣＷに同期させて２つのモータをタイムシェアリング制御する比較例を示している。図５において、二点鎖線で示すキャリアＣＷは、図３と同様に対称な波形を示しており、実線で示すキャリアＣＷは、変化点を所定の変動幅ＦＲの範囲内で変動させた非対称な波形を示している。ここでは、キャリアＣＷの１周期ＴＰは、ピーク・トゥ・ピークで規定されて変動しない。キャリアＣＷのボトムのタイミングが変動することによって、キャリアＣＷの波形が変動する。つまり、キャリアＣＷのピーク・トゥ・ボトムの区間やボトム・トゥ・ピークの区間が、キャリアＣＷの波形を変動させる際の基準区間ＴＲとして設定される。そして、この基準区間ＴＲが所定の範囲内で変動されることによって、キャリアＣＷの波形が変動する。
【００３９】
例えば、図５の左側の波形に示すようにボトムの変化タイミングを変動させることによって、基準区間ＴＲの長さが変動する。この長さは、所定の変動幅ＦＲの範囲内でランダムに設定される。例えば、ＣＰＵ５１にリミッタ付きの乱数発生器を備えることによって、ランダムに変動幅ＦＲを設定可能なキャリア生成部５を容易に実現可能である。キャリアＣＷの１周期ＴＰがピーク・トゥ・ピークで規定される場合、ピーク・トゥ・ボトムの区間の変動幅を、ボトム・トゥ・ピークの区間において逆に変動させることによってキャリアＣＷの１周期ＴＰの長さを維持することができる。
【００４０】
例えば、キャリアＣＷの１周期ＴＰの長さが２００μｓの場合に、ランダムな変動幅ＦＲを与えられて設定されるピーク・トゥ・ボトムの区間の長さが１２０μｓであったとする。つまり、半周期ＨＴＰに対して＋２０μｓの増分があった場合、この区間に続くボトム・トゥ・ピークの区間の長さは、半周期ＨＴＰに対して−２０μｓの増分を与えて（２０μｓの減少分を与えて）８０μｓとされる。これによって、キャリアＣＷの１周期ＴＰの長さを固定値の２００μｓに維持しつつ、キャリアＣＷの波形を変動させることができる。あるいは、ランダムな変動幅ＦＲを与えられて設定されるピーク・トゥ・ボトムの区間の長さが１２０μｓであった場合、固定値の２００μｓからこの１２０μｓを減算して当該の区間に続くボトム・トゥ・ピークの区間の長さ８０μｓを設定してもよい。このように、キャリア生成部５は、キャリアＣＷの周期を維持しながら、スイッチング制御信号ＰＷの基本周波数を所定の範囲内で変動させてキャリアＣＷを生成することができる。
【００４１】
尚、図５に示す例では、キャリアＣＷのピーク・トゥ・ボトムの区間に第１モータＭＧ１の演算区間ＴＵ１（第１演算区間）が設定され、キャリアＣＷのボトム・トゥ・ピークの区間に第２モータＭＧ２の演算区間ＴＵ２（第１演算区間）が設定されている。上述したように、ピーク・トゥ・ピークで規定されるキャリアＣＷの１周期ＴＰの周期中のボトムのタイミングを変動させてキャリアＣＷの波形を変動させている。このため、演算区間ＴＵ１，ＴＵ２の長さもキャリアＣＷの波形に伴って変動することになる。従って、キャリアＣＷの半周期ＨＴＰと、各モータＭにおける最大の演算時間との差によって規定される余裕時間を基準として基準区間ＴＲを変動させる所定の変動幅ＦＲが設定されると好ましい。具体的には、図５において「ＦＲ／２」で示される増減幅が余裕時間以下となるように基準区間ＴＲを変動させる所定の変動幅ＦＲが設定されると好ましい。これにより、基準区間ＴＲの変動により、演算区間ＴＵが変動しても、各モータＭの電流フィードバック制御に必要な演算時間が確実に確保される。
【００４２】
しかしながら、この余裕時間が少ない場合には、設定可能な変動幅ＦＲも小さくなり、ノイズの抑制効果も小さくなってしまう。従って、第１モータＭＧ１と第２モータＭＧ２とにおいて、それぞれ個別のキャリアＣＷを用いることによって、各モータＭの演算区間ＴＵの長さを固定して、より高いノイズの抑制効果を奏しつつ、安定した制御を実現することが可能である。図６及び図７は、そのような個別のキャリアＣＷを用いることによって、各モータＭの演算区間ＴＵ１，ＴＵ２の長さをそれぞれ固定した場合の例を示している。特に、図６では、各モータＭの演算区間ＴＵ１，ＴＵ２の長さを同一の長さとした場合を例示している。
【００４３】
図６に示すように、第１モータＭＧ１のキャリアＣＷ１（第１キャリア）の１周期ＴＰは、ピーク・トゥ・ピークであり、ボトムの変化点が変動することによって基準区間ＴＲ１の長さが変化する。第２モータＭＧ２のキャリアＣＷ２（第２キャリア）の１周期ＴＰは、ボトム・トゥ・ボトムであり、ピークの変化点が変動することによって基準区間ＴＲ１の長さが変化する。両キャリアＣＷ１及びＣＷ２の１周期ＴＰは同一の長さである。両キャリアＣＷ１及びＣＷ２は、第１モータＭＧ１のキャリアＣＷ１のピークと第２モータＭＧ２のキャリアＣＷ２のボトムとは、互いに半周期ＨＴＰずれた状態で同期している。つまり、第１モータＭＧ１のキャリアＣＷ１のピークと第２モータＭＧ２のキャリアＣＷ２のボトムとは、等間隔に現れる。
【００４４】
第１モータＭＧ１の演算区間ＴＵ１（第１演算区間）は、第１モータＭＧ１のキャリアＣＷ１のピークに同期して設定されており、第２モータＭＧ２の演算区間ＴＵ２（第２演算区間）は、第２モータＭＧ２のキャリアＣＷ２のボトムに同期して設定されている。より具体的には、第１モータＭＧ１の演算区間ＴＵ１は、第１モータＭＧ１のキャリアＣＷ１のピークから第２モータＭＧ２のキャリアＣＷ２のボトムまでの区間に設定されている。また、第２モータＭＧ２の演算区間ＴＵ２は、第２モータＭＧ２のキャリアＣＷ２のピークから第２モータＭＧ２のキャリアＣＷ２のボトムまでの区間に設定されている。両キャリアＣＷ１及びＣＷ２は上述したように同期しており、第１モータＭＧ１のキャリアＣＷ１のピークと第２モータＭＧ２のキャリアＣＷ２のボトムとは等間隔であるから、両演算区間ＴＵ１，ＴＵ２は、同じ長さとなる。つまり、各キャリアＣＷ１，ＣＷ２の基準区間ＴＲ１，ＴＲ２が変動しても、両演算区間ＴＵ１，ＴＵ２は、固定された長さとなり、本例では共に同じ長さとなる。
【００４５】
例えば、キャリアＣＷ１，ＣＷ２の１周期ＴＰの長さを２００μｓとする。キャリア生成部５は、ランダムな変動幅ＦＲを与えられて設定されるキャリアＣＷ１のピーク・トゥ・ボトムの区間の長さを例えば１２０μｓに設定し、１２０μｓかけてキャリアＣＷ１をピークからボトムへ変移させる。キャリア生成部５は、ランダムな変動幅ＦＲを与えられて設定されるキャリアＣＷ２のボトム・トゥ・ピークの区間の長さを例えば１３０μｓに設定し、キャリアＣＷ１のピークから１００μｓ後に、キャリアＣＷ２をボトムからピークへ、１３０μｓかけて変移させる。図５を参照して上述したように、キャリアＣＷ１のボトム・トゥ・ピークの区間の長さは、８０μｓ（＝２００−１２０）に設定される。キャリア生成部５は、キャリアＣＷ１のピークから１２０μｓ後に、キャリアＣＷ１をボトムからピークへ、８０μｓかけて変移させる。同様に、キャリアＣＷ２のピーク・トゥ・ボトムの区間の長さは７０μｓ（＝２００−１３０）となる。キャリア生成部５は、キャリアＣＷ２のボトムから１３０μｓ後（キャリアＣＷ１のピークから２３０μｓ後）に、キャリアＣＷ２をピークからボトムへ、７０μｓかけて変移させる。
【００４６】
ここで、各キャリアＣＷ１，ＣＷ２において、それぞれ基準区間ＴＲ１，ＴＲ２をモータＭの個数分（ここでは２個分）含む区間を管理区間ＴＭと規定する。後述するように、図６に例示する形態では、キャリアＣＷの１周期ＴＰと、管理区間ＴＭとの長さが一致している。従って、上述した具体例では、キャリア生成部５によるランダムな波形の変動が、キャリアＣＷの１周期ＴＰの長さを基準として管理される形態をもって説明した。しかし、キャリア生成部５によるランダムな波形の変動は、基準区間ＴＲをモータＭの個数分含む管理区間ＴＭの長さを基準として管理される。例えば、図８を参照して後述するように、モータＭが３個の場合には、キャリアＣＷの１周期ＴＰの長さと、管理区間ＴＭの長さとが異なる。ランダムに変動する基準区間ＴＲの長さが、管理区間ＴＭを基準として規定されることの意義は、図８を参照して後述する説明により明らかとなるので、ここでは詳細な例示は省略する。
【００４７】
第１モータＭＧ１のキャリアＣＷ１の管理区間ＴＭ１（第１管理区間）は、２つの基準区間ＴＲ１（第１基準区間）を含むピーク・トゥ・ピークの区間に設定される。また、第２モータＭＧ２のキャリアＣＷ２の管理区間ＴＭ２（第２管理区間）は、２つの基準区間ＴＲ２（第２基準区間）を含むボトム・トゥ・ボトムの区間に設定される。上述したように、キャリアＣＷ１の１周期ＴＰは、ピーク・トゥ・ピークの区間において規定され、キャリアＣＷ２の１周期ＴＰは、ボトム・トゥ・ボトムの区間において規定されている。従って、各管理区間ＴＭ１，ＴＭ２と、各キャリアＣＷ１，ＣＷ２の１周期ＴＰとは同じ長さとなる。当然ながら、両管理区間ＴＭ１，ＴＭ２の長さは同一である。また、両管理区間ＴＭ１，ＴＭ２は、互いに開始タイミングが一致することがないように設定されている。図６に示す例では、両管理区間ＴＭ１，ＴＭ２は、開始タイミングを互いに等間隔ずらして設定されている。
【００４８】
図６に示すように、管理区間ＴＭ１，ＴＭ２には、両モータＭＧ１，ＭＧ２のそれぞれの演算区間ＴＵ１，ＴＵ２が含まれている。より具体的には、第１モータＭＧ１の管理区間ＴＭ１は、先頭の第１モータＭＧ１の演算区間ＴＵ１に続いて第２モータＭＧ２の演算区間ＴＵ２を含んで設定されている。また、第２モータＭＧ２の管理区間ＴＭ２は、先頭の第２モータＭＧ２の演算区間ＴＵ２に続いて第１モータＭＧ１の演算区間ＴＵ１を含んで設定されている。つまり、両管理区間ＴＭ１，ＴＭ２は、Ｎ個（ここでは２個）のモータＭのそれぞれに対応する電流フィードバック制御が重複することなく順次実行され、当該Ｎ個のモータＭの電流フィードバック制御が完了される区間に相当する。つまり、両管理区間ＴＭ１，ＴＭ２の長さは、タスク管理部１により、複数のモータＭの電流フィードバック制御が完了させられる制御周期ＴＣの長さに一致するように設定されている。
【００４９】
図６に例示した態様では、各モータＭＧ１，ＭＧ２の管理区間ＴＭ１、ＴＭ２の先頭にそれぞれの演算区間ＴＵ１，ＴＵ２が含まれる例を示した。このように、各モータＭの管理区間ＴＭの先頭に各モータＭの演算区間ＴＵを含むようにすると、各モータＭのキャリアＣＷに同期させたタスク管理も容易となり好適である。しかし、管理区間ＴＭに含まれる演算区間ＴＵの順序は、この例に限定されるものではない。
【００５０】
上述したように、２つのモータＭ（ＭＧ１，ＭＧ２）のそれぞれに対応付けられた２個のインバータ５７（５７ａ，５７ｂ）を、キャリアＣＷを用いたパルス幅変調方式により生成されたスイッチング制御信号ＰＷにより制御して、２つのモータＭ（ＭＧ１，ＭＧ２）の電流フィードバック制御を行う制御装置１００は、以下のように構成することができる。タスク管理部１は、２個のモータＭ（ＭＧ１，ＭＧ２）のそれぞれに対する電流フィードバック制御をそれぞれの演算区間ＴＵ（ＴＵ１，ＴＵ２）を重複させることなく順次実行させると共に、２個のモータＭ（ＭＧ１，ＭＧ２）の電流フィードバック制御を所定の制御周期ＣＰ内で完了させるタスク管理を行う。キャリア生成部５は、２個のインバータ５７（５７ａ，５７ｂ）のそれぞれに対応するキャリアＣＷ（ＣＷ１，ＣＷ２）の基準区間ＴＲ（ＴＲ１，ＴＲ２）の長さを所定の変動幅ＦＲの範囲内でランダムに変動させて、２個のキャリアＣＷ１，ＣＷ２を生成する。この際、キャリア生成部５は、２個のキャリアＣＷ１，ＣＷ２のそれぞれに対して互いに開始タイミングが一致することがないように管理区間ＴＭ（ＴＭ１，ＴＭ２）を設定する。さらに、キャリア生成部５は、これら管理区間ＴＭ１，ＴＭ２のそれぞれが２個の基準区間ＴＲ１，ＴＲ２を含むと共に、管理区間ＴＭ１，ＴＭ２のそれぞれの長さが制御周期ＣＰに一致するように、それぞれのキャリアＣＷ１，ＣＷ２を生成する。
【００５１】
図６に示した例においては、さらに、キャリア生成部５は、２個のモータＭ（ＭＧ１，ＭＧ２）のそれぞれに対応する２個の管理区間ＴＭ１，ＴＭ２のそれぞれを、互いに等間隔ずらして設定する。これによって、２個のモータＭ（ＭＧ１，ＭＧ２）の演算区間ＴＵ（ＴＵ１，ＴＵ２）が同一の長さとなるから、複数のモータＭを１つの演算装置（ＣＰＵなど）を用いて制御する際の動作が安定し、また、プログラム等の設計も容易となる。
【００５２】
尚、図５を参照して上述したように、各モータＭの１回の電流フィードバック制御に必要な最大の演算時間が確保されるのであれば、必ずしも、２個の管理区間ＴＭ１，ＴＭ２が互いに等間隔ずらして設定され、２個のモータＭＧ１，ＭＧ２の演算区間ＴＵ１，ＴＵ２が同一の長さに設定される必要はない。つまり、図７に例示するように、２個のモータＭＧ１，ＭＧ２の演算区間ＴＵ１，ＴＵ２が異なる長さに設定されてもよい。例えば、２つのモータＭが仕様の異なるモータであって、電流フィードバック制御に要する演算時間が異なるような場合に、演算時間の余裕時間が均等となるように演算区間ＴＵ１，ＴＵ２を異なる長さに設定することは好適な態様である。換言すれば、各キャリアＣＷの管理区間ＴＭは、少なくとも演算区間ＴＵ以上の間隔を空けて設定されていればよい。当然ながら、２つのモータＭの仕様が均等であって、電流フィードバック制御に要する演算時間も均等であっても、演算区間ＴＵ１，ＴＵ２が異なる長さに設定されることを妨げるものではない。少なくとも演算区間ＴＵ１，ＴＵ２の長さは固定されることによって、制御の安定性は担保される。
【００５３】
上述した各態様では、モータＭの個数Ｎが２の場合について説明した。しかし、モータＭの個数Ｎは、３以上の任意の自然数であってもよい。図８は、モータＭの個数Ｎが３の場合の各モータＭの演算区間ＴＵ（ＴＵ１，ＴＵ２，ＴＵ３）、管理区間ＴＭ（ＴＭ１，ＴＭ２，ＴＭ３）、制御周期ＴＣ、及び各モータＭの電流フィードバック制御のタスクＴＳ１（ＴＳ１１，ＴＳ１２，ＴＳ１３）、ＴＳ２（ＴＳ２１，ＴＳ２２，ＴＳ２３）、ＴＳ３（ＴＳ３１，ＴＳ３２，ＴＳ３３）を示している。キャリアＣＷ１は第１モータＭＧ１のキャリアを示しており、キャリアＣＷ２は第２モータＭＧ２のキャリアを示しており、キャリアＣＷ３（第３キャリア）は第３モータ（不図示）のキャリアを示している。各キャリアＣＷ１，ＣＷ２，ＣＷ３は、ピーク・トゥ・ボトム又はボトム・トゥ・ピークを基準区間ＴＲとして、３つ分（Ｎ個分）の基準区間ＴＲを含む区間が管理区間ＴＭ（ＴＭ１，ＴＭ２，ＴＭ３）となるように生成されている。本形態では、各管理区間ＴＭは、それぞれ等間隔（半周期ＨＴＰ）ずらして設定されているが、図７に例示したように、異なる間隔で設定されていてもよい。
【００５４】
各キャリアＣＷの管理区間ＴＭは、ピーク又はボトムを開始タイミングの基準として、３つ先の変化点までの区間（波形上の１．５周期）に設定されている。キャリア生成部５は、例えば、ピークが開始タイミングであった場合には、３つの基準区間ＴＲのうちの最初の基準区間ＴＲの長さを所定の変動幅の範囲内でランダムに変化させることによって次の変化点であるボトムの変化タイミングを変動させる。続いて、キャリア生成部５は、次の基準区間ＴＲの長さを所定の変動幅の範囲内でランダムに変化させることによって次の変化点であるピークの変化タイミングを変動させる。最後に、キャリア生成部５は、これら２つの基準区間ＴＲの変動幅の増減方向を加味した合計値を、当該合計値の増減方向とは逆方向に変動させて３つめの基準区間ＴＲの長さを決定し、次の変化点であるボトムの変化タイミングを決定する。このボトムの変化タイミングは、次の管理区間ＴＭの開始タイミングとなり、以降これを繰り返すことによって一定の長さの管理区間ＴＭが設定される。
【００５５】
具体例を挙げて補足する。例えば、キャリアＣＷ（ＣＷ１，ＣＷ２，ＣＷ３）の管理区間ＴＭの長さが３００μｓとする。上述したように、本形態では管理区間ＴＭは、キャリア波形の１．５周期分に相当するから、管理区間ＴＭの長さが固定されることによって、キャリアＣＷの周波数は、ほぼ一定の周波数に維持される。本形態では、モータＭの個数が３つであるから、管理区間ＴＭには、３つの基準区間ＴＲが含まれる。最初の基準区間ＴＲ、及びこれに続く２つ目の基準区間ＴＲの長さは所定の変動幅ＦＲの範囲内で、ランダムに設定される。例えば、最初の基準区間ＴＲの長さが１２０μｓであり、２つ目の基準区間ＴＲの長さが９０μｓであったとする。管理区間ＴＭを３等分すれば、１つの基準区間ＴＲの基準値は１００μｓであるから、最初の基準区間ＴＲにおいて「＋２０μｓ」、２つ目の基準区間ＴＲにおいて「−１０μｓ」の変動があったことになり、増減方向を加味した変動幅の合計値は「＋１０μｓ」である。キャリア生成部５は、この合計値の増減方向とは逆方向の「−１０μｓ」の変動を与えて、３つ目の基準区間ＴＲを９０μｓと設定する。あるいは、キャリア生成部５は、管理区間ＴＭの長さである３００μｓから、２つの基準区間ＴＲの合計値「２１０μｓ」を減算して、３つ目の基準区間ＴＲを９０μｓと設定する。キャリアＣＷ同士の同期の取り方については、図６を参照して上述した説明より、容易に理解可能であるから詳細な説明は省略する。
【００５６】
このように、モータＭの個数Ｎが３であっても、個数Ｎが２の場合と同様に各モータＭに対して個別にキャリアＣＷを設定することが可能である。また、Ｎ＝４，６，８・・・と、モータＭの個数が偶数の場合には、当業者であれば、上述したＮ＝２の場合の態様を参考にして容易に個別のキャリアＣＷを生成可能であるから詳細な説明は省略する。また、Ｎ＝５，７，９・・・と、モータＭの個数が奇数の場合も、当業者であれば、上述したＮ＝３の場合の態様を参考にして容易に個別のキャリアＣＷを生成可能であるから詳細な説明は省略する。これらの説明により、Ｎが２以上の自然数であるＮ個のモータＭのそれぞれに対応づけられたＮ個のインバータ５７を、キャリアＣＷを用いたパルス幅変調方式により生成されたスイッチング制御信号により制御して、当該Ｎ個のモータＭの電流フィードバック制御を行う制御装置１００を実現可能であることが明らかである。
【００５７】
図９は、タスクの実行タイミングのバリエーションを示している。図９（ａ）は、図４〜図８と同様に、各モータＭの演算区間ＴＵの開始と共に電流検出タスクＴＳ１が実行される例を示している。後続の電流制御タスクＴＳ２の実行には実際にモータＭを流れる電流の検出が必要であり、演算区間ＴＵを有効に活用するためには、演算区間ＴＵの始めに電流検出タスクＴＳ１が実行されることが好ましい。しかし、電流検出タスクＴＳ１の実行タイミングは、演算区間ＴＵの開始に限定されるものではない。図９（ｂ）は、タスク管理部１が、電流検出タスクＴＳ１を、それぞれのモータＭに対応する演算区間ＴＵの開始を基準とする所定のタイミングで実行させる、つまり、開始から所定の期間Ｔ１後に実行させる。このように、所定の期間Ｔ１をおいて電流検出タスクＴＳ１が実行される場合には、当該期間において図９（ｃ）に示すように、他のタスクＴＳ０が実行されてもよい。ここで、他のタスクＴＳ０とは、例えば、トルク制御部１０を中核として実施される目標トルクの演算や、回転状態演算部９を中核として実施される角速度ωや電気角θの演算などとすることができる。
【００５８】
尚、上述したように、各モータＭに対応する演算区間ＴＵは、各管理区間ＴＭの先頭に設定されていると好適である。この場合には、電流検出タスクＴＳ１は、それぞれのモータＭに対応する管理区間ＴＭの開始を基準とする所定のタイミングで実行される。図６〜図８に例示したように、管理区間ＴＭの開始タイミングは、キャリアＣＷの波形がピーク又はボトムとなるタイミングであると、波形の生成が容易でもあり好適である。そして、キャリアＣＷの波形がピーク又はボトムであるタイミングでは、ＰＷＭの原理から、スイッチング制御信号ＰＷのパルスの変化点と重なる可能性が低い。従って、インバータ５７がスイッチングしてモータＭに流れる電流が変化する過渡状態となる可能性が低く、当該電流が安定している可能性が高くなる。従って、管理区間ＴＭの最初に電流検出タスクＴＳ１が実行されると、高い精度でモータＭに流れる電流を検出できて好適である。
【００５９】
以上説明したように、本発明によって、複数の交流回転電機の電流フィードバック制御を順次実施する際に、各交流回転電機に対応するパルス幅変調のキャリアの波形を個別に変動させると共に、各交流回転電機に対応する当該キャリアと各交流回転電機に対する電流フィードバック制御の実行タイミングとを同期させ、且つ、所定の制御周期内で全ての交流回転電機の電流フィードバック制御を完了させることが可能となる。
【産業上の利用可能性】
【００６０】
本発明は、Ｎ個（Ｎは２以上の自然数）の交流回転電機のそれぞれに対応付けられたＮ個のインバータを、キャリアを用いたパルス幅変調方式により生成されたスイッチング制御信号により制御して、当該Ｎ個の交流回転電機の電流フィードバック制御を行う回転電機制御装置に利用することができる。
【符号の説明】
【００６１】
１：タスク管理部
５：キャリア生成部
５７，５７ａ，５７ｂ：インバータ
１００：制御装置（回転電機制御装置）
ＣＰ：制御周期
ＣＷ、ＣＷ１，ＣＷ２，ＣＷ３：キャリア
ＦＲ：所定の変動幅
Ｍ：モータ（交流回転電機）
ＭＧ１：第１モータ
ＭＧ２：第２モータ
ＰＷ：スイッチング制御信号
ＴＣ：制御周期
ＴＭ，ＴＭ１，ＴＭ２：管理区間
ＴＰ：キャリアの１周期
ＴＲ，ＴＲ１，ＴＲ２：基準区間
ＴＳ１：電流検出タスク
ＴＳ１１：第１電流検出タスク（電流検出タスク）
ＴＳ１２：第２電流検出タスク（電流検出タスク）
ＴＵ、ＴＵ１，ＴＵ２：演算区間
【図１】
0005549887.tif 000002
【図２】
0005549887.tif 000003
【図３】
0005549887.tif 000004
【図４】
0005549887.tif 000005
【図５】
0005549887.tif 000006
【図６】
0005549887.tif 000007
【図７】
0005549887.tif 000008
【図８】
0005549887.tif 000009
【図９】
0005549887.tif 000010