(57)【特許請求の範囲】
【請求項１】
１つのディジタル演算手段を用いて、互いにキャリア周波数の異なる複数個の電動機の電流フィードバック制御を共通に行う電動機の駆動制御装置であって、
前記複数個の電動機毎に、それぞれ前記キャリア周波数に相当するキャリア周期毎に駆動信号を出力してそれぞれの電動機を駆動し、
前記複数個の電動機のそれぞれの前記キャリア周期の最大公約数を電流制御演算周期とし、かつ、
前記複数個の電動機のそれぞれの前記キャリア周期をカウントするタイマを有し、
前記キャリア周期の最小公倍数毎に重なり合う前記タイマ出力の谷のタイミングで、前記キャリア周期の長周期側の電動機の電流制御演算を、互いのキャリア周期の最大公約数で決定される電流制御演算周期の１周期分だけ遅らせて演算するように構成した電動機の駆動制御装置。
【請求項２】
各電流制御演算周期の開始時点において各電動機の回転角を読み込み、かつ、前記電流制御演算を電流制御演算周期の１周期分だけ遅らせた際に、前記電動機の回転角の読み込み時点から前記長周期側の電動機の電流読み込み時点までに発生する電動機回転角の進み角を前記遅らせた１周期分の時間に応じて算出し、該算出した進み角に基づいて前記読み込んだ回転角を補正し、該補正した回転角に基づいて前記長周期側の電動機の電流制御演算を行うように構成した請求項１に記載の電動機の駆動制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ディジタルサーボ制御を用いて直流電源から可変周波数、可変電圧の交流を出力して交流電動機を駆動する電動機の駆動制御装置に関する。
【０００２】
【従来の技術】
ディジタルサーボ制御を用いて直流電源から可変周波数、可変電圧の交流を出力して交流電動機を駆動する制御装置は、一般的に電流フィードバック演算手段にマイクロコンピュータ等を用いて離散系の演算処理を行っている。従来の駆動制御装置では電動機を高速回転領域まで制御性よく駆動するため、例えば特開平９−４７０６５公報に記載されるように、一般的に離散系演算処理の演算周期として１００〜１５０μｓｅｃ程度の高速な演算処理を適用するとともに、離散化演算による制御無駄時間の影響を補償するなどして遅れ時間を極力小さくしている。
【０００３】
前記高速回転領域における制御無駄時間の影響は次のとおりである。すなわち、１００〜１５０μｓｅｃ程度の制御周期で電流制御演算がなされるディジタルサーボにおいては、制御無駄時間により、現在の電流値を読み取るタイミングと次期ＰＷＭ電圧を出力するタイミングとの間に制御無駄時間分の遅れを伴い、該無駄時間中に回転角θが進んでしまうことから、リアルタイムで制御した場合に比して該無駄時間分の出力誤差を伴うという影響が生じる。この影響を抑制するため、従来は、該無駄時間分の進み角度の補正を行った上で次期ＰＷＭ出力電圧を演算することにより上記の出力誤差を解決している。上記の進み角補正は、電流制御演算の割り込みタイミングから次期ＰＷＭ出力中心時間までの固定時間で補正を行うことから、複数ｍ個に対する補正時間はすべて等しいという特徴を有している。
【０００４】
こうした従来の電動機の駆動制御装置において、１電流制御演算周期内で２以上の電動機の電流制御演算を行う場合は、Ａ／Ｄ変換器の本数の制約から各電動機の電流読み込みを時間分割処理により行っている。
図９および図１０を用いて従来の電流制御による補正演算の一例を説明する。図９は従来例の構成で２台の電動機を制御する場合を示すブロック図、図１０はタイミングチャートである。なお、図中でＡが付いた符号は電動機Ａ側の各制御ブロックおよび信号であり、Ｂが付いた符号は電動機Ｂ側の各制御ブロックおよび信号である。
ＰＷＭタイマ６２０（電動機を駆動するＰＷＭ信号を発生するために各キャリア周期をカウントするタイマ）の谷のタイミングで１５０μｓｅｃの定時ｊｏｂ割り込みが発生する。現在時間をｋ番目の割り込みタイミング６０３とすると、該ｋ番目の割り込みが発生した後に現在の３相電流値ｉＡ(ｋ）６０９およびｉＢ(ｋ）６１２を読み込み、Ａ／Ｄ変換部５０９でディジタル値に変換する。これは、ｋ周期目の電流Ｆ／Ｂ（フィードバック）制御演算の演算周期６２１内の先頭で行われる。しかる後に取り込まれたｕ相電流ｉｕおよびｖ相電流ｉｖを用い、３φ→２φ変換部５１０にて軸変換を行い、２相電流ｉｄおよびｉｑを算出する。この際の軸変換演算に現在の電動機回転角度θＡ(ｋ）６１６、θＢ(ｋ）６１７を用いる。得られた２相電流ｉｄおよびｉｑと指令された電流指令値ｉｄ＊、ｉｑ＊との偏差を基に電流制御部５０５で電流制御演算を行い、更に非干渉制御部５０６で干渉項の補正処理を行い、２相電圧指令値ｖｄ＊、ｖｑ＊を算出する。これは、ｋ周期目の電流Ｆ／Ｂ制御演算の演算周期６２１中に行われる。
【０００５】
さらに電圧指令算出値ｖｄ、ｖｑを２φ→３φ変換部５０７で軸変換し、空間ベクトル制御部５０８で電圧補正処理を施した後、電力変換部５０４でＰＷＭに電力変換し、ｋ＋１番目の演算周期６２２内のｋ番目の出力タイミンク６２５においてＰＷＭ出力波６２３、６２４として出力する。この際、ｋ番目の現在電流値読み取り開始タイミングであるｋ番目の割り込み６０３とｋ番目ＰＷＭ出力タイミンク６２５との間には遅れ時間τ６１５が存在し、現在角θＡ、θＢは、それぞれタイミング６０３ではθＡ(ｋ）６１６、θＢ(ｋ）６１７、タイミング６２５ではθ'Ａ(ｋ）６１８、θ'Ｂ(ｋ）６１９となる。従って、ＰＷＭ出力タイミンク６２５における３相電圧指令演算に、２φ→３φ変換部５０７において現在角度θ(ｋ）を用いると、進み角θＡ(ｋ）−θ'Ａ(ｋ）およびθＢ(ｋ）−θ'Ｂ(ｋ）分の誤差を有することになる。
また、これは回転数が高くなればなる程、遅れ時間τ６１５の間の進み角が大きくなるために当該誤差が大きくなり、ついには一定の回転数以上の制御が不能となってしまう。これを解決すべく従来の電流サーボにおいては、演算時間６２１中に電流Ｆ／Ｂ演算毎に進み角補正を行い、２φ→３φ変換部５０７の軸変換演算にＰＷＭ出力タイミンク６２５を想定した補正角θ'Ａ(ｋ）、θ'Ｂ(ｋ）を用いることにより、正確な電圧出力を得、正確なＰＷＭ波出力を行っている。なお、図８ではθ'Ａ(ｋ）をθｒｅ'Ａ(ｋ）、θ'Ｂ(ｋ）をθｒｅ'Ｂ(ｋ）と表示している。
【０００６】
【発明が解決しようとする課題】
このような従来の技術による電動機の駆動制御装置において、複数ｍ個の電動機を１つのマイクロコンピュータで制御するような電流サーボ装置に上記の従来技術を適用すると、各々の電動機における３相電流値の読み込みに際して任意の２相電流値、例えばｕ相電流ｉｕおよびｖ相電流ｉｖの読み込みタイミングの同時性が重要であることから、複数個の電動機ｍ個各々に対応した２ｍ本のＡ／Ｄ変換器が必要となる。
しかしながら、一般に市販されるマイクロコンピュータが有するＡ／Ｄ変換器の本数は高々２本であるため、実際にはこれらｍ個の電動機それぞれについて個々の電動機におけるｕ相電流ｉｕおよびｖ相電流ｉｖは同時読み込みを行い、かつ電動機毎の読み込みについては時分割処理により電流読み込みを行っている。こうした従来技術による駆動制御装置では、電流読み込みタイミングから次回のＰＷＭ出力中心時間までの制御無駄時間の補償時間が固定されていることと、Ａ／Ｄ変換時間に起因する遅れにより、各電動機間の電流読み込みタイミングの同時性が損われることから、前記電流読み込みからＰＷＭ出力までの制御無駄時間の補償時間に誤差を生じ、高速回転領域における制御性が悪化するという問題が生じた。
【０００７】
また、従来の技術による電動機の駆動制御装置において、複数ｍ個の電動機をそれぞれ異なるキャリア周波数で駆動しようとした場合、電流制御演算周期（長周期側演算周期ｋと短周期側演算周期ｌ）が互いに異なることから演算上の制約で各々の電動機のキャリア周波数から決まる演算周期よりも短い演算周期で電流制御演算を行う必要があり、個々の電動機の電流制御演算毎に１つずつ、ｍ個のマイクロコンピュータ等の演算手段を必要とした。また、当該制御を１個のマイクロコンピュータ等の演算手段を用いて行う場合には、図１１に示すごとく、各々の電動機を駆動制御するためのＰＷＭタイマ８０４、８０５の谷のタイミングが重なる処のｉ＋３演算周期８０１においては、重なった個数の電動機を駆動するための電流制御演算８１１、８１２を同一周期中に行う必要があり、演算が１電流制御周期８０１内におさまらず、演算処理が破綻してしまう問題があった。本発明は、上記のごとき従来技術の問題を解決するためになされたものであり、第１の目的は、従来同様に汎用のＡ／Ｄ変換器を用いた場合でも、制御無駄時間に起因する高速回転領域における制御性の悪化を防止することであり、第２の目的は、複数の電流演算が同一電流制御周期内に行われることを回避して演算の破綻を防止することである。
【０００９】
【課題を解決するための手段】
上記の目的を達成するため、本発明においては特許請求の範囲に記載するように構成している。すなわち、請求項１に記載の発明においては、１つのディジタル演算手段を用いて、互いにキャリア周波数の異なる複数個の電動機の電流フィードバック制御を共通に行う電動機の駆動制御装置であって、前記複数個の電動機毎に、それぞれ前記キャリア周波数に相当するキャリア周期毎に駆動信号を出力してそれぞれの電動機を駆動し、前記複数個の電動機のそれぞれの前記キャリア周期の最大公約数を電流制御演算周期とし、かつ、前記複数個の電動機のそれぞれの前記キャリア周期をカウントするタイマを有し、前記キャリア周期の最小公倍数毎に重なり合う前記タイマ出力の谷のタイミングで、前記キャリア周期の長周期側の電動機の電流制御演算を、互いのキャリア周期の最大公約数で決定される電流制御演算周期の１周期分だけ遅らせて演算するように構成している。
上記のように構成したことにより、１つのディジタル演算手段を用いて、互いにキャリア周波数の異なる複数個の電動機の電流フィードバック制御を共通に行った場合でも、複数の電流演算が同一電流制御周期内に行われることを回避して演算の破綻を防止することができる。
【００１０】
また、請求項２に記載の発明においては、請求項１において、各電流制御演算周期の開始時点において各電動機の回転角を読み込み、かつ、前記電流制御演算を電流制御演算周期の１周期分だけ遅らせた際に、前記電動機の回転角の読み込み時点から前記長周期側の電動機の電流読み込み時点までに発生する電動機回転角の進み角を前記遅らせた１周期分の時間に応じて算出し、該算出した進み角に基づいて前記読み込んだ回転角を補正し、該補正した回転角に基づいて前記長周期側の電動機の電流制御演算を行うように構成している。
上記のように構成したことにより、１つのディジタル演算手段を用いて、互いにキャリア周波数の異なる複数個の電動機の電流フィードバック制御を共通に行った場合に、長周期側の電動機の電流読み込み時点までに要する制御無駄時間による演算誤差を無くし、制御無駄時間に起因する高速回転領域における制御性の悪化を防止することができる。
【００１２】
【発明の効果】
請求項１に記載の発明においては、キャリア周期の最大公約数を電流制御周期とするので、一つのディジタル演算手段で行ない得る最も長い電流演算周期を用いることが可能となり、かつ、キャリア周期の最小公倍数毎に各々のキャリア周期をカウントするタイマの谷のタイミングが重なるタイミングで、複数の電流演算が同一電流制御周期内に行われることを回避することが可能となる。そのため互いにキャリア周波数の異なる複数の電動機の電流制御を、一つのディジタル演算手段で行なうことが可能となる。
【００１３】
また、請求項２に記載の発明においては、長周期側の電動機の電流読み込み時点までに要する制御無駄時間に起因する進み角に対する正確な補償を行なうことができるので、高速回転での電流制御性能を良好ならしめるとともに、高速回転領域でも正確な位相角制御が可能となるため、より正確な弱め界磁制御による誘起電圧抑制が可能となり、電動機の電流制御の可制御領域をより制御限界電圧に近い領域まで広げることが可能となる。
【００１４】
【発明の実施の形態】
（第１の実施例）
図１は本発明の第１の実施例の構成を示すブロック図であり、２台の電動機ＡとＢを制御する場合を示す。図１において、電動機Ａ１０１は例えば同期電動機であり、ＰＷＭ化電力変換部Ａ１０４（例えばインバータ回路）の出力によって駆動される。回転角検出器Ａ１０２（例えばレゾルバやエンコーダ等）は電動機Ａ１０１の回転角度を検出し、その結果を現在時点の回転角θｒｅ演算部Ａ１１１へ送る。この回転角θｒｅＡの読み込み時点と、後述による電動機Ａの電流読み込み時点から演算される電動機Ａの電流読み込みタイミングの補正時間τＡ間に進む回転角度の補正をτＡ補正部１３１で行う。電流センサＡ１０３は、ＰＷＭ化電力変換部Ａ１０４から電動機Ａ１０１のｕ、ｖ、ｗの各相に流れる電流のうちの任意の２相以上の電流（ここではｕ相およびｖ相の電流）を検出する。
【００１５】
同様に電動機Ｂ１２１側においても、回転角検出器Ｂ１２２、電流センサＢ１２３、ＰＷＭ化電力変換部Ｂ１２４、現在角θｒｅ演算部Ｂ１２５およびτＢ補正部１３２が、上記と同様に電動機Ｂ１２１についての検出と各演算を行う。
【００１６】
電流制御演算部１０５は、外部から与えられた電流指令値ｉｑ＊Ａ、ｉｄ＊Ａおよびｉｑ＊Ｂ、ｉｄ＊Ｂ（例えばアクセルペダルの開度と回転速度に応じて決定される値）と実際の動作から求められた２相電流ｉｑＡ、ｉｄＡおよびｉｑＢ、ｉｄＢとの偏差に基づいて、電圧指令値ｖｄ'＊Ａ、ｖｑ'＊Ａおよびｖｄ'＊Ｂ、ｖｑ'＊Ｂを算出する。
【００１７】
非干渉演算部１０６は、干渉項の補正を行って２相電圧指令値ｖｄ＊Ａ、ｖｑ＊Ａおよびｖｄ＊Ｂ、ｖｑ＊Ｂを算出する。
なお、上記の非干渉制御とは、電動機を２次磁束に直交するｑ軸成分と平行するｄ軸成分とに分離して電流制御を行うベクトル電流制御において、流れる電流とｑ軸、ｄ軸のインダクタンスおよび回転数の作用により、ｄ軸電流がｑ軸電圧として、ｑ軸電流がｄ軸電圧として相互に干渉が生じるものを、予め演算によって差し引いて打ち消す制御をいう。
【００１８】
２相→３相変換部１０７（図では２相→３相を２φ→３φと略記している）は、軸変換を行って３相電圧指令値ｖｕ＊Ａ、ｖｖ＊Ａ、ｖｗ＊Ａおよびｖｕ＊Ｂ、ｖｖ＊Ｂ、ｖｗ＊Ｂを出力する。
空間ベクトル制御部１０８は、２相→３相変換部１０７の出力に電圧補正処理を施した後、その結果をＰＷＭ化電力変換部Ａ１０４、ＰＷＭ化電力変換部Ｂ１２４およびｓｉｎθ'ｒｅ・ｃｏｓθ'ｒｅ参照部１１３、ｓｉｎθ"ｒｅ・ｃｏｓθ"ｒｅ参照部１１４へ送る。
【００１９】
ＰＷＭ化電力変換部Ａ１０４およびＰＷＭ化電力変換部Ｂ１２４は、例えばＰＷＭ信号発生部とインバータ回路とからなり、上記の出力で三角波と３相電圧指令値とを比較することによってＰＷＭ信号を作成し、それによってインバータ回路を駆動して電動機Ａ１０１および電動機Ｂ１２１へ必要な電流を供給する。  電流値Ａ／Ｄ変換部１０９は、電流センサＡ１０３および電流センサＢ１２３で検出したアナログ電流値をディジタル値に変換する。
３相→２相変換部１１０は、軸変換を行って３相の電流値を２相電流ｉｑＡ、ｉｄＡおよびｉｑＢ、ｉｄＢに変換し、電流演算部１０５へ送る。
回転角θｒｅ演算部Ａ１１１および回転角θｒｅ演算部Ｂ１２５は、回転角検出器Ａ１０２および回転角検出器Ｂ１２２の出力に基づいて軸変換に必要な現在角θｒｅＡおよび現在角θｒｅＢを算出する。
【００２０】
τＡ補正部１３１は、回転角θｒｅＡ演算部１１１から送られた電動機Ａの現在角に基づいて、電動機Ａの電流読み込み時間から演算される電動機Ａの電流読み込みタイミングの補正時間ｔｄＡ（＝τＡ）間に進む回転角度の補正演算を行う。同様に、τＢ補正部１３２は、回転角θｒｅＢ演算部１２５から送られた電動機Ｂの現在角に基づいて、電動機Ｂの電流読み込み時間から演算される電動機Ｂの電流読み込みタイミングの補正時間ｔｄＢ（＝τＢ）間に進む回転角度の補正演算を行う。上記のτＡ補正部１３１およびτＢ補正部１３２により算出された補正後の回転角θｒｅ"Ａおよびθｒｅ"Ｂは、θｒｅ補正演算部Ａ１１２およびθｒｅ補正演算部Ｂ１２６に送られる。
【００２１】
θｒｅ補正演算部Ａ１１２およびθｒｅ補正演算部Ｂ１２６では、ＰＷＭ出力時間までの制御無駄時間補正演算を行い、算出した補正後の回転角θｒｅ'Ａおよびθｒｅ'Ｂをｓｉｎθｒｅ'・ｃｏｓθｒｅ'参照部１１３に送る。
ｓｉｎθｒｅ'・ｃｏｓθｒｅ'参照部１１３は、補正後の回転角θｒｅ'Ａおよびθｒｅ'Ｂから前記２相→３相変換部１０７において軸変換に必要な数値を求め、算出した数値を該２相→３相変換部１０７に送る。
【００２２】
また、上記のτＡ補正部１３１およびτＢ補正部１３２によって算出された補正後の回転角θｒｅ"Ａおよびθｒｅ"Ｂは、そのままでｓｉｎθｒｅ・ｃｏｓθｒｅ参照部１１４に送られる。
ｓｉｎθｒｅ・ｃｏｓθｒｅ参照部１１４では、３相→２相変換部１１０において軸変換に必要な数値を求め、算出された数値を該３相→２相変換部１１０に送る。
なお、上記の各演算部、変換部は図面では分けて記載しているが、実際には共通のコンピュータ等で構成できる。また、その演算内容については詳細を後述する。
【００２３】
以下、本発明の具体的な実施例として、同期電動機に代表される電動機を２台用い、図１の回転角検出器Ａ１０２および回転角検出器Ｂ１２２としてレゾルバやエンコーダ等を用いて現在角度を読み込むシステム、または誘導電動機を２台用い、上記と同様の回転角度センサを用いて上記のようにして現在角度を読むかもしくは演算手段によって回転速度を算出するシステムにおいて、上記のようにして現在の電動機の回転角度を検出し、電流センサＡ１０３および電流センサＢ１２３を用いて電動機の相電流値を読み込み、マイクロコンピュータやＤＳＰに代表されるディジタル演算手段を用いて電流フィードバック制御演算処理を行い、得られた制御指令値によってＰＷＭ化電力変換部Ａ１０４およびＰＷＭ化電力変換部Ｂ１２４を制御することにより、電動機に電力を供給する駆動制御装置に本発明を適用した場合について説明する。
【００２４】
図２は本発明の実施例における割り込みタイミング毎の処理内容を示す動作説明図、図３および図４は本発明の実施例における処理手順を示すフローチャートである。
本実施例では、図２の２２０に示す６.７ｋＨｚ（１５０μｓｅｃ周期）のＰＷＭタイマ（電動機を駆動するＰＷＭ信号を発生するために各キャリア周期をカウントするタイマ）を２本動作させ、例えばタイマ波形の谷のタイミングで１５０μｓｅｃ毎の割り込みが発生するものを例として説明する。
ｋ制御周期目の割り込みで電動機Ａの現在における回転角θｒｅＡ(ｋ）およびθｒｅＢ(ｋ）を取り込む。同時に電流読み込み用のＡ／Ｄ変換器（電流値Ａ／Ｄ変換部１０９に相当）をスタートさせ、電動機Ａ１０１を流れる３相電流のうちの任意の２相の電流値、例えばｉｕＡ(ｋ）、ｉｖＡ(ｋ）をＡ／Ｄ変換器に読み込み（図２の２０９：図２ではｕ相とｖ相をまとめてｉＡ(ｋ）と表示）、続けて電動機Ｂ１２１を流れる３相電流のうちの任意の２相の電流値、例えばｉｕＢ(ｋ）、ｉｖＢ(ｋ）を電流値Ａ／Ｄ変換器に取り込む（図２の２１２：ｉＢ(ｋ）と表示）。
【００２５】
次に、電動機Ｂ１２１の電流読み込みと並行して電動機Ａの電流フィードバック演算２１０、２１１を行い、電動機Ｂ１２１の電流読み込み後に電動機Ｂの電流フィードバック演算２１３、２１４を実行する。
この際、各電動機の電流読み込みのタイミングは、マイクロコンピュータのハードウェアにより、電動機Ａを流れる電流の読み込みでｔｄＡ２１６、電動機Ｂを流れる電流の読み込みでｔｄＢ２１８だけ遅れを生じる。これらの遅れ時間はマイクロコンピュータのハードウェアにより決まるため、予め既知の値である。この遅れ時間の間に電動機Ａおよび電動機Ｂの回転角度は、割り込み発生時に取り込んだ回転角θｒｅＡ(ｋ）２３１、θｒｅＢ(ｋ）２３４からθｒｅ"Ａ(ｋ）２３２、θｒｅ"Ｂ(ｋ）２３５まで進む。なお、図２においてはθｒｅＡ(ｋ）等を全てθＡ(ｋ）のように「ｒｅ」の省いて表示している。
【００２６】
τＡ補正部１３１およびτＢ補正部１３２は上記の進み角を補償する為に設けた補償器で、下記の（数１）式および（数２）式に示される補正演算を行う。
【００２７】
θｒｅ"Ａ(ｋ)＝θｒｅＡ(ｋ)＋ωｒｅＡ(ｋ)・ｔｄＡ    …（数１）
【００２８】
θｒｅ"Ｂ(ｋ)＝θｒｅＢ(ｋ)＋ωｒｅＢ(ｋ)・ｔｄＢ    …（数２）
ここで、ωｒｅＡ(ｋ）は電動機Ａの回転角度変化から算出したｋ制御周期における電動機Ａの回転角速度、ωｒｅＢ(ｋ）は電動機Ｂの回転角度変化から算出したｋ制御周期における電動機Ｂの回転角速度である。
また、３相→２相変換部１１０では、上記（数１）式、（数２）式で求めた回転角、すなわち進み角分を補正した回転角θｒｅ"Ａ(ｋ)、θｒｅ"Ｂ(ｋ)を用いて、下記（数３）式、（数４）式のごとき演算を行い、３相電流値ｉｕ、ｉｖを用いて２相電流ｉｄ、ｉｑを算出している。
【００２９】
【数３】
0003931590.tif 000002
【００３０】
【数４】
0003931590.tif 000003
ここでＣは変換定数行列
上記補正後の回転角θｒθ"Ａ(ｋ）、θｒｅ"Ｂ(ｋ）を用いて電動機Ａおよび電動機Ｂの電流フィードバック演算２１０、２１１、２１３、２１４を行うことは、すなわち３相→２相変換部１１０における軸変換演算において正確な電流読み込み時の回転角を用いて軸変換を行うことができることを意味しており、正確な２相電流の算出が可能となる。
【００３１】
上記のようにして算出した電動機Ａの現在の２相電流値ｉｄＡ(ｋ）、ｉｑＡ(ｋ）と電流指令値ｉｑ＊Ａ(ｋ）、ｉｄ＊Ａ(ｋ）との偏差に基づき電流制御演算を行い、非干渉制御を行った後の電圧指令値ｖｄ＊Ａ(ｋ）、ｖｑ＊Ａ(ｋ）に基づき２相→３相変換部１０７にて３相電圧指令値ｖｕ＊Ａ(ｋ）、ｖｖ＊Ａ(ｋ）、ｖｗ＊Ａ(ｋ）をそれぞれ算出する。
【００３２】
なお、上記の演算の際に、θｒｅ補正演算部Ａ１１２およびθｒｅ補正演算部Ｂ１２６において、ｋ制御周期目の割り込み発生から次期ＰＷＭ出力までの進み角基本時間τ２１５に応じて進み角補正を行うことにより、θｒｅ'Ａ(ｋ）とθｒｅ'Ｂ(ｋ）を求め、その補正後の値を用いてｓｉｎθｒｅ'・ｃｏｓθｒｅ'参照部１１３により、２相→３相変換部１０７において軸変換に必要な数値を求めることは、本出願人の先願（特開２００１−６９９３４号：未公開）に記載されている。
次に、３相→２相変換部１１０で算出された３相電圧指令値に基づき、次期ＰＷＭ出力２２３をｋ＋１制御周期目に出力する。
【００３３】
電動機Ｂについても同様に、電動機Ｂの現在の２相電流値ｉｄＢ(ｋ）、ｉｑＢ(ｋ）と電流指令値ｉｄ＊Ｂ(ｋ）、ｉｑ＊Ｂ(ｋ）との偏差に基づき電流制御演算を行い、非干渉制御を行った後の電圧指令値ｖｄ＊Ｂ(ｋ）、ｖｑ＊Ｂ(ｋ）に基づき２相→３相変換部１０７にて３相電圧電圧指令値ｖｕ＊Ｂ(ｋ）、ｖｖ＊Ｂ(ｋ）、ｖｗ＊Ｂ(ｋ）をそれぞれ算出する。そして算出された３相電圧指令値に基づき、次期ＰＷＭ出力２２４をｋ＋１制御周期目に出力する。なお、ｋ制御周期目の割り込み発生から次期ＰＷＭ出力までの進み角基本時間τ２１５に応じて進み角補正を行うことは前記電動機Ａの場合と同様である。
【００３４】
次に、本発明の実施例の処理手順を図３および図４を用いて説明する。なお、図３および図４は本実施例の処理を示すフローチャートであり、図３と図４は（１）と（２）と（３）の個所で相互に接続されている。
各電動機の電流読み込みのタイミングは、使用するマイクロコンピュータのハードウェアに応じて、電動機Ａを流れる電流の読み込みについては図２のｔｄＡ２１６、電動機Ｂを流れる電流の読み込みについてはｔｄＢ２１８だけ遅れを生じることが既知である。したがって、図３の３１９に示すように、上記の遅れの値をそれぞれ定数（τＡ＝ｔｄＡ、τＢ＝ｔｄＢ）として予め記憶しておく。
【００３５】
ｋ制御周期目の割り込み発生と共に、現在角の読み込み３０１、３０２を行い、同時にＡ／Ｄ変換器をスタート３１５させる。
【００３６】
ハードウェア処理による電動機Ａの電流読み込み中に回転角度の補正演算３０３、３０４、３０５を行い、電動機Ａの電流Ａ／Ｄ変換終了後の電流読み込み３１６の後に電動機Ａの電流フィードバック演算３０６、３０７、３０８、３０９を行う。同時に電動機Ａの電流Ａ／Ｄ変換終了直後に電動機Ｂの電流Ａ／Ｄ変換・電流読み込み３１７を実施する。
そして前記電動機Ａの電流フィードバック演算と電動機ＢのＡ／Ｄ変換・電流読み込み３１７とがいずれも終了した段階で電動機Ｂの電流フィードバック演算３１０、３１１、３１２、３１３を行う。
その後、算出されたｋ制御周期目の３相電圧指令値ｖｕ＊Ａ(ｋ）、ｖｖ＊Ａ(ｋ）、ｖｗ＊Ａ(ｋ）、ｖｕ＊Ｂ(ｋ）、ｖｖ＊Ｂ(ｋ）、ｖｗ＊Ｂ(ｋ）をＰＷＭコンペアレジスタに書き込み３１４、ハードウェア処理により次の割り込み（ｋ＋１制御周期目）時にｋ制御周期目のＰＷＭ出力３１８を行う。
【００３７】
各々の電動機において上記のごとき制御を行い、前記図１、図２で説明したように各々の電動機の電流読み込みタイミングにおける正確な回転角度を算出し、３相→２相変換部１１０に適用するように構成することで、制御無駄時間による演算誤差を低下させることができ、特に高速回転領域における制御性を向上させることが可能となる。
【００３８】
本実施例では、キャリア周波数６.７ｋＨｚで１５０μｓｅｃ毎の割り込み周期の場合について説明したが、マイクロコンピュータの性能向上等により、キャリア周波数１０ｋＨｚで１００μｓｅｃ以上の高速演算周期の応用へも同様に適用可能である。
また、本実施例では、電動機数がＡとＢの２台の場合について説明したが、制御に用いるマイクロコンピュータの処理能力が３台以上の複数の制御演算に対しても十分対応できる場合には３台以上でも同様に適用できる。
【００３９】
（第２の実施例）
第２の実施例は、複数ｍ個の電動機をそれぞれ異なるキャリア周波数で駆動する場合、例えば、電流制御周期として長周期側演算周期ｋと短周期側演算周期ｌがある場合についての制御に関する。
図５は第２の実施例における回路ブロック図であり、互いにキャリア周波数が異なる２台の電動機ＡとＢを制御する場合を示す。この際、電動機Ａのキャリア周波数は６.７ｋＨｚ（１５０μｓｅｃ周期）、電動機Ｂのキャリア周波数は１０ｋＨｚ（１００μｓｅｃ周期）をとり、互いの周期の最大公約数で決まる５０μｓｅｃの電流制御演算周期毎に割り込みを持つ構成となっている。図５において図１と同符号は同じ回路ブロックを示す。図５において図１との差異は、図１のτＡ補正演算部１３１の代わりにγＡ補正演算部１４１が設けられ、かつ、割込み周期判定部１５１が設けられていることである。
【００４０】
上記γＡ補正演算部１４１は、長周期側（Ａ側）の演算において、後述する割込み周期判定に応じて演算が１周期遅れる場合の補正を行なうブロックである。なお、短周期側（Ｂ側）に上記１４１に相当するブロックは設けられていない。この理由は、長周期側（Ａ側）の演算においては、後述する割込み周期判定に応じて演算が１周期遅れる場合があるため、その遅れに対する補正が必要であるが、短周期側（Ｂ側）では遅れなしに演算が行なわれるので、補正が不必要なためである。
【００４１】
また、割込み周期判定部１５１は、コンピュータの割込み周期タイマのカウント値を入力し、長周期側と短周期側との演算周期の公約数の判定を行ない、その結果に応じてフラグを設定するものである。各演算ブロックでは上記のフラグに応じて、今回の演算を行なったり、前回の値を維持したりする（詳細後述）。
【００４２】
図６は第２の実施例の割り込みタイミング毎の処理内容を示す動作説明図、図７および図８は第２の実施例における処理手順を示すフローチャートである。なお、図７と図８は（１）、（２）、（３）の個所で相互に接続されている。以下、図６、図７、図８に基づいて動作を説明する。
【００４３】
本実施例では、図６に示すキャリア周波数６.７ｋＨｚ（キャリア周期１５０μｓｅｃ）のＰＷＭタイマ４０４とキャリア周波数１０ｋＨｚ（キャリア周期１００μｓｅｃ）のＰＷＭタイマ４０６とを２本動作させ、各々の周期の最大公約数となる周期である処の５０μｓｅｃ毎の割り込みが発生するものを例として説明する。すなわち、電動機Ａの制御周期は１５０μｓｅｃ（長周期側）、電動機Ｂの制御周期は１００μｓｅｃ（短周期側）である。なお、上記のＰＷＭタイマは電動機を駆動するＰＷＭ信号を発生するために各キャリア周期をカウントするタイマである。
【００４４】
まず、電動機ＡのＰＷＭタイマ４０４の谷のタイミングであるｉ番目の割り込みで、電動機Ａのｋ制御周期目の電流制御演算を以下の手順により行なう。すなわち、現在角θｒｅＡ(ｋ）を読み込み（図７の７２１）、同時に電流読み込み用のＡ／Ｄ変換器をスタート（図７の７３３）させて、電動機Ａ１０１を流れる３相電流のうちの任意の２相の電流値、例えばｉｕＡ(ｋ）、ｉｖＡ(ｋ）を電流値Ａ／Ｄ変換器に読み込む（図６の４０８、図７の７３４）。そしてＡ／Ｄ変換後に電動機Ａの電流フィードバック演算を行う（図６の４１１、図８の７２５、７２６、７２７、７２８）。
【００４５】
次に、電動機ＢのＰＷＭタイマ４０６の谷のタイミングであるｉ＋１番目の割り込みで電動機Ｂの１制御周期目の電流制御演算を以下の手順により行なう。すなわち、現在角θｒｅＢ（ｌ）を読み込み（図７の７１１）、同時に電流読み込み用のＡ／Ｄ変換器をスタート（図７の７３１）させ、電動機Ｂ１２１を流れる３相電流のうちの任意の２相電流値、例えばｉｕＢ(ｌ）、ｉｖＢ(ｌ）を電流値Ａ／Ｄ変換器に読み込む（図６の４０９、図７の７３２）。そしてＡ／Ｄ変換後に電動機Ｂの電流フィードバック演算（図６の４１２、図８の７１５、７１６、７１７、７１８）を行う。
この際、電動機Ａと電動機ＢとのＰＷＭタイマ４０４、４０６の谷のタイミングは、各々の周期の最小公倍数である処の３００μｓｅｃ毎に重なることになる。図６においてはｉ＋３番めの割り込みおよびｉ＋９番めの割り込みがこれに相当する。
【００４６】
本実施例においては、図５の割込み周期判定部１５１を用いて、電流演算周期が重なる割り込み周期を判定し、重なる場合には、長周期側の電動機Ａの電流演算を１割り込み周期だけ待たせて演算することにより、演算の破綻を回避している。
すなわち、図７において短周期側の電動機Ｂの電流演算周期判定ステップ７０１で、電動機Ｂの電流演算周期であると判定した場合、その時の割り込み周期が電動機Ｂの電流演算周期であれば無条件で電動機Ｂの電流制御演算７１１〜７１８、７３１、７３２を実行し、演算結果をＰＷＭのコンペアレジスタに書き込む７１９。続けて当該割り込み周期内で長周期側の電動機Ａの電流演算周期判定ステップ７０５で、電動機Ａについての判定を行ない、電動機Ａの電流制御周期であればウェイトフラグＦＬＧをセットする７０６。
【００４７】
次に、短周期側の電動機Ｂの電流演算周期判定ステップ７０１で、電動機Ｂの電流演算周期でないと判定した場合、続けて当該割り込み周期内で長周期側電動機Ａの電流演算周期判定ステップ７０２を実行し、電動機Ａの電流制御周期であればウェイトフラグＦＬＧをクリア７０４した上で、無条件で電動機Ａの電流制御演算７２１〜７２８、７３３、７３４を実行し、演算結果をＰＷＭのコンペアレジスタに書き込む７１９。また、当該割り込み周期内の長周期側電動機Ａの電流演算周期判定ステップ７０２において、電動機Ａの電流制御周期でないと判定した場合は、ウェイトフラグＦＬＧを照合７０３し、フラグがセットされた状態（“１”）であれば、フラグをクリアした上で電動機Ａの電流制御演算７２１〜７２８、７３３、７３４を実行し、演算結果をＰＷＭのコンペアレジスタに書き込む７１９。
上記いずれの判定条件にも一致しない場合は、前回のコンペアの値を保持７３５する。
図５の割込み周期判定部１５１は、上記の短周期側の電動機Ｂの電流演算周期判定ステップ７０１、長周期側の電動機Ａの電流演算周期判定ステップ７０２、７０５、フラグ設定またはクリアのステップ７０４、７０６およびフラグ照合ステップ７０３に相当する。
【００４８】
また、上記のように、長周期側電動機Ａの電流制御演算を１割り込み周期遅らせた場合、上記各々のＰＷＭキャリア周期の最大公約数で決まる処の１割り込み周期５０μｓｅｃ分だけ、電動機Ａの電流読み込みが遅れるので、この時間の間に、下記（数５）式に示すように、回転角θｒｅＡが進んでしまう。
【００４９】
θｒｅ"Ａ(ｋ）＝θｒｅＡ(ｋ）＋ωｒｅＡ(ｋ)・５０μｓｅｃ…（数５）
ここで、ωｒｅＡ(ｋ）は電動機Ａの回転角度変化から算出したｋ制御周期における電動機Ａの回転角速度である。
図５のγＡ補正演算部１４１は、上記の補正演算を行なうブロックである。  なお、上記のように補正後の回転角をθｒｅ"Ａ(ｋ）で表しているが、これは上記のように１割り込み周期分だけ電動機Ａの電流読み込みが遅れた分の補正であり、前記図１のτＡ補正演算部１３１における補正後の回転角θｒｅ"Ａ(ｋ）とは内容が異なっている。
【００５０】
３相→２相変換部１１０では、下記（数６）式に示すごとく、補正後のθｒｅ"Ａ(ｋ）を用いて軸変換演算を行い、３相電流値ｉｕ、ｉｖを用いて２相電流ｉｄ、ｉｑを算出する。
【００５１】
【数６】
0003931590.tif 000004
ここで、Ｃは変換定数行列
上記補正後の回転角θｒｅ"Ａ(ｋ）を用いて電動機Ａの電流フィードバック演算を行うことは、すなわち３相→２相変換部１１０における軸変換演算において正確な電流読み込み時の回転角を用いて軸変換を行うことができることを意味しており、正確な２相電流の算出が可能となる。
【００５２】
なお、上記の演算の際に、θｒｅ補正演算部Ａ１１２およびθｒｅ補正演算部Ｂ１２６において、ｋ制御周期目の割り込み発生から次期ＰＷＭ出力までの進み角基本時間τ２１５に応じて進み角補正を行うことにより、θｒｅ'Ａ(ｋ）とθｒｅ'Ｂ(ｋ）を求め、その補正後の値を用いてｓｉｎθｒｅ'・ｃｏｓθｒｅ'参照部１１３により、２相→３相変換部１０７において軸変換に必要な数値を求めることは、前記第１の実施例で説明したのと同様である。
【００５３】
各々の電動機において上記のごとき制御を行い、前記図５〜図８で説明したような各々の電動機の電流制御演算を行うことにより、異なる２つのキャリア周波数を生成するために決まる電流制御周期（この場合５０μｓｅｃ）においても、演算が破綻することなく、２個の電動機の駆動制御を１つのマイクロコンピュータ等のディジタル演算手段により実行可能となる。
【００５４】
また、長周期側の電動機Ａのキャリア周期と短周期側の電動機Ｂのキャリア周期の最小公倍数毎に１度発生する長周期側電動機Ａの電流読み込み遅れに対して、既知である遅れ時間を考慮した電流読み込みタイミングにおける正確な回転角度を算出し、３相→２相変換部に適用するように構成することで、制御無駄時間による演算誤差をさげ、特に高速回転領域における制御性を向上させることが可能となる。
【００５５】
本実施例では、キャリア周波数６.７ｋＨｚ（周期１５０μｓｅｃ）およびキャリア周波数１０ｋＨｚ（周期１００μｓｅｃ）の場合について説明したが、当該キャリア周波数は、公約数である割り込み周期が電流制御に十分な値をとりうる限り、任意の周波数に対しての適用が可能である。
【００５６】
また、本実施例では、電動機数が長周期のＡと短周期のＢの２台の場合について説明したが、制御に用いるマイクロコンピュータの処理能力が３台以上の複数の制御演算に対しても十分対応できる場合には３台以上でも同様に適用できる。
【図面の簡単な説明】
【図１】本発明の第１の実施例を示すブロック図。
【図２】第１の実施例における割り込みタイミング毎の処理内容を示す動作説明図。
【図３】第１の実施例における演算のフローチャートの一部。
【図４】第１の実施例における演算のフローチャートの他の一部。
【図５】本発明の第２の実施例を示すブロック図。
【図６】第２の実施例における割り込みタイミング毎の処理内容を示す動作説明図。
【図７】第２の実施例における演算のフローチャートの一部。
【図８】第２の実施例における演算のフローチャートの他の一部。
【図９】従来例の構成で２台の電動機を制御する場合を示すブロック図。
【図１０】従来例における割り込みタイミング毎の処理内容を示す動作説明図。
【図１１】従来例における他の割り込みタイミング毎の処理内容を示す動作説明図。
【符号の説明】
１０１…電動機Ａ                      １０２…回転角度センサＡ
１０３…電流センサＡ                  １０４…ＰＷＭ化電力変換部Ａ
１０５…電流制御演算部                １０６…非干渉演算部
１０７…２φ→３φ変換部              １０８…空間ベクトル演算部
１０９…電流値Ａ／Ｄ変換部            １１０…３φ→２φ変換部
１１１…θｒｅＡ演算部                １１２…θｒｅ'Ａ補正演算部
１１３…ｓｉｎθｒｅ'・ｃｏｓθｒｅ'参照部
１１４…ｓｉｎθｒｅ・ｃｏｓθｒｅ参照部
１２１…電動機Ｂ                      １２２…回転角度センサＢ
１２３…電流センサＢ                  １２４…ＰＷＭ化電力変換部Ｂ
１２５…θｒｅＢ演算部                １２６…θｒｅ'Ｂ補正演算部
１３１…τＡ補正演算部                １３２…τＢ補正演算部
１４１…γＡ補正演算部                １５１…割込み周期判定部
２０１、２０２…コンペア値
２０３…ｋ制御周期目の割り込みタイミング
２０５…Ａ／Ｄ読み込みタイミングＡ    ２０６…Ａ／Ｄ読み込みタイミングＢ
２０９…電動機Ａの電流読み込み処理
２１０、２１１…電動機Ａの電流制御演算
２１２…電動機Ｂの電流読み込み処理
２１３、２１４…電動機Ｂの電流制御演算
２１５…進み角基本時間
２１６…電動機Ａの電流読み込み遅れｔｄＡ
２１７…進み角補償時間Ａ
２１８…電動機Ｂの電流読み込み遅れｔｄＢ
２１９…進み角補償時間Ｂ              ２２０…ＰＷＭタイマ
２２１…ｋ制御周期                    ２２２…ｋ＋１制御周期
２２３…ＰＷＭ出力パルスＡ            ２２４…ＰＷＭ出力パルスＢ
２３１…現在の回転角θｒｅＡ（ｋ）
２３２…電流読み込み時の回転角θｒｅ"Ａ（ｋ）
２３３…ＰＷＭ出力時の回転角θｒｅ'Ａ（ｋ）
２３４…現在の回転角θｒｅＢ（ｋ）
２３５…電流読み込み時の回転度θｒｅ"Ｂ（ｋ）
２３６…ＰＷＭ出力時の回転角θｒｅ'Ｂ（ｋ）
３０１、３０２…現在の回転角読み込み処理
３０３、３０４…角度補正処理
３０５…ｓｉｎ・ｃｏｓテーブル参照
３０６、３０７、３０８、３０９…電動機Ａの電流制御演算処理
３１０、３１１、３１２、３１３…電動機Ｂの電流制御演算処理
３１４…電圧指令処理
３１５、３１６、３１７…Ａ／Ｄ変換処理
３１８…ＰＷＭ出力処理                ３１９…初期化処理
４０１…割り込み周期
４０２…長周期側の電動機の電流制御周期
４０３…短周期側の電動機の電流制御周期
４０４…長周期側の電動機の電流制御用ＰＷＭタイマ
４０５…長周期側の電動機の電流制御用コンペア値
４０６…短周期側の電動機の電流制御用ＰＷＭタイマ
４０７…短周期側の電動機の電流制御用コンペア値
４０８…Ａ／Ｄ読み込みタイミングｉＡ（ｋ）
４０９…Ａ／Ｄ読み込みタイミングｉＢ（ｌ）
４１１…電動機Ａの電流制御演算        ４１２…電動機Ｂの電流制御演算
４１３…ＰＷＭ出力パルスＡ            ４１４…ＰＷＭ出力パルスＢ
４２０…ＰＷＭタイマ                  ５０１…電動機Ａ
７０１…短周期側電動機の電流制御周期判定
７０２…長周期側電動機の電流制御周期判定
７０４…長周期側電動機の電流制御１周期遅れ判定フラグリセット
７０５…長周期側電動機の電流制御周期判定
７０６…長周期側電動機の電流制御１周期遅れ判定フラグセット
７１１…短周期側の現在の回転角読み込み処理
７１２、７１３、７１４…短周期側電動機の補正角演算処理
７１５、７１６、７１７、７１８…短周期側電動機の電流制御演算処理
７１９…電圧指令処理
７２１…長周期側の現在の回転角読み込み処理
７２２、７２３、７２４…長周期側電動機の補正角演算処理
７２５、７２６、７２７、７２８…長周期側電動機の電流制御演算処理
７３１、７３２、７３３、７３４…Ａ／Ｄ変換処理
【図１】
0003931590.tif 000005
【図２】
0003931590.tif 000006
【図３】
0003931590.tif 000007
【図４】
0003931590.tif 000008
【図５】
0003931590.tif 000009
【図６】
0003931590.tif 000010
【図７】
0003931590.tif 000011
【図８】
0003931590.tif 000012
【図９】
0003931590.tif 000013
【図１０】
0003931590.tif 000014
【図１１】
0003931590.tif 000015