JP2007252138A - 電動機制御装置 - Google Patents
電動機制御装置 Download PDFInfo
- Publication number
- JP2007252138A JP2007252138A JP2006074752A JP2006074752A JP2007252138A JP 2007252138 A JP2007252138 A JP 2007252138A JP 2006074752 A JP2006074752 A JP 2006074752A JP 2006074752 A JP2006074752 A JP 2006074752A JP 2007252138 A JP2007252138 A JP 2007252138A
- Authority
- JP
- Japan
- Prior art keywords
- phase difference
- value
- carrier
- period
- pwm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Control Of Ac Motors In General (AREA)
- Control Of Multiple Motors (AREA)
Abstract
【課題】PWM信号で2基の三相電動機を駆動する場合、大電流スイッチングに伴う大きな電流パルスが発生し、平滑用コンデンサの負担が大きくなっていた。しかし、スイッチングのタイミングを互いにずらせる方法が提案されているがずらせる位相の自由度、あるいは回路規模の点で問題があった。本発明は出来るだけ簡単な回路規模で任意に位相調整を可能にする装置の実現を目的とした。
【解決手段】2基の電動機制御用の2組のPWM波形を生成する周期の等しい2キャリアの周期をクロックの数で計数し、一方のキャリアに対し所定の計数値だけ異なる位相差を設定し、この状態でキャリアの周期単位で計数値を積算し、所望の位相差となるように相互の位相関係をずらせる方法としている。
【選択図】図1
【解決手段】2基の電動機制御用の2組のPWM波形を生成する周期の等しい2キャリアの周期をクロックの数で計数し、一方のキャリアに対し所定の計数値だけ異なる位相差を設定し、この状態でキャリアの周期単位で計数値を積算し、所望の位相差となるように相互の位相関係をずらせる方法としている。
【選択図】図1
Description
本発明は、2基の電動機に対して、PWM信号によりこれら電動機の駆動制御を行う装置に関し、特に、これら2基の電動機制御用PWM信号を生成するための二つのキャリア間の位相差を調整可能とする電動機制御装置に関する。
直流電源からの電力で2基の三相電動機(以下、電動機と略記)をPWM信号により制御駆動する場合、直流電源側に設置されている供給電流の平滑用としてコンデンサが電源出力端子側とグランド側との間に接続されている。このコンデンサは電動機のPWM制御を行う際に発生するリップル電流成分の吸収も行う。このリップル電流は2基の電動機の駆動電流の和に比例するものであり、したがって、駆動電流が大きい動力用電動機の駆動においてはリップル電流も大きくなり、これに伴いコンデンサにおけるリップル耐量を大きくする必要があるため大容量コンデンサが必要となっていた。
この対策として、下記「特許文献1」においては、2基の電動機制御装置それぞれのPWM制御信号生成用キャリアの位相差を電動機駆動状態により切り換えることにより、直流電源側に設置されているコンデンサのリップル電流を低減する手段が開示されている。
すなわち、下記「特許文献1」においては、キャリア生成用として第一および第二の2基の電動機に対して、第一および第二の三角波発生器が設置されている。第二の三角波発生器は第一の三角波発生器と同期しており、かつ90°の位相差を有している。ここで、これら2つの三角波発生器出力部に切替スイッチを設け、2基の電動機のうち一方が力行運転、他方が回生運転を行う場合は2つの三角波発生器からのキャリアの位相差を0°、すなわち、第1または第2何れか一方の三角波発生器を2基の電動機制御装置共通に使用する接続とする。また、両方の電動機が共に力行運転または回生運転を行う場合はキャリアの位相差を90°、すなわち、一方の電動機に第一の三角波発生器により得られたキャリアを、他方の電動機に第二の三角波発生器により得られたキャリアを使用するように電動機の動作状態によりスイッチを切替える構成としている。
また、下記「特許文献2」では、2基の電動機を駆動制御する為に備えられた2基の電動機制御装置において、キャリアの位相差を任意に可変する手段が開示されている。この手段においては、2台の電動機を制御駆動するPWM信号を生成する2系統のPWMタイマを用いて構成している。
この場合、CPUを1台用いて構成しようとすると、2系統の電動機駆動処理(以下、処理と略記する)を同時に行うことは出来ず、処理の割り込み優先順位が等しい場合、予め定められた割り込みのタイミングで先に来た方から処理が開始される。このため、後から来た方の処理は現在進行中の先着割り込みの処理終了後に開始しなければならない。すなわち、後着の割り込み処理を開始するためには、後着の処理を行うPWMタイマのカウント値が先着処理に対してどれだけずれているかを知る必要がある。このため、先着割り込み処理の先頭のタイミングで後着の処理を行うPWMタイマのカウント値を読み出し、そのカウント値とキャリア周期とから位相差を求め、これによりキャリア周期を可変調整する事で任意の位相差に制御することが出来る。ただし、この方法においてはPWMタイマのカウント値の読み出しが可能な特殊なCPUが必要である。
特開2002−300800号公報
特開2005−160185号公報
この場合、CPUを1台用いて構成しようとすると、2系統の電動機駆動処理(以下、処理と略記する)を同時に行うことは出来ず、処理の割り込み優先順位が等しい場合、予め定められた割り込みのタイミングで先に来た方から処理が開始される。このため、後から来た方の処理は現在進行中の先着割り込みの処理終了後に開始しなければならない。すなわち、後着の割り込み処理を開始するためには、後着の処理を行うPWMタイマのカウント値が先着処理に対してどれだけずれているかを知る必要がある。このため、先着割り込み処理の先頭のタイミングで後着の処理を行うPWMタイマのカウント値を読み出し、そのカウント値とキャリア周期とから位相差を求め、これによりキャリア周期を可変調整する事で任意の位相差に制御することが出来る。ただし、この方法においてはPWMタイマのカウント値の読み出しが可能な特殊なCPUが必要である。
以上述べたように、2つの電動機のキャリアの位相を互いにずらせる従来公知の電動機制御装置では、以下のような問題点があった。
問題点1:前記「特許文献1」に記載の従来の電動機制御装置においては、第一の三角波発生器で発生させる三角波Aに対し、第二の三角波発生器で発生させる三角波Bは90°の位相差で同期しており、一方の電力変換装置では三角波Aを使用するのに対し、他方の電力変換装置では電動機の動作状態によってAまたはBどちらの三角波を使用するかをスイッチを用いて切替えるという構成で、リップル電流の影響を低減する構成としていた。この構成においては、キャリアの位相差を0°と90°にしか可変設定する事ができず、これ以外の任意の位相差に可変する事ができないという問題があった。
問題点2:1つのCPUを用いて、2つのキャリアの位相差を任意に制御する場合、PWMタイマのカウント値とキャリア周期とから位相差を求めるという構成になっていたため、PWMタイマのカウント値の読み出し端子を有しない、すなわちCPU内蔵のPWMタイマを構成しているレジスタにアクセスすることが出来ないCPUを1台用いて電動機制御装置を構成すると、2つのキャリアの位相差を求める事ができない為、任意の位相差を制御する事ができないという問題があった。
すなわち、PWMタイマのカウント値を読み出すことができないCPUを1系統のみ用いて2つのキャリアに対して任意の位相差を与えるためには、少なくとも2系統のCPUを含む電動機制御系が必要となり構成規模が大きく複雑なものとなる問題があった。このため、本発明においては電動機制御系を任意の位相差に制御することを可能とした電動機制御装置の提供を目的とした。
上記目的を達成するために、本発明においては、PWM信号により2基の電動機の駆動制御を行う装置において、一方のキャリアの周期を所定量変更し、他方のキャリアの周期は変更することなく、電動機制御信号の処理が実行されるキャリアの周期毎に周期設定値(カウント値)を積算する。これら積算した2つの周期の差が予め指定されている位相差に対応する値となったところで周期を所定量変更したキャリアの周期を変更前の状態に戻すことにより1系統のCPUで所望の位相差を実現している。
本発明により、新規にCPU、あるいは信号処理回路を増設することなく、PWMタイマのカウント値を読み出すことが出来ないCPU1系統のみで、各電動機のキャリア信号の同期および任意の位相に可変することを可能にした。
本発明は例えば車両駆動用電動機と、発電用電動機との2電動機を有するハイブリッド式自動車等の2電動機を備えたシステムに好適なものであり、これら2電動機をそれぞれPWM制御する際に用いられる各キャリア間の位相調整の方法およびその位相調整装置の構成を以下実施の形態として図面に基づいて詳述する。
図1に2つの3相同期電動機A104およびB105の電流フィードバック制御系ブロック図を示す。なお、2基の電動機(電動機A104および電動機B105)の制御ブロックは互いに等しい構成を有している事から以下においては電動機A104を車両駆動系としてこれを中心に説明する。また以下においては、電動機A104の系統のパラメータについてはAを、電動機B105の駆動系のパラメータはBを付記する。図1において、駆動電流のPI(比例積分)制御部101では、外部より指令されるd軸電流指令値Id*Aとq軸電流指令値Iq*A、および動作中の電動機A104から3相2相変換部109を介してフィードバックされてきたd軸電流IdAとq軸電流IqAの各電流値により、電動機A104を駆動するd軸電圧指令値Vd*Aとq軸電圧指令値Vq*Aとを算出する。
図1に2つの3相同期電動機A104およびB105の電流フィードバック制御系ブロック図を示す。なお、2基の電動機(電動機A104および電動機B105)の制御ブロックは互いに等しい構成を有している事から以下においては電動機A104を車両駆動系としてこれを中心に説明する。また以下においては、電動機A104の系統のパラメータについてはAを、電動機B105の駆動系のパラメータはBを付記する。図1において、駆動電流のPI(比例積分)制御部101では、外部より指令されるd軸電流指令値Id*Aとq軸電流指令値Iq*A、および動作中の電動機A104から3相2相変換部109を介してフィードバックされてきたd軸電流IdAとq軸電流IqAの各電流値により、電動機A104を駆動するd軸電圧指令値Vd*Aとq軸電圧指令値Vq*Aとを算出する。
これらd軸およびq軸に関する電圧指令値VdAおよびVqAは2相3相変換部102により3相電圧指令値(Vu*A,Vv*A,Vw*A)に変換される。一方、位相制御部110においては電動機A104および電動機B105をPWM制御するための2つのキャリアをそれぞれ生成する部分を含むが、これら両キャリアは外部から位相差指令値入力手段115を介して入力された位相差指令値Dに基づく位相差を有している。これらキャリアはPWM制御部103において前記の3相電圧指令値(電動機A用のVu*A,Vv*A,Vw*A、および電動機B用のVu*B,Vv*B,Vw*B)によりPWM変調され、これによりPWM制御信号を形成し、それぞれ電動機A104および電動機B105を駆動するPWM波形の電動機駆動電圧(VuA,VvA,VwAおよびVuB,VvB,VwB)に変換される。
これら電動機駆動電圧(VuA,VvA,VwAおよびVuB,VvB,VwB)は電力変換インバータ部111において電力変換され電動機駆動電流(IuA,IvA,IwAおよびIuB,IvB,IwB)としてそれぞれ電動機A104、電動機B105に供給され各電動機を駆動する。ここで、各電動機A104およびB105には回転角検出器A106および回転角検出器B107がそれぞれ結合されており、これら回転角検出器から電動機回転子の回転角を検出し、これにより得られた回転角の瞬時値はθ演算部108で角度情報(θre’A,θre’BおよびθreA,θreB)として演算され2相3相変換部102および3相2相変換部109において制御信号の相変換を行う際における制御信号間の同期関係の設定を行う。なお、reで示される角度θは電動機回転子の回転角度測定時点における回転角であり、re’で示される角度はフィードバックされてくる所定の時間後の回転各の推定値である。
PWM制御部103出力である電動機駆動電圧(VuA,VvA,VwAおよびVuB,VvB,VwB)は電動機駆動電流(IuA,IvA,IwAおよびIuB,IvB,IwB)に対応しており、これら電動機駆動電圧は電力変換を行うインバータ部111において電力変換され電動機駆動電圧に対応する電動機駆動電流に変換される。一方、電動機駆動電流値(IuA,IvA,IwA)は電流センサ112により検出され、さらに図示しないがAD変換器によりディジタル量に変換された後、3相2相変換部109により電動機のd軸電流/q軸電流(IdA,IqAおよびIdB,IqB)に変換され、前記の電流PI制御部101にフィードバックされる。
以上説明した信号処理系で、インバータA111、電動機A104,B105および回転角検出器106,107を除くこれら以外の信号処理系は全て単一のCPU113で構成することが出来る。
(実施の形態1)
本発明は、このような2つの3相電動機A104およびB105を、PWM制御する電動機制御装置に適用するもので、2基の電動機A104およびB105をそれぞれPWM制御する為に設けた周期が等しい2つのキャリア(三角波)の位相差を任意の値に可変することが出来、さらにこれを単一のCPUでの実現を可能とした装置を提供するものである。
図2はPWMタイマ動作開始時からの様子を図示している。ここで、PWMタイマTAおよびTBは位相制御部110内で電動機A104およびB105の制御系それぞれに対応して設置されており、電動機A104の制御系に用いるPWMタイマをPWMタイマTA、電動機Bの制御系に用いるPWMタイマをPWMタイマTBと記す。PWMタイマTAおよびPWMタイマTBにおいては、図示しないが例えばCPU付属のクロック発生器からのクロック信号をカウンタでカウントして、図示しないがCPU付属のレジスタ上に積算(カウントアップ)し、例えば予め定められた値に達したところで減算(カウントダウン)に移り、カウンタの内容が0になるまでカウントダウンを継続する。これを繰り返すことによりPWMのキャリア波形となる三角波を形成している。図2においては、クロック周波数を24MHz、PWMタイマTAの出力波形、およびPWMタイマTBの出力波形のキャリア周期を共に400μsecに設定し、PWMタイマTAおよびPWMタイマTBの周期設定積算値の初期値を4800カウントに設定した場合である。なお、上記クロックはCPU内蔵のクロック発生器に限定するものではなく、クロック周波数がキャリア周波数に比べて十分に高いものであれば適用可能である。
本発明は、このような2つの3相電動機A104およびB105を、PWM制御する電動機制御装置に適用するもので、2基の電動機A104およびB105をそれぞれPWM制御する為に設けた周期が等しい2つのキャリア(三角波)の位相差を任意の値に可変することが出来、さらにこれを単一のCPUでの実現を可能とした装置を提供するものである。
図2はPWMタイマ動作開始時からの様子を図示している。ここで、PWMタイマTAおよびTBは位相制御部110内で電動機A104およびB105の制御系それぞれに対応して設置されており、電動機A104の制御系に用いるPWMタイマをPWMタイマTA、電動機Bの制御系に用いるPWMタイマをPWMタイマTBと記す。PWMタイマTAおよびPWMタイマTBにおいては、図示しないが例えばCPU付属のクロック発生器からのクロック信号をカウンタでカウントして、図示しないがCPU付属のレジスタ上に積算(カウントアップ)し、例えば予め定められた値に達したところで減算(カウントダウン)に移り、カウンタの内容が0になるまでカウントダウンを継続する。これを繰り返すことによりPWMのキャリア波形となる三角波を形成している。図2においては、クロック周波数を24MHz、PWMタイマTAの出力波形、およびPWMタイマTBの出力波形のキャリア周期を共に400μsecに設定し、PWMタイマTAおよびPWMタイマTBの周期設定積算値の初期値を4800カウントに設定した場合である。なお、上記クロックはCPU内蔵のクロック発生器に限定するものではなく、クロック周波数がキャリア周波数に比べて十分に高いものであれば適用可能である。
図1に示した電動機制御系においては制御信号の処理(以下、処理と略記する)の開始時点を、図2に示すように2つのPWMタイマの谷割り込みで処理Aと処理Bの動作開始を行うとしている。なお、この動作開始を行う時点は谷割り込みに限定するものではない。すなわち、2つのPWMタイマから得られるキャリアである三角波の波形上で、例えばキャリア波形の谷部等、互いに対応する同位相の位置であれば当該三角波上であれば何処でもよい。ここで処理Aおよび処理Bはそれぞれ電動機A104および電動機B105に対する駆動電流を含む制御信号処理に対応している。PWMタイマTAの周期設定積算値SA、PWMタイマTBの周期設定積算値SBのカウント値はキャリア(三角波)1周期長、すなわち周期設定値NP(カウント値)をキャリア1周期毎に毎回加算して求めている。この周期設定値NP(カウント値)はPWMタイマクロック周波数fcとキャリア周期Tcから下記(数1)式で求める事ができる。
NP=fc×Tc/2 (数1)
周期設定積算値SAおよびSBは、(数1)式で求めた周期設定値NPと前回(着目する周期の1つ前の周期)の周期設定積算値NS(P−1)とから下記(数2)式で求める事ができる。
周期設定積算値SAおよびSBは、(数1)式で求めた周期設定値NPと前回(着目する周期の1つ前の周期)の周期設定積算値NS(P−1)とから下記(数2)式で求める事ができる。
SA(またはSB)=NS(P−1)+NP (数2)
ここで、前記のように、PWMタイマクロック周波数は24MHzであり、キャリア周期は400μsecであるから、(数1)式から周期設定値NPはPWMタイマを構成しているカウンタ出力で4800カウントとなる。したがって、(数2)式から周期設定積算値SAおよびSBは、図2に示すPWMタイマTAの周期設定積算値SAおよびPWMタイマTBの周期設定積算値SB積算増加分は4800カウントの倍数で与えられることになる。なお、本実施の形態1では単一CPUを用いているため処理Aと処理Bとは同時に行うことは出来ず、図2のようにこれら処理Aと処理Bとが重ならない位置で処理を行うことになる。
ここで、前記のように、PWMタイマクロック周波数は24MHzであり、キャリア周期は400μsecであるから、(数1)式から周期設定値NPはPWMタイマを構成しているカウンタ出力で4800カウントとなる。したがって、(数2)式から周期設定積算値SAおよびSBは、図2に示すPWMタイマTAの周期設定積算値SAおよびPWMタイマTBの周期設定積算値SB積算増加分は4800カウントの倍数で与えられることになる。なお、本実施の形態1では単一CPUを用いているため処理Aと処理Bとは同時に行うことは出来ず、図2のようにこれら処理Aと処理Bとが重ならない位置で処理を行うことになる。
図3は、PWMタイマTAとPWMタイマTBとが等しい周期Tで動作しており、PWMタイマTAに対してPWMタイマTBが90°遅れの位相差である状態を図示している。この図3を例に位相差δを算出する手順を説明する。図3において、同一時刻におけるPWMタイマTAの周期設定積算値SAとPWMタイマTBの周期設定積算値SBの差および前記の周期設定値NP(これらは何れもタイマでクロックを計数したカウント数)とから、両キャリアの谷の位置がキャリア周期に対してどれだけずれているかの割合を求め、それを角度に変換する事から位相差の角度δを求める。
すなわち、図3における位相差δは、処理AにおけるPWMタイマTAの計数スタートとなる谷位置でのカウント値M(例えば図3においては13200カウントとしている)と、PWMタイマTAと同じスタート時刻から読みはじめた処理Bのスタート時刻におけるカウント値N(図3においては、PWMタイマTAよりも90°の位相遅れ、すなわち処理Bはカウント数にして1200カウント加算されたカウント値である14400カウントからスタート)との差と、キャリア周期設定値、すなわち(数1)式で求められた周期設定値NPとから下記(数3)式より求める事ができる。
位相差δ={(N−M)/NP}×360° (数3)
ここで、位相可変制御を行うプロセスについて説明する。すなわち、PWMタイマTAに対しPWMタイマTBの位相差δが0°の状態から90°遅れの状態に変更する様子を図4および図5に示す。図4においては、図1の位相制御部110においてPWMタイマTAのキャリア周期のみを変更することにより、両PWMタイマTAおよびTB間の位相差δを0°から90°に変更する様子を示している。
ここで、位相可変制御を行うプロセスについて説明する。すなわち、PWMタイマTAに対しPWMタイマTBの位相差δが0°の状態から90°遅れの状態に変更する様子を図4および図5に示す。図4においては、図1の位相制御部110においてPWMタイマTAのキャリア周期のみを変更することにより、両PWMタイマTAおよびTB間の位相差δを0°から90°に変更する様子を示している。
図4において、縦2本線マークを付した間隔で示した周期TにPWMタイマTAの周期計測の最小単位α(例えば、クロック1カウント分)を加え、四角マークを付した間隔である周期(T+α)を位相差形成用周期とする。図4において左端のキャリアの開始時点でのPWMタイマTAの周期設定積算値SAを9600としている。この第1番目キャリア波形(A)の周期は4800であり、第2番目のキャリア波形(B)以後の周期すなわち位相差形成用周期は4801である。この周期において図6のフロー図に示す以下の一連の処理が実行される。
先ず、装置全体の電源が投入されたところからスタートし(START)、本実施の形態1では谷割り込みで処理が開始されるとしているから、キャリアの谷の部分が来た所で処理がスタートする(ステップS601)。スタート直後に先ず以後の処理の初期条件となる周期設定積算値を算出する。図4の例ではPWMタイマTAおよびTBの周期設定積算値の初期値は共に9600カウントとしている。
次に、処理中フラグが“0”であるか否かを判定する(ステップS602)。ここで、処理中フラグとは「キャリア同期処理中フラグ」と称すべきもので、両キャリアの位相差を位相差指令値に設定変更する処理が実行中であることを示すフラグで、このフラグが“1”であることは、位相差設定変更の処理が実行中であることを示すものである。
処理中フラグが“1”の場合は(ステップS602−NO)、位相差設定変更処理が現在実行中であるからステップS608に進み、現在における算出された位相差と位相差指令値とを比較し、位相差指令値に達していなければ(ステップS608−NO)処理中フラグに“1”を立てた(ステップS609)後、当該時点での電動機の電流制御を行うための電流演算処理を行い(ステップS612)、当該周期(周期A)における処理を終え、次の谷割り込みが来るのを待つためスタート点に戻る(RETURN→ステップS601)。
図6で処理中フラグが“0”の場合は(ステップS602−YES)、位相差設定変更処理が実行されていない状態であるから、ステップS603に進みPWMタイマTAまたはTBの何れを基準として位相測定を行うかを指定する。以上の準備動作を終えたところで目標とする位相差の指令値Dを図1における位相差入力手段115を介して読み込む(ステップS604)。この位相差指令値Dの読み込みを実行したところでPWMタイマTAおよびTBの周期が等しいか否かを判定する。
上記周期が等しくなければ(ステップS605−NO)位相差調整処理は実行不能であるから、現状の条件で電動機を駆動するための電流演算処理を行い(ステップS612)、次の谷割り込みが来るのを待つ(RETURN→ステップS601)。PWMタイマTAおよびTBの周期が等しい場合(ステップS605−YES)は、ステップS606に進み、PWMタイマTBを基準にする場合はPWMタイマTAの周期を(T+α)に設定する(ステップS606)。なお、この設定された周期(T+α)は算出位相差が位相差指令値に達するまで保持される(ステップS610)。したがって、PWMタイマTAおよびPWMタイマTB間の位相差は1周期毎の位相差形成用周期の積算でαづつ増加することになる。
次に位相差演算を実行し(ステップS607)、これにより得られた算出位相差と位相差指令値Dとが一致するか否かを判定する。一致しない場合は(ステップS608−NO)さらに位相差指令値に近づけるための演算を継続する必要があり、処理中フラグを“1”として(ステップS609)、電動機駆動電流値を算出する演算処理を行い(ステップS612)、次の割り込み処理を行うためPWMタイマ出力波形の谷が来るのを開始点で待つ(RETURN→ステップS601)。
上記の算出位相差と位相差指令値Dとが一致する場合は(ステップS608−YES)、これ以上この一致判定を行う必要は無いため処理中フラグは“0”にクリアし(ステップS610)、PWMタイマTAの周期を現在の(T+α)からPWMタイマTBと同じTに戻す(ステップS611)。これら各処理を実行した後、電動機駆動の電流値設定のための演算を行い次の割り込み処理を行うためのPWAタイマの谷が来るのを待つ(ステップS612)。以上(START)から(RETURN)までの一連の処理が各周期毎に繰り返されて位相差設定値の変更が行われる。
以上のフロー図による説明においてはPWMタイマTAの周期を可変にし、PWMタイマTBを固定した場合について説明したが、PWMタイマBを可変しても同じ要領で行うことが出来る。さらにはPWMタイマTAを大きく可変してPWMタイマTBを小さく可変したり、あるいは逆にPWMタイマTAを小さく可変してPWMタイマTBを大きく可変したりすることにより位相を変更する時間を短くすることも可能である。また、2つのキャリア周期が等しい場合に限らず、一方の周期に対し他方の周期が整数倍である場合、各キャリアの谷が重なる点を位相差0°としてキャリア周期の小さい方を基準に位相可変を行っても良い。
本実施の形態1による手順の導入により、新規にCPUを増設したり、信号処理回路を追加設置したりすること無く、また、PWMタイマのカウント値を読み出すことが出来ないCPUに対しても、単一のCPUのみの使用で各電動機の制御信号となる2キャリアの同期および任意位相差への可変を実現することが出来るようになる。
(実施の形態2)
実施の形態1で述べた各キャリア周期の設定値NPを電動機A104およびB105の処理の実行毎に加算し、それぞれの加算値の差から位相差を算出する場合、例えば両PWMタイマ間のスタート時におけるタイミングのずれ等で、実際の割り込みタイミングにおける位相差(以下、実位相差と略記する)と、上記(数1)式および(数2)式により得られた周期設定値の積算による算出位相差との間に誤差が生じたとしても検知不能であり、そのずれた状態のまま以後の制御を行う様になっていたが、本実施の形態2においてはこのずれを補正する手順について説明する。
実施の形態1で述べた各キャリア周期の設定値NPを電動機A104およびB105の処理の実行毎に加算し、それぞれの加算値の差から位相差を算出する場合、例えば両PWMタイマ間のスタート時におけるタイミングのずれ等で、実際の割り込みタイミングにおける位相差(以下、実位相差と略記する)と、上記(数1)式および(数2)式により得られた周期設定値の積算による算出位相差との間に誤差が生じたとしても検知不能であり、そのずれた状態のまま以後の制御を行う様になっていたが、本実施の形態2においてはこのずれを補正する手順について説明する。
図7に2つのPWMタイマTAおよびTBの動作開始タイミングが何らかの原因でずれて初期位相誤差が生じている場合を図示する。図7においてはこの初期位相誤差として例えば3°の誤差を生じたとしており、また、PWMタイマTAとPWMタイマTBとは等しい周期Tで動作している場合を示す。この様な状態の時、(数3)式で求める計算上の位相差δは0°であり、実際は3°の初期位相誤差があるにも拘わらず計算処理上では位相差がないことになり、正確な位相差に制御する事ができないことになるためこれを補正する必要がある。
図8はPWMタイマTAとPWMタイマTBの位相差が0°である状態を図示している。1つのCPUで2基の電動機AおよびBを制御する信号の処理を行う場合、これら2つの処理の割り込み優先順位が等しく設定されている場合は同時に実行することができない為、電動機A用の処理Aが先に実行され、続いて処理Bが実行される直列処理を行う場合の例を示している。この場合、処理Aと処理Bそれぞれの処理開始の間隔を計測するためにフリーランタイマFTを設置する。フリーランタイマFTは最初0カウントからカウントアップし、所定の値に達すると0にリセットし、また同じ所定の値までカウントアップを繰り返すのこぎり波発生の構成としている。
図8においては、直列処理により処理B開始のタイミングが実際の処理開始の割り込みが行われたタイミングよりも「遅れ」の分だけ遅いタイミングのフリーランタイマFTの値を取り込むことになることを示している。このため、位相差が正しく算出できない。すなわち、両PWMタイマのキャリア間の位相差が0°に近く、直列処理を行わない場合に処理Aおよび処理Bが重なるような領域付近である場合、「遅れ」(カウント値V−カウント値U)の分だけフリーランタイマFTを使用して位相差を正確に求める事ができず、図7の場合のような初期位相誤差(本実施の形態2では3°)がある場合これを見逃してしまい、正確な位相差が求められない場合がある。以上の事からキャリア周期の周期設定積算値の補正は、両電動機の制御信号の処理が重ならない位相差にする必要があることが分かる。
この補正処理を行うための補正値Cを求める方法を図9、図10に示す。
図9は、PWMタイマTAおよびTBの動作開始直後に補正演算を行う様にする方法を示している。いま、例えば、両PWMタイマの初期設定においてPWMタイマTAとPWMタイマTBとの位相差が、PWMタイマ動作開始時点で周期Tを設定し、次の周期で計算上位相差が90°となる様に、周期Tに係数G(図9においてはG=1.75、すなわち動作開始最初のキャリア周期は1.75Tとなる)を乗ずる(図9で丸印を付した間隔)。これにより、PWMタイマTA動作開始時の周期設定積算値SAの初期値を例えば、本実施の形態における例の場合、キャリアの1周期に等しい4800カウントとすれば、周期1.75Tは8400カウントに相当するから、この最初の1周期終了時におけるPWMタイマTAの周期設定積算値は13200カウントとなる。このPWMタイマTAにおいて最初のキャリア1周期が終了した時点(PWMタイマTAにおいて13200カウント)から以後のPWMタイマTAのキャリア周期をPWMタイマTBの周期T(縦二本線マークを付した間隔)と等しい値に戻し、(数3)式で求める計算値位相差δが90°の状態で同期させて補正値を求める。
図9は、PWMタイマTAおよびTBの動作開始直後に補正演算を行う様にする方法を示している。いま、例えば、両PWMタイマの初期設定においてPWMタイマTAとPWMタイマTBとの位相差が、PWMタイマ動作開始時点で周期Tを設定し、次の周期で計算上位相差が90°となる様に、周期Tに係数G(図9においてはG=1.75、すなわち動作開始最初のキャリア周期は1.75Tとなる)を乗ずる(図9で丸印を付した間隔)。これにより、PWMタイマTA動作開始時の周期設定積算値SAの初期値を例えば、本実施の形態における例の場合、キャリアの1周期に等しい4800カウントとすれば、周期1.75Tは8400カウントに相当するから、この最初の1周期終了時におけるPWMタイマTAの周期設定積算値は13200カウントとなる。このPWMタイマTAにおいて最初のキャリア1周期が終了した時点(PWMタイマTAにおいて13200カウント)から以後のPWMタイマTAのキャリア周期をPWMタイマTBの周期T(縦二本線マークを付した間隔)と等しい値に戻し、(数3)式で求める計算値位相差δが90°の状態で同期させて補正値を求める。
図10は図9の続きで、図9におけるPWMタイマTAの周期設定積算値SAが13200カウントの時点と、図10におけるPWMタイマTAの周期設定積算値が13200カウントとは同一時刻を示している。もし、PWMタイマTAとPWMタイマTBとが位相差0°で動作開始しておれば、PWMタイマTAの最初の1周期を1.75TとすることでフリーランタイマFTで計測した実位相差も90°相当のカウント値となる筈である。しかし本実施の形態では図9に示したように動作開始の時点ですでに3°の初期位相のずれが存在するため、図10(図9においても同じ)において処理A1および処理B1の位相差は計算上では90°となるが、フリーランタイマFTによる実測結果は93°となる。
電動機A104と電動機B105の正味の位相差を求める為に、それぞれのPWMタイマの谷割り込みでそれぞれの処理がスタートするようにし、そのタイミングにおけるフリーランタイマFTの値を取り込む。なお、フリーランタイマFTは両PWMタイマTAおよびTBが共通に使用するものであり、且つそのクロックはいずれのPWMタイマに対しても独立に動作させることも可能である。図10において、PWMタイマTAのキャリア周期が1.75Tの部分が終了したタイミング(PWMタイマTAで13200カウント)でのフリーランタイマFTのカウント値をM0、この時点を起点とした周期T終了時点でのフリーランタイマFTのカウント値をM1、PWMタイマTBの処理B1の開始時点におけるフリーランタイマFTのカウント値をN1とし、電動機A104およびB105の処理開始のタイミングで取り込んだフリーランタイマ値の差(カウント値N1−カウント値M1)と、キャリア1周期分のフリーランタイマ値(カウント値M1−カウント値M0)とから、各キャリアの谷がキャリア周期に対してどれだけずれているかの割合を求め、それを角度に変換する事から実位相差を求める。
すなわち、図10において、処理A0のタイミング(PWMタイマTA13200カウント)で取り込むフリーランタイマFTのカウント値M0と、処理A1で取り込むフリーランタイマFTのカウント値M1と、処理B1で取り込むフリーランタイマFTのカウント値N1とから、実位相差δ’は下記(数4)式で求める事ができる。
δ’={(N1−M1)/(M1−M0)}×360° (数4)
PWMタイマ周期設定積算値に対する補正値は、(数3)式で求めた初期誤差分を含まない位相差、すなわち位相差指令値Dとして与えられた所望の位相差δと(数4)式で求めた実位相差δ’との差と、キャリア1周期Tに対応するカウント値であるカウント値M1とカウント値M0との差から、補正値Cは下記(数5)式により求める事ができる。
PWMタイマ周期設定積算値に対する補正値は、(数3)式で求めた初期誤差分を含まない位相差、すなわち位相差指令値Dとして与えられた所望の位相差δと(数4)式で求めた実位相差δ’との差と、キャリア1周期Tに対応するカウント値であるカウント値M1とカウント値M0との差から、補正値Cは下記(数5)式により求める事ができる。
C={(δ’−δ)/360°}×(M1−M0) (数5)
PWMタイマ周期設定積算値の補正は、PWMタイマB周期設定積算値SBと(数5)式で求めた補正値Cとから、下記(数6)式により実行することができる。
PWMタイマ周期設定積算値の補正は、PWMタイマB周期設定積算値SBと(数5)式で求めた補正値Cとから、下記(数6)式により実行することができる。
補正後PWMタイマB周期設定積算値
=PWMタイマB周期設定積算値SB+補正値C (式6)
以上の補正を行った後、この補正値から出発して以後の周期設定積算処理を継続すれば、2つのキャリア間の正確な位相差を維持することが出来るようになる。本実施の形態2では2基の電動機を制御する処理が重なる場合の動作を開始させる時に補正する手順について述べたが、電動機A104およびB105に対する2つの処理が重なる位相差0°付近以外の場合においても、本補正の手順によって随時補正演算を行う事も当然可能である。また、CPU113においてPWMタイマのカウント値を読み出す事ができる場合は、フリーランタイマFTのカウント値ではなく、PWMタイマのカウント値をそのまま用いて補正を行う事も可能である。
=PWMタイマB周期設定積算値SB+補正値C (式6)
以上の補正を行った後、この補正値から出発して以後の周期設定積算処理を継続すれば、2つのキャリア間の正確な位相差を維持することが出来るようになる。本実施の形態2では2基の電動機を制御する処理が重なる場合の動作を開始させる時に補正する手順について述べたが、電動機A104およびB105に対する2つの処理が重なる位相差0°付近以外の場合においても、本補正の手順によって随時補正演算を行う事も当然可能である。また、CPU113においてPWMタイマのカウント値を読み出す事ができる場合は、フリーランタイマFTのカウント値ではなく、PWMタイマのカウント値をそのまま用いて補正を行う事も可能である。
以上、本実施の形態2によりフリーランタイマによる実測値に基づきPWMタイマのキャリア周期積算値を補正することで、各PWMタイマの動作開始のタイミング不一致による初期位相誤差のずれを補正し、正確な位相差に制御することが可能となる。
なお、本実施の形態2においても実施の形態1と同様にPWMタイマTAとPWMタイマTBとの何れを可変してもよく、その他適宜変更可能である。
なお、以上の各実施の形態においては電動機を2台とした例について説明したが、これは2台以上複数台の電動機制御系にも拡張し得るものである。この場合、基準となるキャリアの周期に対して他のキャリアは位相差形成用の周期を所望の位相差が得られるまで継続しなければならない。
101:PI制御部 102:2相3相変換部
103:PWM制御部 104:電動機A
105:電動機B 106、107:回転角検出器
108:θ演算部 109:3相2相変換部
110:位相制御部 111:電力変換インバータ部
112:電流センサ 113:CPU
103:PWM制御部 104:電動機A
105:電動機B 106、107:回転角検出器
108:θ演算部 109:3相2相変換部
110:位相制御部 111:電力変換インバータ部
112:電流センサ 113:CPU
Claims (2)
- 2基の電動機をPWM信号により制御駆動する電動機制御装置において、
該2基の電動機のPWM制御用として第1および第2の2つのキャリアの周期をクロックのカウント値として設定し、
該2つのキャリアにおいて当初の周期は同一で、且つ互いに同期しており、
前記第2のキャリア周期と同一の第1のキャリアの周期のカウント値に対して予め定められた時間幅に対応したカウント値を付加して位相差形成用周期設定値をカウント値として求め、
前記2つのキャリア間に指令値として与えられた所定の位相差を設定するに際し、前記第2のキャリアの周期毎に、前記周期設定値を積算して第2のキャリアに対する周期設定積算値とし、
前記第1のキャリアに関しては、当該第1のキャリアの周期毎に前記位相差形成用周期設定値を積算し、
同一回数における前記周期設定値の積算値と、前記位相差形成用周期設定値の積算値との差から前記2つのキャリアの位相差を算出し、
前記位相差の値が前記指令値として与えられた所定の位相差に対応するカウント値となった次の周期から前記第1のキャリアにおける前記位相差形成用周期をもとの周期、すなわち第2のキャリアと同じ周期に戻すことにより、第1のキャリアと第2のキャリア間に任意の位相差に設定することを特徴とする電動機制御装置。 - 請求項1に記載の2電動機構成の電動機制御装置において、
前記第1および第2の2つのキャリアを生成する第1および第2の2つのPWMタイマを有し、
該2つのPWMタイマが共通に使用するフリーランタイマを設置し、
前記第1のPWMタイマが動作開始すなわち前記第1の電動機制御信号の処理を開始した第1周期目においては、前記第1のキャリアの周期に前記指令値として与えられた所望の位相差を形成させる所定の係数を乗算し、該1周期目に続く第2周期目以後においては前記係数を乗算した周期を乗算前における前記第1のキャリアの周期に戻すことにより、前記2つのキャリア間の位相差が、前記第2のキャリアが有する初期位相誤差を含む実位相差において前記指令値として与えられた所望の位相差になるようにし、
前記第2のPWMタイマに対応する前記第2のキャリアの周期は前記当初の周期を維持し、
前記指令値として与えられた角度表示された所望の位相差をδ、前記初期位相誤差を含む角度表示された実位相差をδ’とし、前記2つのキャリアにおける前記当初の1周期の長さをTCとして下記数式により前記初期位相誤差を含む第2のキャリアのカウント値に対する補正値Cを下式により求め、
C={(δ’−δ)/360°}×TC
該補正値Cを前記第2のキャリアの周期毎に積算される周期設定積算値に加算することにより第2のPWMタイマの周期設定積算値を補正することを特徴とする電動機制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006074752A JP2007252138A (ja) | 2006-03-17 | 2006-03-17 | 電動機制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006074752A JP2007252138A (ja) | 2006-03-17 | 2006-03-17 | 電動機制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007252138A true JP2007252138A (ja) | 2007-09-27 |
Family
ID=38595856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006074752A Pending JP2007252138A (ja) | 2006-03-17 | 2006-03-17 | 電動機制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007252138A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010110116A (ja) * | 2008-10-30 | 2010-05-13 | Ricoh Co Ltd | モータ駆動装置 |
JP2012182891A (ja) * | 2011-02-28 | 2012-09-20 | Mitsubishi Heavy Ind Ltd | インバータ制御装置 |
WO2018056306A1 (ja) * | 2016-09-20 | 2018-03-29 | キヤノン株式会社 | モータ制御装置 |
CN110277941A (zh) * | 2019-06-28 | 2019-09-24 | 东南大学 | 永磁电机、转子位置控制方法、装置 |
US11031898B2 (en) | 2017-11-30 | 2021-06-08 | Mitsubishi Electric Corporation | Power converter control device |
-
2006
- 2006-03-17 JP JP2006074752A patent/JP2007252138A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010110116A (ja) * | 2008-10-30 | 2010-05-13 | Ricoh Co Ltd | モータ駆動装置 |
JP2012182891A (ja) * | 2011-02-28 | 2012-09-20 | Mitsubishi Heavy Ind Ltd | インバータ制御装置 |
WO2018056306A1 (ja) * | 2016-09-20 | 2018-03-29 | キヤノン株式会社 | モータ制御装置 |
US11031898B2 (en) | 2017-11-30 | 2021-06-08 | Mitsubishi Electric Corporation | Power converter control device |
CN110277941A (zh) * | 2019-06-28 | 2019-09-24 | 东南大学 | 永磁电机、转子位置控制方法、装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0919184A (ja) | ブラシレスモータ | |
JP6424772B2 (ja) | 交流回転電機の制御装置 | |
JP2007252138A (ja) | 電動機制御装置 | |
EP3343758A1 (en) | Semiconductor device and power conversion device | |
JP4155173B2 (ja) | モータ制御装置 | |
JP5409034B2 (ja) | 回転電機制御装置 | |
WO2005034327A1 (ja) | インバータ装置 | |
JPH11215881A (ja) | モータ制御装置 | |
JP2007252139A (ja) | 電動機制御装置および電動機制御方法 | |
JP4027721B2 (ja) | ブラシレスモータの速度制御装置 | |
JP5428796B2 (ja) | モータ駆動制御装置 | |
JP6642111B2 (ja) | モータ制御装置 | |
JP6458684B2 (ja) | 電力制御方法、及び、電力制御装置 | |
JP2006074951A (ja) | 交流電動機の制御装置 | |
JP3472533B2 (ja) | モータ制御装置 | |
JP4638094B2 (ja) | 複数軸制御装置及びその軸間同期方法 | |
JP4127000B2 (ja) | モータ制御装置 | |
JP6810421B2 (ja) | 同期電動機の回転位置推定装置及び同期電動機の回転位置推定方法 | |
JP2009207261A (ja) | 回転機の制御装置 | |
JP3513028B2 (ja) | 三相無整流子電動機の制御装置 | |
JP2004208370A (ja) | 電動機の電流制御装置 | |
JP3944354B2 (ja) | モータ制御装置 | |
JPH05268789A (ja) | モータの電流制御装置 | |
JP3236607B2 (ja) | ディジタルサーボ制御装置 | |
JP6772844B2 (ja) | 交流電動機の制御装置 |