(57)【特許請求の範囲】
【請求項１】
１つのディジタル演算手段を用いて複数ｍ個の電動機の電流フィードバック制御を共通に行う電動機の駆動制御装置において、
前記各電動機に流れる電流をフィードバック制御する電流フィードバック制御演算を各電動機毎に異なるタイミングで所定周期で行い、
前記電流フィードバック制御演算の演算結果を出力するディジタル出力を各電動機毎に所定周期で行い、
前記電流フィードバック制御の演算周期を前記ディジタル出力の出力周期の整数ｎ倍とし、
かつ、各電動機についての電流フィードバック制御演算周期と同一時間内に出力されるｎ個のディジタル出力の各々について、各電動機における現在角の読み込みタイミングから各ディジタル出力までの遅れ時間に相当する補正を行う角度補正演算を、各電動機の電流フィードバック演算周期内にまとめて行うように構成したことを特徴とする電動機の駆動制御装置。
【請求項２】
ｍ個の電動機の各々に対する電流読み込み、次期電圧指令演算、ディジタル出力の一連の処理を、互いにずらして実行するように構成したことを特徴とする請求項１に記載の電動機の駆動制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電動機の駆動制御装置に関し、特にディジタルサーボ制御を用いて直流電源から可変周波数、可変電圧の交流を出力して複数の交流電動機を駆動する駆動制御装置に関する。
【０００２】
【従来の技術】
ディジタルサーボ制御を用いて直流電源から可変周波数、可変電圧の交流を出力して交流電動機を駆動する駆動制御装置は、一般的に電流フィードバック演算手段にマイクロコンピュータ等を用いて離散系の演算処理を行っている。従来の駆動制御装置では電動機を高速回転領域まで制御性よく駆動するため、例えば特開平９−４７０６５号公報に記載されるように、一般的に離散系演算処理の演算周期として１００μｓｅｃ程度の高速な演算処理を適用するとともに、離散化演算による制御無駄時間の影響を補償するなどして遅れ時間を極力小さくしている。更に、複数の電動機を高速回転領域まで制御性よく独立に駆動制御するためには、上記の理由により各々の電動機に対して独立に１００μｓｅｃ程度の高速な電流フィードバック演算を行うことが必要である。
【０００３】
【発明が解決しようとする課題】
上記のような従来の技術によって複数の電動機を電流フィードバック制御する電流サーボ装置においては、例えば、１００μｓｅｃ程度の演算周期毎に、複数の電動機各々に対する次期指令電圧演算や角度補正演算を行う電流制御演算時間が必要なので演算負荷が極めて重くなる。そのため相応の処理能力を有するマイクロコンピュータ等のディジタル演算器を、複数の電動機各々に対して少なくとも１以上配置する必要があった。一例として複数の３相同期電動機をベクトル電流フィードバックで制御した場合、３２ｂｉｔＲＩＳＣマイクロコンピュータを用いて演算すると、アセンブラ使用時で約７割程度の演算負荷を占有するため、少なくとも２以上の複数の電動機を１つのマイクロコンピュータで駆動制御すると、当該マイクロコンピュータの電流フィードバック演算が一制御周期内に納まらず、演算が破綻してしまう。そのため、各々の電動機に対してそれぞれ専用のマイクロコンピュータを配する必要があるのでコンピュータ数が増大するという問題があった。このように従来技術による複数の電動機を駆動する駆動制御装置においては、一般的な電動機の駆動用マイクロコンピュータを用いた場合には、駆動装置の小型化や低価格化の阻害要因となっていた。
【０００４】
また、複数の電動機の駆動制御装置に対して現有する高速モータ制御マイクロコンピュータを適用し、高々２個の電動機の駆動制御をさせた場合でも、高速回転域まで対応する為に１００μｓｅｃの演算周期を設定すると、該周期内に電流フィードバック演算の演算時間が間に合わず、演算が破綻してしまうという問題があった。たとえば高性能の３２ｂｉｔＲＩＳＣマイクロコンピュータを用いた場合でも、１つの電動機あたりの演算負荷が約５割程度あり、２つの電動機を駆動制御した場合には１００μｓｅｃに納まらなくなり制御不能であった。
【０００５】
また、高速回転域での性能及び電流応答特性を制約し、演算周期を延長した上で１つのマイクロコンピュータで複数ｍ個の電動機を駆動制御する場合においても電流取り込み時間の同時性を確保するため、ｍ個の電動機のうちのｋ番めの電動機に流れる３相電流ｉｕ（ｋ）、ｉｖ（ｋ）、ｉｗ（ｋ）のうちの任意の２相分の電流を同時に取り込む必要がある。そのため制御周期毎のアナログ／ディジタル（以下、Ａ／Ｄと略記）取り込みタイミングが規定されるとＡ／Ｄ変換器は２×ｍ個の入力を必要とし、Ａ／Ｄ入力ポートが不足するという問題があった。
【０００６】
本発明は上記ごとき問題を解決するためになされたものであり、本発明の一つの目的は演算負荷を軽減して処理能力の低い演算装置でも複数の電動機を制御できる電動機の駆動制御装置を提供することであり、本発明の他の目的は多くのＡ／Ｄ入力ポートを必要としない電動機の駆動制御装置を提供することである。
【０００７】
【課題を解決するための手段】
上記の目的を達成するため、本発明においては特許請求の範囲に記載するように構成している。すなわち、請求項１においては、１つのディジタル演算手段（例えばマイクロコンピュータ）を用いて複数ｍ個の電動機の電流フィードバック制御を共通に行う電動機の駆動制御装置において、前記各電動機に流れる電流をフィードバック制御する電流フィードバック制御演算を各電動機毎に異なるタイミングで所定周期で行い、前記電流フィードバック制御演算の演算結果を出力するディジタル出力を各電動機毎に所定周期で行い、前記電流フィードバック制御の演算周期を前記ディジタル出力の出力周期の整数ｎ倍とし、かつ、各電動機についての電流フィードバック制御演算周期と同一時間内に出力されるｎ個のディジタル出力の各々について、各電動機における現在角の読み込みタイミングから各ディジタル出力までの遅れ時間に相当する補正を行う角度補正演算を、各電動機の電流フィードバック演算周期内にまとめて行うように構成している。
【０００８】
また、請求項２においては、請求項１において、前記ｍ個の電動機の各々に対する電流読み込み、次期（次の演算周期）電圧指令演算、ディジタル出力の一連の処理を、互いにずらして実行するように構成している。
【００１０】
【発明の効果】
請求項１においては、電流フィードバック演算手段において負荷の重い電流フィードバック演算をＰＷＭ等のディジタル出力周期のｎ倍の長い演算周期で行うことによって演算負荷を大幅に軽減した上で、互いに異なるタイミングで演算させることにより、演算負荷の時間的な分散が可能となる。これにより、より低級な処理能力を有するマイクロコンピュータを用いても、演算が破綻することなく実行可能となるため、マイクロコンピュータの低価格化が可能になる、という効果がある。
さらに、各電動機についての電流フィードバック制御演算周期と同一時間内に出力されるｎ個のＰＷＭ等のディジタル出力の各々について、各電動機における現在角の読み込みタイミングから各ディジタル出力までの遅れ時間に相当する補正を行う角度補正演算を、各々の電動機の電流フィードバック演算周期内にまとめて行うことにより、あたかもＰＷＭ等のディジタル出力の出力周期毎に電流フィードバック演算を行っているかの如く滑らかなＰＷＭ等ディジタル出力が可能になる、という効果がある。
【００１１】
また、請求項２においては、ｍ個の電動機に対する電流取り込み時間を互いにずらして実行することにより、同時に取り込みを行う電流は、ｋ番めの電動機を流れる３相電流ｉｕ（ｋ）、ｉｖ（ｋ）、ｉｗ（ｋ）のうちの任意の２相分の電流のみとなり、同時取り込み可能な２チャネルのＡ／Ｄ入力ポートにより処理が可能となる。これにより、マイクロコンピュータは多チャネルの同時アナログポートを必要とせず、通常のモータ制御マイクロコンピュータが有する２チャネルのみの同時アナログポートのみで処理が可能になる、という効果がある。
【００１３】
【発明の実施の形態】
図１は本発明の一実施例の構成を示すブロック図であり、２台の電動機ＡとＢを制御する場合を示す。
図１において、電動機Ａ１０１は例えば同期電動機であり、ＰＷＭ化電力変換部Ａ１０４（例えばインバータ回路）の出力によって駆動される。回転角検出器Ａ１０２（例えばレゾルバやエンコーダ等）は電動機Ａ１０１の回転角度を検出し、その結果を現在角θｒｅ演算ブロックＡ１１１へ送る。電流センサＡ１０３はＰＷＭ化電力変換部Ａ１０４から電動機Ａ１０１のｕ、ｖ、ｗの各相に流れる電流を検出する。同様に、電動機Ｂ１２１側においても、回転角検出器Ｂ１２２、電流センサＢ１２３、ＰＷＭ化電力変換部Ｂ１２４、現在角θｒｅ演算ブロックＢ１２５が、上記と同様に、電動機Ｂ１２１についての検出と各演算を行う。
【００１４】
電流制御演算ブロック１０５は外部から与えられた電流指令値ｉｑ＊Ａ、ｉｄ＊Ａおよびｉｑ＊Ｂ、ｉｄ＊Ｂ（例えばアクセルペダルの開度と回転速度に応じて決定される値）と実際の動作から求められた２相電流ｉｑＡ、ｉｄＡおよびｉｑＢ、ｉｄＢとの偏差に基づいて電圧指令値ｖｄ’＊Ａ、ｖｑ’＊Ａおよびｖｄ’＊Ｂ、ｖｑ’＊Ｂを算出する。非干渉演算ブロック１０６は干渉項の補正を行って２相電圧指令値ｖｄ＊Ａ、ｖｑ＊Ａおよびｖｄ＊Ｂ、ｖｑ＊Ｂを算出する。２相→３相変換ブロック１０７（図では２相→３相を２φ→３φと略記している）は軸変換を行って３相電圧指令値ｖｕ＊Ａ、ｖｖ＊Ａ、ｖｗ＊Ａおよびｖｕ＊Ｂ、ｖｖ＊Ｂ、ｖｗ＊Ｂを出力する。その出力でＰＷＭ化電力変換部Ａ１０４およびＰＷＭ化電力変換部Ｂ１２４を駆動する。ＰＷＭ化電力変換部Ａ１０４およびＰＷＭ化電力変換部Ｂ１２４は例えばＰＷＭ信号発生部とインバータ回路とからなり、三角波と３相電圧指令値とを比較することによってＰＷＭ信号を作成し、それによってインバータ回路を駆動して電動機Ａ１０１および電動機Ｂ１２１へ必要な電流を供給する。
【００１５】
電流値Ａ／Ｄ変換部１０９は電流センサＡ１０３および電流センサＢ１２３で検出したアナログ電流値をディジタル値に変換する。３相→２相変換ブロック１１０は軸変換を行って３相の電流値を２相電流ｉｑＡ、ｉｄＡおよびｉｑＢ、ｉｄＢに変換し、電流制御演算ブロック１０５へ送る。現在角θｒｅ演算ブロックＡ１１１および現在角θｒｅ演算ブロックＢ１２５は、回転角検出器Ａ１０２および回転角検出器Ｂ１２２の出力に基づいて上記の軸変換に必要な現在角θｒｅＡおよび現在角θｒｅＢを算出する。θｒｅ補正演算ブロックＡ１１２およびθｒｅ補正演算ブロックＢ１２６は現在角θｒｅＡおよび現在角θｒｅＢについて制御無駄時間分の進み角補正を行う。また、ｓｉｎ・ｃｏｓ参照ブロック１１３、１１４は現在角θｒｅＡおよび現在角θｒｅＢから軸変換に必要な数値を求め、２相→３相変換ブロック１０７、３相→２相変換ブロック１１０へ送る。
なお、上記の各演算、変換ブロックは図面では分けて記載しているが、実際には共通のコンピュータ等で構成できる。また、その演算内容については詳細を後述する。
【００１６】
（実施例）
本発明の実施例として、同期電動機に代表される電動機を２台用い、図１の回転角検出器Ａ１０２および回転角検出器Ｂ１２２としてレゾルバやエンコーダ等を用いて現在角度を読み込むシステム、または誘導電動機に代表される電動機を２台用い、上記と同様の回転角度センサを用いて現在角度を読み込むか若しくは演算手段によって現在角度を算出するシステムにおいて、上記のようにして現在の電動機の回転角度を検出し、電流センサ１０３および電流センサＢ１２３を用いて電動機の相電流値を読み込み、マイクロコンピュータやＤＳＰに代表されるディジタル演算手段を用いて電流フィードバック制御演算処理を行い、得られた制御指令値によってＰＷＭ化電力変換部Ａ１０４およびＰＷＭ化電力変換部Ｂ１２４を制御することにより、電動機に電力を供給する駆動制御装置に本発明を適用した場合について説明する。
【００１７】
図２〜図４は本発明の実施例における処理手順を示すフローチャート、図５は本発明の実施例の動作を説明するための波形図、図６は実施例の割り込みタイミング毎の処理内容を示す図表である。なお、図３と図４は▲１▼の部分で接続されている。
本実施例では、図５の３２０に示す１０ｋＨｚのＰＷＭタイマ（三角波発生）を２本動作させ、例えばタイマ波形の谷のタイミングで１００μｓｅｃ毎の割り込みが発生するものとする。
【００１８】
ｋ演算周期時間内における最初の割り込み（ｉ＝０区間内）で電動機Ａ１０１を流れる３相電流のうちの任意の２相の電流値、例えばｉｕＡ、ｉｖＡを電流値Ａ／Ｄ変換器に取り込み（図５の３０９）、同時にこの時点での現在角θｒｅＡを読み込む（図３のステップ２０１、２０２）。
【００１９】
次に、該ｉ＝０の割り込み周期内に、上記ｋ制御周期内に２回出力されるＰＷＭ出力の各々の出力タイミングまでの角度補正演算２回分をまとめて行い（図３のステップ２０３）、上記３相電流を上記現在角θｒｅＡを用いて軸変換を行うことにより２相電流値ｉｑＡ、ｉｄＡを算出し（図３のステップ２０４）、電流指令値ｉｑ＊Ａ、ｉｄ＊Ａとの偏差を用いて電流制御演算（図３のステップ２０５）および非干渉演算（図３のステップ２０６）を実行し、得られた電圧指令値ｖｑ＊Ａ、ｖｄ＊Ａを先に演算しておいた２回の出力タイミングまでの補正後の角度を用いて軸変換したのちに得られた３相電圧指令値ｖｕ＊Ａ、ｖｖ＊Ａ、ｖｗ＊Ａを一旦ストアする（図３のステップ２０７：上記演算時間は図５の３１０）。
【００２０】
なお、上記の非干渉制御とは、電動機を２次磁束に直交するｑ軸成分と平行するｄ軸成分とに分離して電流制御を行うベクトル電流制御において、流れる電流とｑ軸、ｄ軸のインダクタンスおよび回転数の作用により、ｄ軸電流がｑ軸電圧として、ｑ軸電流がｄ軸電圧として相互に干渉が生じるものを、予め演算によって差し引いて打ち消す制御をいう。
【００２１】
また、ｋ制御周期時間内における第２回目の割り込み（ｉ＝１区間内）で電動機Ｂ１２１を流れる３相電流のうちの任意の２相の電流値、例えばｉｕＢ、ｉｖＢを電流値Ａ／Ｄ変換器に取り込み（図５の３１２）、同時にこの時点での現在角θｒｅＢを読み込む（図３のステップ２０８、２０９）。
【００２２】
次に、該ｉ＝０の割り込み周期内に、上記ｋ制御周期内に２回出力されるＰＷＭ出力の各々の出力タイミングまでの角度補正演算２回分をまとめて行い（図３のステップ２１０）、上記３相電流を上記現在角θｒｅＢを用いて軸変換を行うことにより２相電流値ｉｑＢ、ｉｄＢを算出し（図３のステップ２１１）、電流指令値ｉｑ＊Ｂ、ｉｄ＊Ｂとの偏差を用いて電流制御演算（図３のステップ２１２）および非干渉演算（図３のステップ２１３）を実行し、得られた電圧指令値ｖｑ＊Ｂ、ｖｄ＊Ｂを先に演算しておいた２回の出力タイミングまでの補正後の角度を用いて軸変換したのちに得られた３相電圧指令値ｖｕ＊Ｂ、ｖｖ＊Ｂ、ｖｗ＊Ｂを一旦ストアする（図３のステップ２１４：上記演算時間は図５の３１３）。
【００２３】
一方、図２に示すように、カウンタｉおよびｊは２個の電動機の制御に対応させるため、それぞれ０から１の値をとりうる整数値で、互いに１周期ずれて１ずつカウントアップされるように設定する。
先のｉ＝０の割り込み周期においては、電動機Ａ１０１への３相電圧指令値ｖｕ＊Ａ（０）、ｖｖ＊Ａ（０）、ｖｗ＊Ａ（０）および電動機Ｂ１２１への３相電圧指令値ｖｕ＊Ｂ（１）、ｖｖ＊Ｂ（１）、ｖｗ＊Ｂ（１）をロードすることにより（図４のステップ２１５）、ｋ制御周期内のｉ＝０割り込み周期内に演算された３相電圧指令値ｖｕ＊Ａ（０）、ｖｖ＊Ａ（０）、ｖｗ＊Ａ（０）とｋ−１制御周期内のｉ＝１割り込み周期内に演算された３相電圧指令値ｖｕ＊Ｂ（１）、ｖｖ＊Ｂ（１）、ｖｗ＊Ｂ（１）を取り込むことになる（図４のステップ２１６）。
この値をＰＷＭコンペアレジスタなどに書き込む（図５の３１１）ことにより、次の割り込み周期ｉ＝１のタイミングで、ＰＷＭタイマと該ＰＷＭコンペアレジスタ値とを比較するなどの処理を行い、電動機Ａ１０１へのＰＷＭ出力（図５の３１５）および電動機Ｂ１２１へのＰＷＭ出力（図５の３１７）を得ることができる。
【００２４】
また、ｉ＝１の割り込み周期においては、電動機Ａ１０１への３相電圧指令値ｖｕ＊Ａ（１）、ｖｖ＊Ａ（１）、ｖｗ＊Ａ（１）および電動機Ｂ１２１への３相電圧指令値ｖｕ＊Ｂ（０）、ｖｖ＊Ｂ（０）、ｖｗ＊Ｂ（０）をロードすることにより、ｋ制御周期内のｉ＝０割り込み周期内に演算された３相電圧指令値ｖｕ＊Ａ（１）、ｖｖ＊Ａ（１）、ｖｗ＊Ａ（１）とｋ制御周期内のｉ＝１割り込み周期内に演算された３相電圧指令値ｖｕ＊Ｂ（０）、ｖｖ＊Ｂ（０）、ｖｗ＊Ｂ（０）を取り込むことになる。
この値をＰＷＭコンペアレジスタなどに書き込む（図５の３１４）ことにより、次の割り込み周期ｉ＝１のタイミングでＰＷＭタイマと該ＰＷＭコンベアレジスタ値とを比較するなどの処理を行い、電動機Ａ１０１へのＰＷＭ出力（図５の３１６）および電動機Ｂ１２１へのＰＷＭ出力（図５の３１８）を得ることができる。
【００２５】
上記のように２個の電動機を同時に制御するような場合は、電流演算周期をＰＷＭ割り込み周期の２倍に設定し、互いに１割り込み周期ずらせて演算させ、かつ、各々の割り込み周期に出力されるＰＷＭ出力タイミングまでの制御無駄時間補正をそれぞれの電動機の制御演算に対して行うことにより、図６に示すような順序の制御が可能となる。その結果、あたかも１００μｓｅｃの割り込み周期毎にそれぞれの電動機に対して毎回独立に制御演算しているかのように、滑らか、かつ、安定な駆動制御が可能になるとともに、４入力の電流同時取り込みを２入力ずつ分散して取り込み可能となるので、Ａ／Ｄ入力ポートが少なくて済み、さらに演算負荷を１／２以下に短縮可能となる。
【００２６】
なお、本発明は、例えばシリーズハイブリッド電気自動車における走行用の電動機と発電用の電動機との制御に適用することが出来るが、これに限られるものではない。
また、実施例においては、２台の電動機を制御する場合を例示したが、３台以上の複数でもよい。その場合には、上記と同様に、電動機の数がｍ台であれば、電流フィードバック演算周期をディジタル出力の出力周期の整数ｎ倍（ｎ≧ｍ）とし、かつ、各々の電動機に対して電流フィードバック演算を互いに重ならないタイミングで行うように構成すればよい。
【００２７】
次に、２台の電動機Ａ１０１とＢ１２１の各々における制御の詳細について説明する。
図７〜図１０は、一方の電動機における処理手順を示すフローチャート、図１１は動作を説明するための波形図である。なお、それぞれの電動機における制御はタイミングが相互にずれているだけで内容は同じであるから、一方についてのみ説明する。
まず、ディジタルサーボ手段の具体的な演算処理の実現手段として、概略の手順を図７および図８に示す。なお、図７と図８は▲１▼、▲２▼の部分で接続される。この際、説明のため一例として電流フィードバック制御の条件を、ＰＷＭキャリア周波数１０ｋＨｚ（周期＝１００μｓｅｃ）、電流制御周期４００μｓｅｃとする。なお、本発明においては、ＰＷＭキャリア周波数と電流制御周期は、互いに独立に任意に設定可能である。
【００２８】
図１１の１２０４に示す１０ｋＨｚのＰＷＭタイマ（三角波発生）を動作させ、例えばタイマ波形の谷のタイミングで１００μｓｅｃ毎の割り込みが発生するとする。本実施例ではｋ演算周期の割り込み１２０５の発生により、まず、現在角θｒｅ(ｋ)（図１１の１２２８）を用いて電動機の相電流読み込み値ｉｕ(ｋ)、ｉｖ(ｋ)をｉｄ(ｋ)、ｉｑ(ｋ)に軸変換し（図７のステップ１１０６）、算出された現在の２相電流値と電流指令値をもとに電流制御演算を行い（図７のステップ１１０７）、必要に応じて非干渉制御（図７のステップ１１０８）を行った上で、ｋ制御周期目のＰＷＭ出力指令値を演算する（図８のステップ１１０９）。そしてｋ制御周期目に出力すべき４個のＰＷＭパルスの出力指令値演算を開始する。すなわち、ｋ制御周期目の最初の割り込み１２０５直後を制御周期カウンタｉ＝０としてｉｕ(ｋ)およびｉｖ(ｋ)を取り込み、Ａ／Ｄ変換を行う（図７のステップ１１０１）。また現在角θｒｅ(ｋ)を読み込み（図７のステップ１１０２）、次にｋ制御周期に出力する４個のＰＷＭのそれぞれの出力タイミングにおける補正角θ’ｒｅ(ｋ、ｊ)を一度に演算する（図７のステップ１１０３）。
【００２９】
以下、図７のステップ１１０３における補正角演算手順（ステップ１１０４、１１０５）を、図９に基づいて詳細に説明する。先ず現在角θｒｅを取り込む（図９のステップ１１２１）。そしてｋ番目の電流フィードバック演算周期とｋ番目の演算による４個のＰＷＭ出力周期とは、１ＰＷＭ周期(１０ｋＨｚ時には１００μｓｅｃ)だけ遅れることから、ＰＷＭ周期のカウンタｊは制御周期のカウンタｉに１を足してｊ＝ｉ＋１とする。これはすなわちｋ周期目の出力指令値演算は、必ずｋ周期目の出力が始まる１ＰＷＭ周期前に演算が完了していることを示す。
【００３０】
また、４個各々のＰＷＭ出力時間を算出するため、４個のＰＷＭ出力タイミングの時間平均値ＰＷＭｏｕｔ(ｋ)（図１１の１２２２）から、各ＰＷＭパルスの出力タイミングＰＷＭｏｕｔ(ｋ、ｊ)までの遅れ(進み)時間ＤＥＬＴＡ(ｋ、ｊ)（図１１の△τｄ１〜△τｄ４に相当）を下記（数１）式で演算する（図９の１１２２）。
ＤＥＬＴＡ(ｋ、ｊ)＝(１０−６／２)(２×ｊ−ｎ−１)×(ｄθｒｅ／ｄｔ)…(数１)
さらに上記時間平均値（１２２２）からの遅れ時間ＤＥＬＴＡ(ｋ、ｊ)をそれぞれ足しあわせ、かつ演算にかかる１ＰＷＭ周期１００μｓｅｃを加えることにより、現在角θｒｅを読み込むタイミングから、ｋ制御周期目の４個のＰＷＭ出力それぞれまでの遅れ時間△τｄ１〜△τｄ４を求め、この遅れ時間にｋ制御周期中の平均角速度ｄθｒｅ／ｄｔを掛け合わせ、現在角θｒｅに足しあわせることで、各々のＰＷＭ出力時間における補正後の角度θ’ｒｅ(ｋ、１)（図１１の１２３４）〜θ’ｒｅ(ｋ、４)（図１１の１２３８）を算出する（図９のステップ１１２３）。
【００３１】
この際、ＰＷＭ出力タイミングの時間平均値ＰＷＭｏｕｔ(ｋ)（図１１の１２２２）から各ＰＷＭパルス出力時間までの遅れ(進み)時間は、遅れ方向(正符号)と進み方向(負符号)とが１対となることから、ＤＥＬＴＡ(ｋ、ｊ)の演算（図９の１１２２）はどちらか一方のみを行い、対となる時間は角度補正演算（図９のステップ１１２３）の演算式の符号反転により行い、得られたθ’をもとにｓｉｎ(θ’)、ｃｏｓ(θ’)をマップ参照により得ることができる（図９のステップ１１２４）。
上記演算処理により、角度補正演算をｊ＝１〜ｎまで行うことなく、ｊ＝１〜ｎ／２までで完了することができる（図９の１１２５）。
【００３２】
なお、上記の非干渉制御とは、電動機を２次磁束に直交するｑ軸成分と平行するｄ軸成分とに分離して電流制御を行うベクトル電流制御において、流れる電流とｑ軸、ｄ軸のインダクタンスおよび回転数の作用により、ｄ軸電流がｑ軸電圧として、ｑ軸電流がｄ軸電圧として相互に干渉が生じるものを、予め演算によって差し引いて打ち消す制御をいう。
【００３３】
以下、図８のステップ１１０９におけるＰＷＭ出力指令値の演算について図１０に基づいて説明する。
まず、ｊ＝１〜４までの４個のＰＷＭパルスそれぞれに、先に演算した補正角θ’を用いて軸変換を行い（図１０のステップ１１３１）、得られたｕ、ｖ、ｗ各相電圧指令をストアする（図１０のステップ１１３２）。
【００３４】
ｋ番目の制御周期における最初の１００μｓｅｃ割り込みｊｏｂで、上記のようなｋ制御周期に出力するＰＷＭパルスの指令電圧値をまとめて演算しておき、それ以降は定期割り込みが発生する度にＰＷＭコンペアレジスタに当該ストアされた指令電圧値を順番に書き込む（図１０のステップ１１３３）。ＰＷＭコンペアレジスタに書き込まれた値（図１１のｒｃｕ(ｋ，１)等）と三角波１２０４とを比較することにより、ＰＷＭ信号（図１１の１２１６等）を発生することができる。これにより、４００μｓｅｃ毎に電流フィードバック演算を行っているにも関わらず、あたかも１００μｓｅｃ毎に演算しているかのごとく正確かつ高分解能の出力を得ることができる。
【００３５】
電流フィードバック演算周期における電動機の速度変化は一般的には小さいと考えられるので、電流フィードバック演算の１周期と同時間に出力されるｎ個のディジタル出力のそれぞれの補正量の演算を１電流フィードバック演算周期内でまとめて行うことにより、電流フィードバック演算周期Ａとディジタル出力の出力周期Ｂとを異ならせることができる。それにより高速回転にした場合の制御性を悪化させることなくディジタル演算手段の負荷を低減できる。
【００３６】
各々の電動機において上記のごとき制御を行い、前記図２〜図６で説明したように、各々の電動機に対する電流フィードバック演算が互いに重ならないタイミングで行うようにすればよい。すなわち、コンピュータ等のディジタル演算手段における電流フィードバックの演算周期がディジタル出力の出力周期の整数ｎ倍であり、かつ、前記電流フィードバック演算の１演算周期の時間内に出力されるｎ個のディジタル出力のそれぞれの補正量の演算を、前記電流フィードバック演算の１演算周期内で行なうように構成し、さらに、各々の電動機の電流フィードバック演算周期と同一時間内に出力されるｎ個のディジタル出力の各々の位相角補正演算を、各々の電動機の電流フィードバック演算周期内にまとめて行うように構成すればよい。
【００３７】
本実施例において、例えばｎ＝４、ＰＷＭキャリア周波数を１０ｋＨｚ（周期＝１００μｓｅｃ）とすると、制御周期が４００μｓｅｃの電流フィードバック演算を行っているにも関わらず、１００μｓｅｃ毎にＰＷＭ波形を指令値に追従させて変化することが可能であり、ｓｉｎ波に近い３相電圧指令値を出力することが可能となる。本性能は、高速回転領域でより顕著となる。
【図面の簡単な説明】
【図１】本発明の一実施例の構成を示すブロック図。
【図２】本発明の実施例における処理手順を示すフローチャートの一部。
【図３】本発明の実施例における処理手順を示すフローチャートの他の一部。
【図４】本発明の実施例における処理手順を示すフローチャートの他の一部。
【図５】本発明の実施例の動作を説明するための波形図。
【図６】実施例の割り込みタイミング毎の処理内容を示す図表。
【図７】各々の電動機における処理手順を示すフローチャートの一部。
【図８】各々の電動機における処理手順を示すフローチャートの他の一部。
【図９】図７のステップ１１０３における補正角演算内容の詳細を示すフローチャート。
【図１０】図８のステップ１１０９におけるＰＷＭ出力指令値の演算内容の詳細を示すフローチャート。
【図１１】図７〜図１０における動作を説明するための波形図。
【符号の説明】
１０１…電動機Ａ                      １０２…回転角検出器Ａ
１０３…電流センサＡ                  １０４…ＰＷＭ化電力変換部Ａ
１０５…電流制御演算ブロック          １０６…非干渉演算ブロック
１０７…２相→３相変換ブロック        １０９…電流値Ａ／Ｄ変換部
１１０…３相→２相変換ブロック        １１１…現在角θｒｅ演算ブロックＡ
１１２…θｒｅ補正演算ブロックＡ
１１３、１１４…ｓｉｎ・ｃｏｓ参照ブロック
１２１…電動機Ｂ                      １２２…回転角検出器Ｂ
１２３…電流センサＢ                  １２４…ＰＷＭ化電力変換部Ｂ
１２５…現在角θｒｅ演算ブロックＢ    １２６…θｒｅ補正演算ブロックＢ
ｉｑ＊Ａ、ｉｄ＊Ａ、ｉｑ＊Ｂ、ｉｄ＊Ｂ…電流指令値
ｖｄ’＊Ａ、ｖｑ’＊Ａ、ｖｄ’＊Ｂ、ｖｑ’＊Ｂ…電圧指令値
ｖｄ＊Ａ、ｖｑ＊Ａ、ｖｄ＊Ｂ、ｖｑ＊Ｂ…２相電圧指令値
ｖｕ＊Ａ、ｖｖ＊Ａ、ｖｗ＊Ａ…Ａ側の３相電圧指令値
ｖｕ＊Ｂ、ｖｖ＊Ｂ、ｖｗ＊Ｂ…Ｂ側の３相電圧指令値
ｉｑＡ、ｉｄＡ、ｉｑＢ、ｉｄＢ…２相電流
θｒｅＡ、θｒｅＢ…現在角
【図１】
0003890907.tif 000002
【図２】
0003890907.tif 000003
【図３】
0003890907.tif 000004
【図４】
0003890907.tif 000005
【図５】
0003890907.tif 000006
【図６】
0003890907.tif 000007
【図７】
0003890907.tif 000008
【図８】
0003890907.tif 000009
【図９】
0003890907.tif 000010
【図１０】
0003890907.tif 000011
【図１１】
0003890907.tif 000012