(57)【要約】  【課題】簡単な手段によって各相の三角波キャリアを高精度に得る。  【解決手段】Ｕ相、Ｖ相、Ｗ相の各相ごとにキャリア発生部が設けられ、それぞれのキャリア発生部はクロック発生器から出力されるクロックを計数するアップダウンカウンタを有する。各アップダウンカウンタにはそれぞれ初期値が設定され、ＣＰＵからの計数開始信号により各アップダウンカウンタを同時にスタートさせると、各アップダウンカウンタはそれぞれの初期値から計数を開始し、計数値が上限に達するまで累減算を行い、計数値が下限に達するまで累加算を行う。これにより、所定の位相差がある各相の三角波キャリアＣｕ，Ｃｖ，Ｃｗを簡単に精度よく生成することができる。【選択図】  図２
2005218170.tif 000002
【特許請求の範囲】
【請求項１】
多相の三角波キャリアを発生させるキャリア発生装置であって、所定周波数のクロックを発生させるクロック発生手段を備えるとともに、１つの三角波キャリアを発生させるキャリア発生部を各相ごとにそれぞれ備え、
各キャリア発生部は、
前記クロック発生手段で発生したクロックを計数し、計数値を累加算または累減算して三角波キャリアを出力する計数手段と、
前記計数手段の計数値が所定の上限値に達したことを検出する第１の検出手段と、
前記計数手段の計数値が所定の下限値に達したことを検出する第２の検出手段と、
前記第１の検出手段の検出出力に基づき前記計数手段に対し前記累減算を行うための減算指令を与え、前記第２の検出手段の検出出力に基づき前記計数手段に対し前記累加算を行うための加算指令を与える指令手段と、
を備え、
１つの相の計数手段が、他の相の計数手段から出力される三角波キャリアに対し所定の位相差を持った三角波キャリアを出力することを特徴とする多相キャリア発生装置。
【請求項２】
前記第１の検出手段によって検出される上限値が、各相間で同じ値に設定されていることを特徴とする請求項１に記載の多相キャリア発生装置。
【請求項３】
前記第２の検出手段によって検出される下限値が、各相間で同じ値に設定されていることを特徴とする請求項１または請求項２に記載の多相キャリア発生装置。
【請求項４】
前記各キャリア発生部の計数手段ごとに前記位相差に応じた初期値が設定されており、前記計数手段は当該初期値から計数値を累加算または累減算することを特徴とする請求項１ないし請求項３のいずれかに記載の多相キャリア発生装置。
【請求項５】
前記指令手段は、前記計数手段に対し減算または加算の初期指令を与えた後、前記第１の検出手段の検出出力に基づき前記計数手段に対し減算指令を与え、前記第２の検出手段の検出出力に基づき前記計数手段に対し加算指令を与えることを特徴とする請求項１ないし請求項４のいずれかに記載の多相キャリア発生装置。
【請求項６】
前記各キャリア発生部のうちの１つのキャリア発生部から発生される三角波キャリアを基準三角波キャリアとし、
前記基準三角波キャリアに対し、前記位相差が位相の遅れ方向へ０°を超えて１８０°以下である三角波キャリアを発生するキャリア発生部においては、前記指令手段は、前記基準三角波を発生させるキャリア発生部の指令手段が与える初期指令とは異なる初期指令を前記計数手段に与え、
前記基準三角波キャリアに対し、前記位相差が位相の遅れ方向へ１８０°を超えて３６０°以下である三角波キャリアを発生するキャリア発生部においては、前記指令手段は、前記基準三角波を発生させるキャリア発生部の指令手段が与える初期指令と同じ初期指令を前記計数手段に与えることを特徴とする請求項５に記載の多相キャリア発生装置。
【請求項７】
前記各キャリア発生部の動作を制御する制御手段を備え、
前記制御手段は、前記各計数手段に対しそれぞれ前記クロックの計数を開始させる計数開始信号を同時に与えるようになされており、
前記各計数手段は、前記計数開始信号を受けて同時に計数を開始することを特徴とする請求項１ないし請求項６のいずれかに記載の多相キャリア発生装置。
【請求項８】
前記各キャリア発生部のうちの少なくとも１つのキャリア発生部が、前記第１の検出手段の検出出力を前記三角波キャリアの山部における第１の割込信号として出力し、前記第２の検出手段の検出出力を前記三角波キャリアの谷部における第２の割込信号として出力することを特徴とする請求項１ないし請求項７のいずれかに記載の多相キャリア発生装置。
【請求項９】
所定周波数のクロックを計数することに基づいて多相の三角波キャリアを発生させるキャリア発生方法であって、
各相ごとに、クロックの計数値が所定の上限値に達するまで計数値を累加算し、
クロックの計数値が所定の上限値に達すると、当該計数値が所定の下限値に達するまで計数値を累減算し、
クロックの計数値が所定の下限値に達すると、当該計数値を再び累加算し、
前記累加算および累減算を繰り返すことにより、各相ごとに、他の相の三角波キャリアに対し所定の位相差を持った三角波キャリアを出力することを特徴とする多相キャリア発生方法。
【請求項１０】
前記各相について、各相間で同じ値に設定されている上限値に達するまで前記計数値を累加算することを特徴とする請求項９に記載の多相キャリア発生方法。
【請求項１１】
前記各相について、各相間で同じ値に設定されている下限値に達するまで前記計数値を累減算することを特徴とする請求項９または請求項１０に記載の多相キャリア発生方法。
【請求項１２】
前記各相について、前記位相差に応じてそれぞれ設定された所定の初期値から累加算または累減算を行うことを特徴とする請求項９ないし請求項１１のいずれかに記載の多相キャリア発生方法。
【請求項１３】
前記各相のうちの１相の三角波キャリアを基準三角波キャリアとし、前記所定の初期値から累加算して当該基準三角波キャリアを発生させる場合において、
前記基準三角波キャリアに対し、前記位相差が位相の遅れ方向へ０°を超えて１８０°以下である三角波キャリアを当該相の前記初期値から累減算して発生させ、
前記基準三角波キャリアに対し、前記位相差が位相の遅れ方向へ１８０°を超えて３６０°以下である三角波キャリアを当該相の前記初期値から累加算して発生させることを特徴とする請求項１２に記載の多相キャリア発生方法。
【請求項１４】
前記各相のうちの１相の三角波キャリアを基準三角波キャリアとし、前記所定の初期値から累減算して当該基準三角波キャリアを発生させる場合において、
前記基準三角波キャリアに対し、前記位相差が位相の遅れ方向へ０°を超えて１８０°以下である三角波キャリアを当該相の前記初期値から累加算して発生させ、
前記基準三角波キャリアに対し、前記位相差が位相の遅れ方向へ１８０°を超えて３６０°以下である三角波キャリアを当該相の前記初期値から累減算して発生させることを特徴とする請求項１２に記載の多相キャリア発生方法。
【請求項１５】
前記各相について、前記クロックの計数を同時に開始することを特徴とする請求項９ないし請求項１４のいずれかに記載の多相キャリア発生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３相交流モータのＰＷＭ（Pulse Width Modulation）制御などに用いられる多相キャリア発生装置および多相キャリア発生方法に関するものである。
【背景技術】
【０００２】
図６は、ＰＷＭ制御による一般的な３相交流モータの制御装置を示している。図において、Ｂはバッテリで、このバッテリＢからコンタクタＺおよびインバータ回路１００を介して、モータＭへ電源が供給される。モータＭは、例えばフォークリフトに搭載される３相インダクションモータ（誘導電動機）である。コンタクタＺは、電磁接触器の接点から構成される。また、図において、Ｃは電源ライン間に接続されたコンデンサ、ＳＴはモータＭに流れる電流を検出するためのシャントである。シャントＳＴは抵抗から構成される。ＰＧはモータＭの回転数を検出するためのパルス発生器であって、モータＭの回転軸に設けられた公知のロータリエンコーダから構成される。
【０００３】
インバータ回路１００は、バッテリＢの直流電源を交流電源に変換してモータＭを駆動するための回路であって、Ｕ相上、Ｕ相下、Ｖ相上、Ｖ相下、Ｗ相上、Ｗ相下の６個の半導体スイッチング素子Ｑ１〜Ｑ６から構成される公知の回路である。半導体スイッチング素子としては、たとえばＭＯＳ型ＦＥＴ（電界効果トランジスタ）やＩＧＢＴ（絶縁ゲート型バイポーラトランジスタ）などの高速スイッチング動作が可能な素子が用いられる。各半導体スイッチング素子Ｑ１〜Ｑ６のゲートには、制御部１０１からのＰＷＭ信号が入力される。このＰＷＭ信号によって、各半導体スイッチング素子Ｑ１〜Ｑ６は所定のオン時間、オフ時間で開閉動作を行ない、その結果、インバータ回路１００の出力は３相交流として取り出され、Ｕ相電圧、Ｖ相電圧、Ｗ相電圧がモータＭに供給される。
【０００４】
制御部１０１は、ＣＰＵ、メモリ、Ａ／Ｄ変換器、キャリア発生回路、ＰＷＭ回路などを備えている。制御部１０１には、例えばフォークリフトのレバー操作に基づくモータ速度等の指示値、パルス発生器ＰＧから出力されるパルス、シャントＳＴで検出された電流値、バッテリＢの電圧値などが入力される。制御部１０１では、これらの入力値に基づいてモータＭの制御に必要なＰＷＭ信号を生成し、インバータ回路１００へ出力する。以上のようなＰＷＭ制御を用いたモータ制御装置は、例えば後記の特許文献１に記載されている。
【０００５】
図７は、制御部１０１に設けられているＰＷＭ信号生成部の構成を示した図である。２００はキャリアＣａを発生するキャリア発生部、２０７はキャリアＣａとＵ相指令電圧の値とを比較する比較器、２０８はキャリアＣａとＶ相指令電圧の値とを比較する比較器、２０９はキャリアＣａとＷ相指令電圧の値とを比較する比較器、２１０は比較器２０７〜２０９の出力に基づいてＰＷＭ信号を生成するＰＷＭ回路である。ＰＷＭ回路２１０からは、図６のインバータ回路１００におけるＵ相上、Ｕ相下、Ｖ相上、Ｖ相下、Ｗ相上、Ｗ相下の各スイッチング素子Ｑ１〜Ｑ６のゲートへ与えられるパルスがＰＷＭ信号として出力される。
【０００６】
図８は、ＰＷＭ信号を生成する原理を説明する図である。図のように、キャリアＣａは一定の周波数を持った三角波であって、各相の指令電圧値とキャリアＣａの振幅とが比較器２０７〜２０９で比較される。そして、キャリアＣａの振幅が指令電圧値以上である区間では、比較器２０７〜２０９の出力は「Ｈ」となり、キャリアＣａの振幅が指令電圧値未満である区間では、比較器２０７〜２０９の出力は「Ｌ」となる。したがって、比較器２０７〜２０９からは、指令電圧値の変化に従ってパルス幅が変化する信号が得られる。この信号はＰＷＭ回路２１０へ入力され、ＰＷＭ回路２１０は、比較器２０７〜２０９の出力に基づいて、図８のような各相上下のスイッチング素子Ｑ１〜Ｑ６を駆動するための６種類のＰＷＭ信号を生成する。図８からわかるように、キャリアＣａの振幅が各相の指令電圧値以上である区間では、各相の上段のスイッチング素子がオンとなり、下段のスイッチング素子はオフとなる。一方、キャリアＣａの振幅が指令電圧値未満である区間では、各相の下段のスイッチング素子がオンとなり、上段のスイッチング素子はオフとなる。
【０００７】
ここで、各相における上下一対のスイッチング素子の一方がオンするタイミングと、他方がオフするタイミングとが同時になると、上下のスイッチング素子が短絡回路を形成して大電流が流れ、素子が破壊するおそれがある。そこで、実際には、ＰＷＭ回路２１０において、上下一対のスイッチング素子の一方のオンタイミングと他方のオフタイミングとの間に一定の時間差（デッドタイム）を持たせる処理が行われる。
【０００８】
しかしながら、上記のような単一のキャリアＣａを用いてＰＷＭ信号を生成する方式では、モータ電圧が０Ｖ付近の場合、すなわち各相のＰＷＭ信号のパルスデューティ比が５０：５０近傍である場合に、図９に示したように、各相のデッドタイムＴｄの区間が全て同じ位置で重なってしまい、この区間ではインバータ回路１００が不動作状態となって、出力されるはずのモータ電圧が出力されないという問題が生じる。
【０００９】
そこで、この問題を解消するために、図１０に示すように、Ｕ相、Ｖ相、Ｗ相の各相ごとに独立したキャリアを用い、キャリア間の位相を１２０°ずつ異ならせて、各相の指令電圧値を対応する相のキャリアと比較することによりＰＷＭ信号を得る方式が、後記の特許文献２で提案されている。これによれば、図１１に示したように、各相のＰＷＭ信号のパルスデューティ比が５０：５０近傍の場合であっても、キャリアの位相ずれに応じて、各相のデッドタイムＴｄの区間が重ならなくなるので、モータ電圧が０Ｖ付近の場合も、インバータ回路１００が動作して所定の電圧を得ることができる。
【００１０】
【特許文献１】特開２００３−１６４１９０号公報（段落００１９〜００２０、図１）
【特許文献２】特開２００２−２７７６３号公報（段落００５０〜００６５、図１３）
【発明の開示】
【発明が解決しようとする課題】
【００１１】
特許文献２には、各相ごとに独立したキャリアを生成するための具体的な回路について何も開示がないので、このようなキャリアをどのようにして生成するかが問題となる。キャリア発生手段の一例として、例えば図１２に示すようなキャリア発生部３００の構成が考えられる。図１２において、３０１は矩形のパルスを発生するパルス発生器、３０２はパルス発生器３０１で発生したパルスを１２０°移相させる移相器、３０３は移相器３０２で１２０°移相されたパルスをさらに１２０°移相させる移相器である。３０４はパルス発生器３０１で発生したパルスを積分して三角波からなるＵ相キャリアＣｕを生成する積分回路、３０５は移相器３０２で１２０°移相されたパルスを積分して三角波からなるＶ相キャリアＣｖを生成する積分回路、３０６は移相器３０３で１２０°移相されたパルスを積分して三角波からなるＷ相キャリアＣｗを生成する積分回路である。３０７はＵ相キャリアＣｕとＵ相指令電圧とを比較する比較器、３０８はＶ相キャリアＣｖとＶ相指令電圧とを比較する比較器、３０９はＷ相キャリアＣｗとＷ相指令電圧とを比較する比較器である。比較器３０７〜３０９の出力は、図示しないＰＷＭ回路に与えられる。
【００１２】
図１２の回路によれば、パルス発生器３０１で発生したパルスを移相器３０２、３０３を通すとともに、各パルスを積分回路３０４〜３０６で積分することにより、１２０°ずつ位相がずれたＵ相、Ｖ相、Ｗ相のキャリアＣｕ、Ｃｖ、Ｃｗを得ることができる。しかしながら、図１２のようなキャリア発生部３００の構成では、移相器や積分回路を用いて複雑な波形処理を行う必要があり、キャリアの波形や位相差の精度を高くとれないという難点がある。
【００１３】
本発明は、上記課題を解決するものであり、その目的とするところは、簡単な手段によって各相の三角波キャリアを高精度に得ることができる多相キャリア発生装置および多相キャリア発生方法を提供することにある。
【課題を解決するための手段】
【００１４】
本発明に係る多相キャリア発生装置は、所定周波数のクロックを発生させるクロック発生手段を備えるとともに、１つの三角波キャリアを発生させるキャリア発生部を各相ごとにそれぞれ備えている。各キャリア発生部は、クロック発生手段で発生したクロックを計数し、計数値を累加算または累減算して三角波キャリアを出力する計数手段と、計数手段の計数値が所定の上限値に達したことを検出する第１の検出手段と、計数手段の計数値が所定の下限値に達したことを検出する第２の検出手段と、第１の検出手段の検出出力に基づき計数手段に対し累減算を行うための減算指令を与え、第２の検出手段の検出出力に基づき計数手段に対し累加算を行うための加算指令を与える指令手段とを備える。そして、１つの相の計数手段は、他の相の計数手段から出力される三角波キャリアに対し所定の位相差を持った三角波キャリアを出力するようになっている。
【００１５】
このように、位相がずれた多相キャリアを生成するキャリア発生部を各相ごとに設けるとともに、それぞれのキャリア発生部に計数手段を設け、計数手段がクロックに基づいて計数動作を行ない、計数値が上限に達すると累減算を行い、計数値が下限に達すると累加算を行うように構成することで、三角波からなる多相キャリアが簡単に生成される。このため、複雑な波形処理をしなくても、アップダウンカウンタなどを用いてデジタルの加減算を行うだけで、計数値に対応した正確な波形と位相差を持つ三角波キャリアを得ることができる。
【００１６】
本発明の実施形態では、第１の検出手段によって検出される上限値は各相間で同じ値に設定されているが、上限値は各相間で異なっていてもよい。また、本発明の実施形態では、第２の検出手段によって検出される下限値は、各相間で同じ値に設定されているが、下限値は各相間で異なっていてもよい。
【００１７】
本発明の実施形態では、各キャリア発生部の計数手段ごとに位相差に応じた初期値が設定されており、計数手段は当該初期値から計数値を累加算または累減算する。この場合、各計数手段の初期値を適当に選定することで、それぞれの計数手段から出力されるキャリアの位相差を任意に設定することができる。この結果、例えば３相モータのＰＷＭ制御に必要な１２０°ずつ位相がずれた三角波キャリアを簡単かつ高精度に得ることができる。また、上記のように第１の検出手段によって検出される上限値および第２の検出手段によって検出される下限値を各相間で同じ値に設定することで、初期値の選定だけで簡単に任意の位相差を設定することが可能となる。
【００１８】
本発明の実施形態では、指令手段は、計数手段に対し減算または加算の初期指令を与えた後、第１の検出手段の検出出力に基づき計数手段に対し減算指令を与え、第２の検出手段の検出出力に基づき計数手段に対し加算指令を与えるようになっている。
【００１９】
本発明の実施形態では、各キャリア発生部のうちの１つのキャリア発生部から発生される三角波キャリアを基準三角波キャリアとする。そして、この基準三角波キャリアに対し、位相差が位相の遅れ方向へ０°を超えて１８０°以下である三角波キャリアを発生するキャリア発生部においては、指令手段は、基準三角波を発生させるキャリア発生部の指令手段が与える初期指令とは異なる初期指令を計数手段に与える。一方、基準三角波キャリアに対し、位相差が位相の遅れ方向へ１８０°を超えて３６０°以下である三角波キャリアを発生するキャリア発生部においては、指令手段は、基準三角波を発生させるキャリア発生部の指令手段が与える初期指令と同じ初期指令を計数手段に与える。
【００２０】
本発明の実施形態では、各キャリア発生部の動作を制御する制御手段が設けられる。この制御手段は、各計数手段に対しそれぞれクロックの計数を開始させる計数開始信号を同時に与えるようになされており、各計数手段は、計数開始信号を受けて同時に計数を開始する。これにより、各相での計数開始タイミングにずれが生じなくなり、各相のキャリア間の位相差の精度を上げることができる。
【００２１】
本発明の実施形態では、各キャリア発生部のうちの少なくとも１つのキャリア発生部が、第１の検出手段の検出出力を三角波キャリアの山部における第１の割込信号として出力し、第２の検出手段の検出出力を三角波キャリアの谷部における第２の割込信号として出力する。このように、計数値の上限または下限の検出信号を割込信号として利用すれば、特別な割込信号発生手段を設けることなく、三角波キャリアの山部と谷部において、ＣＰＵに割り込みをかけることができる。そして、この山部と谷部に相当するタイミングにおいては、ＰＷＭ信号のパルスは立上りでも立下りでもなく、安定したオン状態またはオフ状態となっているから、この割込信号を利用して、例えばモータ電流のＡ／Ｄ変換や、インバータ回路の素子の故障診断など、各種の制御を安定して行うことが可能となる。
【００２２】
また、本発明に係る多相キャリア発生方法は、所定周波数のクロックを計数することに基づいて多相の三角波キャリアを発生させるキャリア発生方法であって、各相ごとに、クロックの計数値が所定の上限値に達するまで計数値を累加算し、クロックの計数値が所定の上限値に達すると、当該計数値が所定の下限値に達するまで計数値を累減算し、クロックの計数値が所定の下限値に達すると、当該計数値を再び累加算する。そして、このような累加算および累減算を繰り返すことにより、各相ごとに、他の相の三角波キャリアに対し所定の位相差を持った三角波キャリアを出力する。
【００２３】
このように、各相ごとにクロックを計数して、計数値が上限に達すると累減算を行い、計数値が下限に達すると累加算を行うことで、三角波からなる多相キャリアが簡単に生成される。このため、複雑な波形処理をしなくても、アップダウンカウンタなどを用いてデジタルの加減算を行うだけで、計数値に対応した正確な波形と位相差を持つ三角波キャリアを得ることができる。
【００２４】
本発明の実施形態では、各相について、各相間で同じ値に設定されている上限値に達するまで計数値を累加算するが、上限値は各相間で異なっていてもよい。また、本発明の実施形態では、各相について、各相間で同じ値に設定されている下限値に達するまで計数値を累減算するが、下限値は各相間で異なっていてもよい。
【００２５】
本発明の実施形態では、位相差に応じてそれぞれ設定された所定の初期値から累加算または累減算が行われる。この場合、初期値を適当に選定することで、各相のキャリアの位相差を任意に設定することができる。この結果、例えば３相モータのＰＷＭ制御に必要な１２０°ずつ位相がずれた三角波キャリアを簡単かつ高精度に得ることができる。また、上記のように上限値および下限値を各相間で同じ値に設定することで、初期値の選定だけで簡単に任意の位相差を設定することが可能となる。
【００２６】
本発明の実施形態では、各相のうちの１相の三角波キャリアを基準三角波キャリアとし、所定の初期値から累加算して当該基準三角波キャリアを発生させる場合において、基準三角波キャリアに対し、位相差が位相の遅れ方向へ０°を超えて１８０°以下である三角波キャリアについては、当該相の初期値から累減算して発生させる。一方、基準三角波キャリアに対し、位相差が位相の遅れ方向へ１８０°を超えて３６０°以下である三角波キャリアについては、当該相の初期値から累加算して発生させる。この場合、基準三角波キャリアは、谷部（下限値）から発生する。
【００２７】
本発明の実施形態では、各相のうちの１相の三角波キャリアを基準三角波キャリアとし、所定の初期値から累減算して当該基準三角波キャリアを発生させる場合において、基準三角波キャリアに対し、位相差が位相の遅れ方向へ０°を超えて１８０°以下である三角波キャリアについては、当該相の初期値から累加算して発生させる。一方、基準三角波キャリアに対し、位相差が位相の遅れ方向へ１８０°を超えて３６０°以下である三角波キャリアについては、当該相の初期値から累減算して発生させる。この場合、基準三角波キャリアは、山部（上限値）から発生する。
【００２８】
本発明の実施形態では、各相についてクロックの計数を同時に開始する。これにより、各相での計数開始タイミングにずれが生じなくなり、各相のキャリア間の位相差の精度を上げることができる。
【発明の効果】
【００２９】
本発明によれば、各相ごとにクロックの計数値を累加算および累減算することに基づいて、位相のずれた三角波キャリアを生成するようにしたので、移相器や積分回路を用いた場合のような複雑な波形処理が不要となり、簡単な演算処理だけで、波形や位相差の正確な多相キャリアを得ることができる効果がある。
【発明を実施するための最良の形態】
【００３０】
図１は、本発明に係る多相キャリア発生装置を備えた３相交流モータの制御装置の一例を示している。Ｂはバッテリで、このバッテリＢからコンタクタＺおよびインバータ回路１００を介して、モータＭへ電源が供給される。モータＭは、例えばフォークリフトに搭載される３相インダクションモータ（誘導電動機）である。コンタクタＺは、電磁接触器の接点から構成される。Ｃは電源ライン間に接続されたコンデンサ、ＳＴはモータＭに流れる電流を検出するためのシャントである。シャントＳＴは抵抗から構成される。ＰＧはモータＭの回転数を検出するためのパルス発生器であって、モータＭの回転軸に設けられた公知のロータリエンコーダから構成される。
【００３１】
インバータ回路１００は、バッテリＢの直流電源を交流電源に変換してモータＭを駆動するための回路であって、Ｕ相上、Ｕ相下、Ｖ相上、Ｖ相下、Ｗ相上、Ｗ相下の６個の半導体スイッチング素子Ｑ１〜Ｑ６から構成される公知の回路である。半導体スイッチング素子としては、たとえばＭＯＳ型ＦＥＴ（電界効果トランジスタ）やＩＧＢＴ（絶縁ゲート型バイポーラトランジスタ）などの高速スイッチング動作が可能な素子が用いられる。各半導体スイッチング素子Ｑ１〜Ｑ６のゲートには、制御部１０１からのＰＷＭ信号が入力される。このＰＷＭ信号によって、各半導体スイッチング素子Ｑ１〜Ｑ６は所定のオン時間、オフ時間で開閉動作を行ない、その結果、インバータ回路１００の出力は３相交流として取り出され、Ｕ相電圧、Ｖ相電圧、Ｗ相電圧がモータＭに供給される。以上の構成は、図６に示したものと同じである。
【００３２】
制御部１０１は、Ａ／Ｄ変換器１０２、ＣＰＵ１０３、メモリ１０４、クロック発生器１０５、キャリア発生部１０６、比較器１０７、ＰＷＭ回路１０８、割込コントローラ１０９を備えている。ＣＰＵ１０３と、メモリ１０４と、クロック発生器１０５と、キャリア発生部１０６とによって、本発明の多相キャリア発生装置が構成される。
【００３３】
ＣＰＵ１０３には、例えばフォークリフトのレバー操作に基づくモータ速度等の指示値、パルス発生器ＰＧから出力されるパルス、シャントＳＴで検出された電流値、バッテリＢの電圧値などが入力される。シャントＳＴの電流値とバッテリＢの電圧値は、Ａ／Ｄ変換器１０２によりデジタル値に変換された後にＣＰＵ１０３に入力される。ＣＰＵ１０３は、これらの入力値に基づいて、モータＭの制御に必要な処理を実行する。メモリ１０４はＲＡＭやＲＯＭから構成され、ＣＰＵ１０３は、処理を行うために必要とされる各種情報をメモリ１０４から読み出したり、情報をメモリ１０４に書き込んだりする。
【００３４】
クロック発生器１０５は、内蔵する発振回路により所定周波数のクロックを生成してキャリア発生部１０６へ出力する。なお、このクロック発生器１０５は、ＣＰＵ１０３からの信号を受けることなく、電源が投入されると同時に作動を開始する。キャリア発生部１０６は、クロック発生器１０５から入力されるクロックを計数することに基づいて、各相ごとの三角波キャリアを発生させる。このキャリア発生部１０６は、図２に示されたＵ相キャリア発生部１０、Ｖ相キャリア発生部２０、Ｗ相キャリア発生部３０の３つのキャリア発生部からなる。比較器１０７は、ＣＰＵ１０３から与えられる各相の指令電圧と、キャリア発生部１０６からの各相の三角波キャリアとの比較を行い、比較結果をパルスとして出力する。この比較器１０７は、図２に示された各相ごとの３つの比較器１６，２６，３６からなる。
【００３５】
ＰＷＭ回路１０８は、比較器１０７からの出力に基づき、各相の指令電圧値の変化に応じたオン・オフ区間をもつ６種類のパルスをＰＷＭ信号として出力する。このＰＷＭ信号は、インバータ回路１００におけるＵ相上、Ｕ相下、Ｖ相上、Ｖ相下、Ｗ相上、Ｗ相下の各スイッチング素子Ｑ１〜Ｑ６のゲートへ与えられる。各スイッチング素子Ｑ１〜Ｑ６は、上記ＰＷＭ信号によりオン・オフ動作を行い、これによってインバータ回路１００からＵ相、Ｖ相、Ｗ相の各電圧が出力されて、モータＭに印加される。
【００３６】
割込コントローラ１０９は、キャリア発生部１０６において三角波キャリアの山部分と谷部分で発生する割込信号を受けて、ＣＰＵ１０３に対して割り込みをかける。また、割込コントローラ１０９には、ＰＷＭ回路１０８からの割込信号も入力される。この割込信号は、例えばＰＷＭ信号の立上りのタイミングで発生する。
【００３７】
図２は、図１のキャリア発生部１０６と比較器１０７の詳細な構成図である。上述したように、キャリア発生部１０６は、Ｕ相キャリア発生部１０、Ｖ相キャリア発生部２０、Ｗ相キャリア発生部３０から構成されている。Ｕ相キャリア発生部１０は、基準三角波キャリアであるＵ相キャリアＣｕを発生する。Ｖ相キャリア発生部２０は、Ｕ相キャリアＣｕから１２０°位相のずれたＶ相キャリアＣｖを発生する。Ｗ相キャリア発生部３０は、Ｖ相キャリアＣｖからさらに１２０°位相のずれたＷ相キャリアＣｗを発生する。各相のキャリアを発生させる方法については、後で詳細に説明する。
【００３８】
比較器１０７は、各相ごとに設けられた比較器１６，２６，３６からなる。比較器１６は、ＣＰＵ１０３から送られてくるＵ相指令電圧の値とＵ相キャリアＣｕの振幅とを比較し、Ｕ相キャリアＣｕの振幅がＵ相指令電圧値以上である区間では「Ｈ」信号を出力し、Ｕ相キャリアＣｕの振幅がＵ相指令電圧値未満である区間では「Ｌ」信号を出力する。比較器２６は、ＣＰＵ１０３から送られてくるＶ相指令電圧の値とＶ相キャリアＣｖの振幅とを比較し、Ｖ相キャリアＣｖの振幅がＶ相指令電圧値以上である区間では「Ｈ」信号を出力し、Ｖ相キャリアＣｖの振幅がＶ相指令電圧値未満である区間では「Ｌ」信号を出力する。比較器３６は、ＣＰＵ１０３から送られてくるＷ相指令電圧の値とＷ相キャリアＣｗの振幅とを比較し、Ｗ相キャリアＣｗの振幅がＷ相指令電圧値以上である区間では「Ｈ」信号を出力し、Ｗ相キャリアＣｗの振幅がＷ相指令電圧値未満である区間では「Ｌ」信号を出力する。
【００３９】
Ｕ相キャリア発生部１０において、１２はアップダウンカウンタであって、図１のクロック発生器１０５から出力されるクロックと、ＣＰＵ１０３から送られてくる計数開始信号および計数初期値信号とが入力される。アップダウンカウンタ１２は、ＣＰＵ１０３から計数開始信号が与えられると、クロックの計数を開始し、計数値の累加算（クロックが入力されるたびに１を加算）または累減算（クロックが入力されるたびに１を減算）により、三角波キャリアであるＵ相キャリアＣｕを出力する。また、アップダウンカウンタ１２には、計数の初期値が設定されており、この初期値はＣＰＵ１０３からの計数初期値信号により設定される。１３は比較器であって、アップダウンカウンタ１２の計数値と、あらかじめ決められた上限値とを比較し、計数値が上限値に達したことを検出して検出信号を出力する。１４も比較器であって、アップダウンカウンタ１２の計数値と、あらかじめ決められた下限値とを比較し、計数値が下限値に達したことを検出して検出信号を出力する。１５はフリップフロップであって、比較器１３からの出力によりアップダウンカウンタ１２に対して「Ｌ」信号を出力し、比較器１４からの出力によりアップダウンカウンタ１２に対して「Ｈ」信号を出力する。アップダウンカウンタ１２は、フリップフロップ１５から「Ｈ」信号が入力されると、クロックの計数値を累加算し、「Ｌ」信号が入力されると、クロックの計数値を累減算する。したがって、フリップフロップ１５からの「Ｈ」信号は累加算を行うための加算指令であり、「Ｌ」信号は累減算を行うための減算指令である。フリップフロップ１５には、ＣＰＵ１０３から初期指令値信号が与えられる。フリップフロップ１５の初期状態が「Ｈ」か「Ｌ」かは、上記初期指令値信号により設定される。
【００４０】
Ｖ相キャリア発生部２０において、２２はアップダウンカウンタであって、図１のクロック発生器１０５から出力されるクロックと、ＣＰＵ１０３から送られてくる計数開始信号および計数初期値信号とが入力される。アップダウンカウンタ２２は、ＣＰＵ１０３から計数開始信号が与えられると、クロックの計数を開始し、計数値の累加算または累減算により三角波キャリアであるＶ相キャリアＣｖを出力する。また、アップダウンカウンタ２２には、計数の初期値が設定されており、この初期値はＣＰＵ１０３からの計数初期値信号により設定される。２３は比較器であって、アップダウンカウンタ２２の計数値と、あらかじめ決められた上限値とを比較し、計数値が上限値に達したことを検出して検出信号を出力する。２４も比較器であって、アップダウンカウンタ２２の計数値と、あらかじめ決められた下限値とを比較し、計数値が下限値に達したことを検出して検出信号を出力する。２５はフリップフロップであって、比較器２３からの出力によりアップダウンカウンタ２２に対して「Ｌ」信号を出力し、比較器２４からの出力によりアップダウンカウンタ２２に対して「Ｈ」信号を出力する。アップダウンカウンタ２２は、フリップフロップ２５から「Ｈ」信号が入力されると、クロックの計数値を累加算し、「Ｌ」信号が入力されると、クロックの計数値を累減算する。したがって、フリップフロップ２５からの「Ｈ」信号は累加算を行うための加算指令であり、「Ｌ」信号は累減算を行うための減算指令である。フリップフロップ２５には、ＣＰＵ１０３から初期指令値信号が与えられる。フリップフロップ２５の初期状態が「Ｈ」か「Ｌ」かは、上記初期指令値信号により設定される。
【００４１】
Ｗ相キャリア発生部３０において、３２はアップダウンカウンタであって、図１のクロック発生器１０５から出力されるクロックと、ＣＰＵ１０３から送られてくる計数開始信号および計数初期値信号とが入力される。アップダウンカウンタ３２は、ＣＰＵ１０３から計数開始信号が与えられると、クロックの計数を開始し、計数値の累加算または累減算により三角波キャリアであるＷ相キャリアＣｗを出力する。また、アップダウンカウンタ３２には、計数の初期値が設定されており、この初期値はＣＰＵ１０３からの計数初期値信号により設定される。３３は比較器であって、アップダウンカウンタ３２の計数値と、あらかじめ決められた上限値とを比較し、計数値が上限値に達したことを検出して検出信号を出力する。３４も比較器であって、アップダウンカウンタ３２の計数値と、あらかじめ決められた下限値とを比較し、計数値が下限値に達したことを検出して検出信号を出力する。３５はフリップフロップであって、比較器３３からの出力によりアップダウンカウンタ３２に対して「Ｌ」信号を出力し、比較器３４からの出力によりアップダウンカウンタ３２に対して「Ｈ」信号を出力する。アップダウンカウンタ３２は、フリップフロップ３５から「Ｈ」信号が入力されると、クロックの計数値を累加算し、「Ｌ」信号が入力されると、クロックの計数値を累減算する。したがって、フリップフロップ３５からの「Ｈ」信号は累加算を行うための加算指令であり、「Ｌ」信号は累減算を行うための減算指令である。フリップフロップ３５には、ＣＰＵ１０３から初期指令値信号が与えられる。フリップフロップ３５の初期状態が「Ｈ」か「Ｌ」かは、上記初期指令値信号により設定される。
【００４２】
各相のアップダウンカウンタ１２，２２，３２には、上述した計数開始信号が同時に与えられるようになっており、各アップダウンカウンタはこの計数開始信号の入力により、それぞれの初期値から同時に計数動作を開始する。また、各相の比較器１３，２３，３３の検出出力、すなわち計数値が上限値に達したことを検出した信号は、上述したようにフリップフロップ１５，２５，３５へ与えられると同時に、割込信号ＩＮＴ１Ｕ，ＩＮＴ１Ｖ，ＩＮＴ１Ｗとして出力される。これらの割込信号は、後述するように、各相の三角波キャリアの山部における山割込信号となる。さらに、各相の比較器１４，２４，３４の検出出力、すなわち計数値が下限値に達したことを検出した信号は、上述したようにフリップフロップ１５，２５，３５へ与えられると同時に、割込信号ＩＮＴ２Ｕ，ＩＮＴ２Ｖ，ＩＮＴ２Ｗとして出力される。これらの割込信号は、後述するように、各相の三角波キャリアの谷部における谷割込信号となる。なお、ここでは、各相のキャリア発生部１０，２０，３０から割込信号が出力されるようになっているが、いずれか１相、またはいずれか２相のキャリア発生部から割込信号が出力されるようにしてもよい。
【００４３】
以上のキャリア発生装置において、クロック発生器１０５は本発明におけるクロック発生手段に相当し、アップダウンカウンタ１２，２２，３２は本発明における計数手段に相当し、比較器１３，２３，３３は本発明における第１の検出手段に相当し、比較器１４，２４，３４は本発明における第２検出手段に相当し、フリップフロップ１５，２５，３５は本発明における指令手段に相当する。また、ＣＰＵ１０３は本発明における制御手段に相当する。
【００４４】
次に、各相の三角波キャリアを生成する原理につき、図２および図３を参照しながら説明する。図２において、ＣＰＵ１０３からＵ相キャリア発生部１０のアップダウンカウンタ１２に計数開始信号が入力されると、アップダウンカウンタ１２はクロック発生器１０５からのクロックの計数を開始する。ここで、前述のように、アップダウンカウンタ１２には初期値が設定されており、この初期値は０に設定されている。したがって、アップダウンカウンタ１２は０から計数を開始する。また、アップダウンカウンタ１２に対して累加算、累減算を指令するフリップフロップ１５の出力は、初期状態において「Ｈ」に設定されている。したがって、アップダウンカウンタ１２は計数を開始すると、計数値の累加算を行う。以上の結果、アップダウンカウンタ１２の出力は、図３（ａ）に示すように、下限値（初期値）である０から上限値Ｔに向って矢印ａ１のように時間とともに増加してゆく。そして、計数値が上限値Ｔに達すると、比較器１３がこれを検出して、検出出力をフリップフロップ１５に与える。フリップフロップ１５は、この信号により反転して「Ｌ」を出力する。したがって、アップダウンカウンタ１２の動作は累加算から累減算に転じ、その出力は、図３（ａ）に示すように、上限値Ｔから下限値０に向って矢印ｂ１のように時間とともに減少してゆく。そして、計数値が下限値０に達すると、比較器１４がこれを検出して、検出出力をフリップフロップ１５に与える。フリップフロップ１５は、この信号により反転して「Ｈ」を出力する。したがって、アップダウンカウンタ１２の動作は再び累加算に転じ、その出力は下限値０から上限値Ｔに向って矢印ｃ１のように増加してゆく。このような累加算、累減算の動作を繰り返すことにより、アップダウンカウンタ１２からは、図３（ａ）に示したような三角波のＵ相キャリアＣｕが出力されることになる。本実施形態では、このＵ相キャリアＣｕを基準三角波キャリアとする。
【００４５】
ＣＰＵ１０３からの計数開始信号は、Ｖ相キャリア発生部２０のアップダウンカウンタ２２にも同時に与えられる。アップダウンカウンタ２２は、計数開始信号が入力されると、クロック発生器１０５からのクロックの計数を開始する。ここで、前述のように、アップダウンカウンタ２２には初期値が設定されており、この初期値は０でない値αに設定されている。したがって、アップダウンカウンタ２２はαから計数を開始する。また、アップダウンカウンタ２２に対して累加算、累減算を指令するフリップフロップ２５の出力は、初期状態において「Ｌ」に設定されている。したがって、アップダウンカウンタ２２は計数を開始すると、計数値の累減算を行う。以上の結果、アップダウンカウンタ２２の出力は、図３（ｂ）に示すように、初期値αから下限値０に向って矢印ａ２のように時間とともに減少してゆく。そして、計数値が下限値０に達すると、比較器２４がこれを検出して、検出出力をフリップフロップ２５に与える。フリップフロップ２５は、この信号により反転して「Ｈ」を出力する。したがって、アップダウンカウンタ２２の動作は累減算から累加算に転じ、その出力は、図３（ｂ）に示すように、下限値０から上限値Ｔに向って矢印ｂ２のように時間とともに増加してゆく。そして、計数値が上限値Ｔに達すると、比較器２３がこれを検出して、検出出力をフリップフロップ２５に与える。フリップフロップ２５は、この信号により反転して「Ｌ」を出力する。したがって、アップダウンカウンタ２２の動作は再び累減算に転じ、その出力は上限値Ｔから下限値０に向って矢印ｃ２のように減少してゆく。このような累減算、累加算の動作を繰り返すことにより、アップダウンカウンタ２２からは、図３（ｂ）に示したような三角波のＶ相キャリアＣｖが出力されることになる。
【００４６】
ＣＰＵ１０３からの計数開始信号は、Ｗ相キャリア発生部３０のアップダウンカウンタ３２にも同時に与えられる。アップダウンカウンタ３２は、計数開始信号が入力されると、クロック発生器１０５からのクロックの計数を開始する。ここで、前述のように、アップダウンカウンタ３２には初期値が設定されており、この初期値は０でない値βに設定されている。したがって、アップダウンカウンタ３２はβから計数を開始する。なお、ここでは、βの値はαの値と等しくなっている。また、アップダウンカウンタ３２に対して累加算、累減算を指令するフリップフロップ３５の出力は、初期状態において「Ｈ」に設定されている。したがって、アップダウンカウンタ３２は計数を開始すると、計数値の累加算を行う。以上の結果、アップダウンカウンタ３２の出力は、図３（ｃ）に示すように、初期値βから上限値Ｔに向って矢印ａ３のように時間とともに増加してゆく。そして、計数値が上限値Ｔに達すると、比較器３３がこれを検出して、検出出力をフリップフロップ３５に与える。フリップフロップ３５は、この信号により反転して「Ｌ」を出力する。したがって、アップダウンカウンタ３２の動作は累加算から累減算に転じ、その出力は、図３（ｃ）に示すように、上限値Ｔから下限値０に向って矢印ｂ３のように時間とともに減少してゆく。そして、計数値が下限値０に達すると、比較器３４がこれを検出して、検出出力をフリップフロップ３５に与える。フリップフロップ３５は、この信号により反転して「Ｈ」を出力する。したがって、アップダウンカウンタ３２の動作は再び累加算に転じ、その出力は下限値０から上限値Ｔに向って矢印ｃ３のように増加してゆく。このような累加算、累減算の動作を繰り返すことにより、アップダウンカウンタ３２からは、図３（ｃ）に示したような三角波のＷ相キャリアＣｗが出力されることになる。
【００４７】
ところで、図３においては、基準三角波キャリアであるＵ相キャリアＣｕに対して、Ｖ相キャリアＣｖは位相の遅れ方向に１２０°の位相差を有している。また、Ｖ相キャリアＣｖに対して、Ｗ相キャリアＣｗは位相の遅れ方向に１２０°の位相差を有している。したがって、Ｗ相キャリアＣｗは基準三角波キャリアであるＵ相キャリアＣｕに対して、位相の遅れ方向に２４０°の位相差を有している。すなわち、Ｕ相キャリアＣｕ、Ｖ相キャリアＣｖ、Ｗ相キャリアＣｗは、１２０°ずつ位相がずれた三角波となっている。図３（ｄ）は、各相のキャリアＣｕ，Ｃｖ，Ｃｗを重ねて描いた図である。
【００４８】
図４は、基準三角波キャリアに対して所定の位相差（位相の遅れ方向の位相差）を持たせる場合に、アップダウンカウンタの初期値とフリップフロップの初期指令値をどのように設定すればよいかの一例を表したテーブルである。このテーブルでは、各相のアップダウンカウンタの上限値はそれぞれ同じ値（Ｔ）であり、下限値もそれぞれ同じ値（０）であることが前提となっている。また、基準三角波キャリアの初期値が０で初期指令値を「Ｈ」とした場合の位相差、初期値と上限値の比、初期指令値の関係を示している。なお、位相差が０°〜１８０°の間では、アップダウンカウンタの初期値と上限値の比ｍは、
ｍ＝位相差／１８０°
により求められる。また、位相差が１８０°〜３６０°の間では、アップダウンカウンタの初期値と上限値の比ｎは、
ｎ＝２−［位相差／１８０°］
により求められる。
【００４９】
図３の場合のように、３相の三角波キャリアを等間隔の位相差（１２０°）で発生させる場合、基準となるＵ相キャリアＣｕについては、位相差が０°であるから、図４より初期値を０に設定する。このときのフリップフロップの初期指令値は、「Ｈ」（加算指令）となる。また、Ｕ相キャリアＣｕに対して１２０°の位相差をもつＶ相キャリアＣｖについては、図４より初期値αを上限値Ｔの２／３に設定すればよい。このときのフリップフロップの初期指令値は、「Ｌ」（減算指令）となる。また、Ｕ相キャリアＣｕに対して２４０°の位相差をもつＷ相キャリアＣｗについては、図４より初期値βを上限値Ｔの２／３に設定すればよい。このときのフリップフロップの初期指令値は、「Ｈ」（加算指令）となる。
【００５０】
以上をまとめると、基準となるＵ相キャリアＣｕと、これに対して１２０°位相が遅れたＶ相キャリアＣｖ、および２４０°位相が遅れたＷ相キャリアＣｗを生成するための条件は、次のようになる。
（１）Ｕ相キャリアＣｕ（基準三角波キャリア）
アップダウンカウンタの初期値  ＝０
フリップフロップの初期指令値  ＝「Ｈ」
（２）Ｖ相キャリアＣｖ
アップダウンカウンタの初期値α＝２Ｔ／３
フリップフロップの初期指令値  ＝「Ｌ」
（３）Ｗ相キャリアＣｗ
アップダウンカウンタの初期値β＝２Ｔ／３
フリップフロップの初期指令値  ＝「Ｈ」
【００５１】
以上のように、位相がずれた３相キャリアを生成するキャリア発生部１０，２０，３０を各相ごとに設けるとともに、それぞれのキャリア発生部にアップダウンカウンタ１２，２２，３２を設け、アップダウンカウンタ１２，２２，３２がクロックに基づいて計数を行ない、計数値が上限に達すると累減算を行い、計数値が下限に達すると累加算を行うように構成したことで、各相ごとに、他の相のキャリアに対し所定の位相差を持った三角波からなる３相キャリアＣｕ，Ｃｖ，Ｃｗを簡単に生成することができる。このため、複雑な波形処理をしなくても、アップダウンカウンタを用いてデジタルの加減算を行うだけで、計数値に対応した正確な波形と位相差を持つ三角波キャリアを得ることができる。
【００５２】
また、上記実施形態では、キャリア発生部１０，２０，３０の各アップダウンカウンタ１２，２２，３２ごとに位相差に応じた初期値が設定されており、各アップダウンカウンタ１２，２２，３２は当該初期値から計数値を累加算または累減算するようになっている。このため、各相の初期値を適当に選定することで、各アップダウンカウンタ１２，２２，３２から出力されるキャリアＣｕ，Ｃｖ，Ｃｗの位相差を任意に設定することができる。この結果、例えば３相モータのＰＷＭ制御に必要な１２０°ずつ位相がずれた三角波キャリアを簡単かつ高精度に得ることができる。
【００５３】
また、上記実施形態では、各キャリア発生部１０，２０，３０の動作を制御するＣＰＵ１０３が、各アップダウンカウンタ１２，２２，３２に対しそれぞれクロックの計数を開始させる計数開始信号を同時に与え、各アップダウンカウンタ１２，２２，３２は、この計数開始信号を受けて同時に計数を開始するようになっている。これにより、各相での計数開始タイミングにずれが生じなくなり、各相のキャリア間の位相差の精度を上げることができる。なお、クロック発生器１０５は各相ごとに設けることもできるが、そうすると各相間でクロックのずれが生じるおそれがあるので、単一のクロック発生器１０５から各相へクロックを供給するのが好ましい。
【００５４】
こうしてアップダウンカウンタ１２，２２，３２により生成された三角波キャリアＣｕ，Ｃｖ、Ｃｗは、比較器１６，２６，３６にそれぞれ与えられる。比較器１６では、Ｕ相指令電圧がＵ相キャリアＣｕと比較され、比較器２６では、Ｖ相指令電圧がＶ相キャリアＣｖと比較され、比較器３６では、Ｗ相指令電圧がＷ相キャリアＣｗと比較される。比較器１６，２６，３６の出力は、それぞれＰＷＭ回路１０８へ入力される。比較器１６，２６，３６でのキャリアと指令電圧との比較結果に基づいて、ＰＷＭ回路１０８でＰＷＭ信号を生成する原理は、図１０で説明したものと全く同じであるから、ここでは説明を省略する。
【００５５】
以上の実施形態では、Ｕ相、Ｖ相、Ｗ相の各キャリアを発生させる３相キャリア発生装置を例に挙げたが、本発明では、相数は３相だけに限られるものではなく、相数と同じ数だけキャリア発生部を備えた上で、それぞれのアップダウンカウンタの初期値と、フリップフロップの初期指令値の設定により、２相、４相、５相、６相など任意の相数に対応したキャリアを発生させることが可能である。また、図４からもわかるように、本発明では、アップダウンカウンタの初期値の選定により、キャリアに任意の位相差を持たせることが可能である。例えば４相の場合、基準三角波キャリアに対して９０°の位相差をもつキャリアについては、初期値を上限値の１／２に設定し、１８０°の位相差をもつキャリアについては、初期値を上限値と等しく設定し、２７０°の位相差をもつキャリアについては、初期値を上限値の１／２に設定する。このときのフリップフロップの初期指令値はそれぞれ「Ｌ」「Ｌ」「Ｈ」となる。また、例えば５相の場合、基準三角波キャリアに対して７２°の位相差をもつキャリアについては、初期値を上限値の２／５に設定し、１４４°の位相差をもつキャリアについては、初期値を上限値の４／５に設定し、２１６°の位相差をもつキャリアについては、初期値を上限値の４／５に設定し、２８８°の位相差をもつキャリアについては、初期値を上限値の２／５に設定する。このときのフリップフロップの初期指令値はそれぞれ「Ｌ」「Ｌ」「Ｈ」「Ｈ」となる。
【００５６】
なお、上記の例では、いずれも位相差が等間隔となっているが、キャリアの位相差は不等間隔であってもよい。例えば、３相の場合、基準三角波キャリアであるＵ相キャリアに対して、Ｖ相キャリアの位相差が９０°で、Ｗ相キャリアの位相差が２４０°であってもよい。この場合も、図４から初期値を設定することができ、Ｖ相キャリアについては初期値を上限値の１／２に設定し、Ｗ相キャリアについては初期値を上限値の２／３に設定すればよい。
【００５７】
ところで、図２においては、前述したように、比較器１３，２３，３３からの検出信号は、山割込信号ＩＮＴ１Ｕ，ＩＮＴ１Ｖ，ＩＮＴ１Ｗとして取り出され、比較器１４，２４，３４からの検出信号は、谷割込信号ＩＮＴ２Ｕ，ＩＮＴ２Ｖ，ＩＮＴ２Ｗとして取り出される。これらの割込信号は、図１の割込コントローラ１０９へ与えられる。このように、計数値の上限または下限の検出信号を割込信号として利用すれば、特別な割込信号発生手段を設けることなく、三角波キャリアの山部と谷部において、ＣＰＵ１０３に割り込みをかけることができる。
【００５８】
図５は、三角波キャリアの山部と谷部における割り込みを説明するタイムチャートである。キャリアＣｕ，Ｃｖ，Ｃｗの振幅がそれぞれＵ相、Ｖ相、Ｗ相の指令電圧値以上となる区間で、各相上のスイッチング素子Ｑ１，Ｑ３，Ｑ５がオンし、キャリアＣｕ，Ｃｖ，Ｃｗの振幅がそれぞれＵ相、Ｖ相、Ｗ相の指令電圧値未満となる区間で、各相下のスイッチング素子Ｑ２，Ｑ４，Ｑ６がオンする関係については、図１０の場合と同じである。なお、各相指令電圧は、実際には図１０のように時間ととともに変化するが、キャリアの数周期の区間をとらえた場合は、指令電圧の変化は小さいため、図５では便宜上、各相指令電圧を一定値として描いてある。
【００５９】
図５に示されるように、Ｕ相キャリアＣｕの山部（上限値に達した時点）において、Ｕ相の山割込信号ＩＮＴ１Ｕが発生し、Ｕ相キャリアＣｕの谷部（下限値に達した時点）において、Ｕ相の谷割込信号ＩＮＴ２Ｕが発生する。また、Ｖ相キャリアＣｖの山部において、Ｖ相の山割込信号ＩＮＴ１Ｖが発生し、Ｖ相キャリアＣｖの谷部において、Ｖ相の谷割込信号ＩＮＴ２Ｖが発生する。また、Ｗ相キャリアＣｗの山部において、Ｗ相の山割込信号ＩＮＴ１Ｗが発生し、Ｗ相キャリアＣｗの谷部において、Ｗ相の谷割込信号ＩＮＴ２Ｗが発生する。
【００６０】
上記のような割込信号が発生する各相の山部と谷部に相当するタイミングでは、図５からわかるように、各相のスイッチング素子Ｑ１〜Ｑ６に与えられるＰＷＭ信号のパルスは、立上りでも立下りでもなく、安定したオン状態またはオフ状態となっている。すなわち、各相のパルスのオン・オフ区間の中央でそれぞれの相の割込信号が発生している。このため、上記割込信号により、割込コントローラ１０９を介してＣＰＵ１０３に割り込みをかけることにより、各種の制御動作を安定して行うことができる。例えば、谷割込信号のタイミングで、Ａ／Ｄ変換器１０２によりモータ電流（シャントＳＴの電流）のＡ／Ｄ変換を行い、山割込信号のタイミングで、Ａ／Ｄ変換器１０２によりモータ電流以外のバッテリ電圧等のＡ／Ｄ変換を行うことができる。また、各相の山割込信号のタイミングで、ＣＰＵ１０３がインバータ回路１００の各相の上段のスイッチング素子Ｑ１，Ｑ３，Ｑ５の故障診断を行い、各相の谷割込信号のタイミングで、ＣＰＵ１０３がインバータ回路１００の各相の下段のスイッチング素子Ｑ２，Ｑ４，Ｑ６の故障診断を行うこともできる。
【００６１】
上記実施形態では、基準三角波キャリア（Ｕ相キャリアＣｕ）を谷部（下限値）から発生させたが、基準三角波キャリアを山部（上限値）から発生させてもよい。この場合、基準三角波キャリアの初期値はＴ（上限値）、初期指令値は「Ｌ」であり、谷部から発生するキャリアに比べて位相は１８０°ずれることになる。したがって、図４を用いて他相の設定をする際には、位相差１８０°を基準として内容を読み替えればよい。例えば、基準三角波キャリアに対する位相差を９０°（０°を超えて１８０°以下）とする場合は、位相差２７０°（＝１８０°＋９０°）の場合の初期値Ｔ／２および初期指令値「Ｈ」に設定すればよい。また、位相差を２７０°（１８０°を超えて３６０°以下）とする場合は、位相差９０°（＝１８０°＋２７０°−３６０°）の場合の初期値Ｔ／２および初期指令値「Ｌ」に設定すればよい。
【００６２】
また、上記実施形態では、キャリアと比較する指令値は電圧値であったが、指令値は電流値であってもよい。また、上記実施形態では、計数値の上限値は各相間で同じ値に設定されており、計数値の下限値も各相間で同じ値に設定されているが、これらの上限値と下限値は、それぞれ各相間で異なる値に設定してもよい。さらに、上記実施形態では、本発明を適用したモータ制御装置を例に挙げたが、本発明は、モータ制御装置以外にも各種の制御装置に適用することが可能である。
【図面の簡単な説明】
【００６３】
【図１】本発明に係る多相キャリア発生装置を用いたモータ制御装置の構成図である。
【図２】本発明に係る多相キャリア発生装置の要部を示すブロック図である。
【図３】各相の三角波キャリアを生成する原理を説明する図である。
【図４】アップダウンカウンタの初期値の設定を説明するテーブルである。
【図５】三角波キャリアの山部と谷部における割り込みを説明するタイムチャートである。
【図６】一般的な３相交流モータの制御装置を示す図である。
【図７】ＰＷＭ信号生成部の構成を示した図である。
【図８】ＰＷＭ信号を生成する原理を説明する図である。
【図９】デッドタイム区間の重なりを説明する図である。
【図１０】各相ごとに独立したキャリアを用いた場合の波形図である。
【図１１】デッドタイム区間のずれを説明する図である。
【図１２】キャリア発生部の構成を示す比較例である。
【符号の説明】
【００６４】
１０  Ｕ相キャリア発生部
１２  アップダウンカウンタ
１３，１４  比較器
１５  フリップフロップ
２０  Ｖ相キャリア発生部
２２  アップダウンカウンタ
２３，２４  比較器
２５  フリップフロップ
３０  Ｗ相キャリア発生部
３２  アップダウンカウンタ
３３，３４  比較器
３５  フリップフロップ
１０３  ＣＰＵ
１０４  メモリ
１０５  クロック発生器
１０６  キャリア発生部
１０７  比較器
１０８  ＰＷＭ回路
１０９  割込コントローラ
Ｃｕ  Ｕ相キャリア
Ｃｖ  Ｖ相キャリア
Ｃｗ  Ｗ相キャリア
ＩＮＴ１Ｕ，ＩＮＴ１Ｖ，ＩＮＴ１Ｗ  山割込信号
ＩＮＴ２Ｕ，ＩＮＴ２Ｖ，ＩＮＴ２Ｗ  谷割込信号
【図１】
2005218170.tif 000003
【図２】
2005218170.tif 000004
【図３】
2005218170.tif 000005
【図４】
2005218170.tif 000006
【図５】
2005218170.tif 000007
【図６】
2005218170.tif 000008
【図７】
2005218170.tif 000009
【図８】
2005218170.tif 000010
【図９】
2005218170.tif 000011
【図１０】
2005218170.tif 000012
【図１１】
2005218170.tif 000013
【図１２】
2005218170.tif 000014