(57)【要約】【課題】ＣＰＵの処理速度を向上させることなく、多相モータの回転子に対する位置推定の精度を向上させる。【解決手段】本発明に係る半導体装置は、モータ３を駆動するインバータ２の制御を行うパルス幅変調信号を生成する半導体装置１０であって、比較値ｘ、ｙ及びｚを保持するコンペアレジスタ１６ａ〜１６ｃと、補正値α、β及びγを保持する出力タイミング制御バッファ１１ａ〜１１ｃと、通常用バイナリカウンタ１５と、通常用バイナリカウンタ１５のカウント値に対して、補正値α、β又はγ分時間的に進んだ、又は遅れた値をカウントする補正用バイナリカウンタ１２ａ〜１２ｃと、通常用バイナリカウンタ１５又は補正用バイナリカウンタ１２ａ〜１２ｃのカウント値を選択するセレクタ部１３ａ〜１３ｃと、選択されたカウント値と、比較値ｘ、ｙ及びｚとが一致するタイミングで論理値が切り替わるパルス幅変調信号を生成するＰＷＭ制御部１８とを備える。【選択図】図１
2008131730.tif 000002
【特許請求の範囲】
【請求項１】
Ｎ相モータを駆動するインバータ回路の制御を行うＮ相のパルス幅変調信号を生成する半導体装置であって、
前記Ｎ相のパルス幅変調信号のアクティブとなる区間を決定するための値であり、前記各パルス変調信号に対応するＮ個の値を保持する第１のレジスタと、
前記各パルス変調信号のアクティブとなる区間の補正を行うための値であり、前記各パルス幅変調信号に対応するＮ個の補正値を保持する補正用バッファと、
カウント周期毎に、第１のカウント値から第２のカウント値まで所定の時間毎にアップカウントを行い、前記第２のカウント値までアップカウントを行った後、前記第２のカウント値から前記第１のカウント値まで所定の時間毎にダウンカウントを行う第１のカウンタと、
前記Ｎ相のパルス幅変調信号にそれぞれ対応し、前記第１のカウンタのカウント値に対して、対応する前記補正値分時間的に進んだ、又は遅れた値をカウントするＮ個の第２のカウンタと、
対応する前記パルス変調信号のアクティブとなる区間の補正を行わない場合に前記第１のカウンタのカウント値を選択し、対応する前記パルス変調信号のアクティブとなる区間の補正を行う場合に対応する前記第２のカウンタのカウント値を選択するＮ個のセレクタと、
前記各セレクタにより選択された前記第１のカウンタ又は前記第２のカウンタのカウント値と、対応する前記第１のレジスタが保持する値とが一致するか否かを判定するＮ個の比較手段と、
前記比較手段が一致すると判定したタイミングで論理値が切り替わる前記Ｎ相のパルス幅変調信号を生成するパルス幅変調制御手段とを備える
ことを特徴とする半導体装置。
【請求項２】
前記半導体装置は、さらに、
前記インバータ回路の電流値をデジタル信号に変換するＡＤ変換手段と、
前記ＡＤ変換手段が変換したデジタル信号に基づき、前記Ｎ相のパルス幅変調信号のアクティブとなる区間を演算する演算手段とを備え、
前記第１のレジスタは、前記演算手段が演算した前記Ｎ相のパルス幅変調信号のアクティブとなる区間を決定するための値を保持し、
前記補正は、前記ＡＤ変換手段によるデジタル信号への変換処理の時間を確保するための補正である
ことを特徴とする請求項１記載の半導体装置。
【請求項３】
前記Ｎ相のパルス幅変調信号は、
第１のパルス幅変調信号と、
前記第１のパルス幅変調信号の直前及び直後のいずれか一方で論理値が変更される第２のパルス幅変調信号とを含み、
前記第１のレジスタは、
前記第１のパルス幅変調信号のアクティブとなる区間を決定するための値である第１の値と、
前記第２のパルス幅変調信号のアクティブとなる区間を決定するための値である第２の値とを保持し、
前記半導体装置は、さらに、
前記ＡＤ変換手段によるデジタル信号への変換処理に要する時間に対応する値を保持する第２のレジスタと、
前記第１の値と、前記第２の値との差分値を算出する差分算出手段と、
前記差分値と、前記第２のレジスタが保持する値とを比較し、前記差分値が前記第２のレジスタが保持する値より小さい場合に、前記第２のレジスタが保持する値と前記差分値との差分を算出し、算出した差分を前記補正値として前記第１のパルス幅変調信号又は前記第２のパルス幅変調信号に対応する前記補正用バッファに保持し、前記第１のパルス幅変調信号又は前記第２のパルス幅変調信号に対応する前記セレクタに前記第２のカウンタのカウント値を選択させる比較演算手段とを備える
ことを特徴とする請求項２記載の半導体装置。
【請求項４】
前記比較演算手段は、前記差分値が前記第２のレジスタが保持する値より大きい場合に、前記第１のパルス幅変調信号又は前記第２のパルス幅変調信号に対応する前記補正用バッファに「０」を保持し、前記第１のパルス幅変調信号又は前記第２のパルス幅変調信号に対応する前記セレクタに前記第１のカウンタのカウント値を選択させる
ことを特徴とする請求項３記載の半導体装置。
【請求項５】
前記半導体装置は、さらに、
前記補正が行われたパルス幅変調信号のアクティブとなる区間が、前記第１のカウンタの前記カウント周期の範囲を越えるか否かを判定し、前記補正が行われたパルス幅変調信号のアクティブとなる区間が、前記第１のカウンタの前記カウント周期の範囲を越える場合に、第１のフラグを設定する第１のフラグ制御手段を備える
ことを特徴とする請求項２、３又は４記載の半導体装置。
【請求項６】
前記半導体装置は、さらに、
前記パルス幅変調信号のアクティブとなる区間が直前のカウント周期の該パルス幅変調信号のアクティブとなる区間と重なるか否かを判定し、前記パルス幅変調信号のアクティブとなる区間が直前のカウント周期の該パルス幅変調信号のアクティブとなる区間と重なる場合に、第２のフラグを設定する第２のフラグ制御手段を備える
ことを特徴とする請求項２、３、４又は５記載の半導体装置。
【請求項７】
前記比較演算手段は、算出した前記第２のレジスタが保持する値と前記差分値との差分に基づき、前記ＡＤ変換手段がデジタル信号への変換処理を開始するタイミングを制御する
ことを特徴とする請求項３〜６のいずれか１項に記載の半導体装置。
【請求項８】
前記半導体装置は、３相モータを駆動するインバータ回路の制御を行う３相のパルス幅変調信号を生成する半導体装置であって、
前記３相のパルス幅変調信号は、３相のパルス幅変調信号の中で最もアクティブとなる区間の広い第１のパルス幅変調信号と、３相のパルス幅変調信号の中で２番目にアクティブとなる区間の広い第２のパルス幅変調信号と、３相のパルス幅変調信号の中で最もアクティブとなる区間の狭い第３のパルス幅変調信号とを含み、
前記第１のレジスタは、第１のパルス幅変調信号のアクティブとなる区間を決定するための値である第１の値と、第２のパルス幅変調信号のアクティブとなる区間を決定するための値である第２の値と、第３のパルス幅変調信号のアクティブとなる区間を決定するための値である第３の値とを保持し、
前記補正用バッファは、前記第１のパルス幅変調信号のアクティブとなる区間の補正を行うための値である第１の補正値と、前記第３のパルス幅変調信号のアクティブとなる区間の補正を行うための値である第３の補正値とを保持し、
前記Ｎ個の第２のカウンタは、
前記第１のカウンタのカウント値に対して、前記第１の補正値分時間的に進んだ値をカウントする第３のカウンタと、
前記第１のカウンタのカウント値に対して、前記第３の補正値分時間的に遅れた値をカウントする第４のカウンタとを含み、
前記Ｎ個のセレクタは、
前記第１のパルス幅変調信号の補正を行わない場合に前記第１のカウンタのカウント値を選択し、前記第１のパルス幅変調信号の補正を行う場合に前記第３のカウンタのカウント値を選択する第１のセレクタと、
前記第３のパルス幅変調信号の補正を行わない場合に前記第１のカウンタのカウント値を選択し、前記第３のパルス幅変調信号の補正を行う場合に前記第４のカウンタのカウント値を選択する第２のセレクタとを含み、
前記半導体装置は、さらに、
前記ＡＤ変換手段によるデジタル信号への変換処理に要する時間に対応する値を格納する第２のレジスタと、
前記第１の値と前記第２の値との差分である第１の差分値、及び、前記第２の値と前記第３の値の差分である第２の差分値を算出する差分算出手段と、
前記第１の差分値と、前記第２のレジスタが格納する値とを比較し、前記第１の差分値が前記第２のレジスタが格納する値より小さい場合に、前記第２のレジスタが格納する値と前記第１の差分値との差分である第３の差分値を算出し、前記第３の差分値を前記第１の補正値として前記補正用バッファに格納し、前記第１のセレクタに前記第３のカウンタのカウント値を選択させ、前記第２の差分値と、前記第２のレジスタが格納する値とを比較し、前記第２の差分値が前記第２のレジスタが格納する値より小さい場合に、前記第２のレジスタが格納する値と前記第２の差分値との差分である第４の差分値を算出し、前記第４の差分を前記第３の補正値として前記補正用バッファに格納し、前記第２のセレクタに前記第４のカウンタのカウント値を選択させる比較演算手段とを備える
ことを特徴とする請求項２記載の半導体装置。
【請求項９】
前記補正用バッファは、さらに、前記第２のパルス幅変調信号のアクティブとなる区間の補正を行うための値である第２の補正値を保持し、
前記Ｎ個の第２のカウンタは、さらに、
前記第１のカウンタのカウント値に対して、前記第２の補正値分時間的に遅れた値をカウントする第５のカウンタを含み、
前記Ｎ個のセレクタは、さらに、
前記第２のパルス幅変調信号の補正を行わない場合に前記第１のカウンタのカウント値を選択し、前記第２のパルス幅変調信号の補正を行う場合に前記第５のカウンタのカウント値を選択する第３のセレクタを含み、
前記半導体装置は、さらに、
前記第１のパルス幅変調信号のアクティブとなる区間が直前のカウント周期の該第１のパルス幅変調信号のアクティブとなる区間と重なるか否かを判定する区間判定手段を備え、
前記比較演算手段は、前記区間判定手段により第１のパルス幅変調信号のアクティブとなる区間が直前のカウント周期の該第１のパルス幅変調信号のアクティブとなる区間と重なると判定された場合に、前記第３の差分値を前記第２の補正値として前記補正用バッファに保持し、前記第３のセレクタに前記第５のカウント値を選択させ、前記第１のセレクタに前記第１のカウント値を選択させる
ことを特徴とする請求項８記載の半導体装置。
【請求項１０】
モータの駆動制御を行うモータ駆動装置であって、
直流電圧をＮ相交流電圧に変換してモータを駆動するインバータ回路と、
前記インバータ回路の電流値を検出する電流検出手段と、
前記インバータ回路の制御を行うＮ相のパルス幅変調信号を生成する請求項２〜９のいずれか１項に記載の半導体装置とを備え、
前記ＡＤ変換手段は、前記電流検出手段が検出した電流値をデジタル信号に変換する
ことを特徴とするモータ駆動装置。
【請求項１１】
冷媒を圧縮する圧縮機と、
前記圧縮機が圧縮した冷媒を断熱膨張させる熱変換器と、
前記圧縮機を駆動するモータの駆動制御を行う請求項１０記載のモータ駆動装置とを備える
ことを特徴とする空調機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置、モータ駆動装置、及び空調機に関し、特に多相モータを駆動するインバータ回路の制御を行うパルス幅変調信号を生成する半導体装置に関する。
【背景技術】
【０００２】
近年、消費電力の低減などの観点から、ブラシレスモータのような、高効率の電動機を任意の周波数で駆動するインバータなどが広く一般に使用されている。ブラシレスモータのインバータ制御において、モータの回転子の位置を検出する必要がある。従来、位置センサを用いて、モータの回転子の位置を検出する方法が知られている。位置センサを用いて回転子の位置を検出する場合、位置センサの取り付け場所が必要となるという問題がある。また、コストが増加するという問題がある。
【０００３】
この問題を解決するために、位置センサを用いずに、複数の相電流を１つの電流検出器で順次検出してＡＤ変換を行い、そのＡＤ変換結果に基づいて、回転子の位置を推定する技術が提案されている（例えば、特許文献１参照。）。
【０００４】
回転子の位置推定においては、電流検出器によって検出された電流のＡＤ変換を行う必要があるため、各相電流の通電タイミングを調整してＡＤ変換に必要な時間（ＡＤ変換時間とも称する）を確保しなければならない。図６は、従来の３相モータ駆動装置におけるキャリア信号と相電流Ｕ、Ｖ及びＷのＰＷＭ(Pulse Width Modulation：パルス幅変調)制御との関係を示す。相電流Ｕ、Ｖ及びＷを制御する信号ｕ、ｖ及びｗは、キャリア信号と相電流Ｕ、Ｖ及びＷに対応する比較値ｘ、ｙ及びｚのそれぞれとの比較結果に基づいて生成される。図６の例では、最初にＵ相を制御する信号ｕのパルスが立ち上がり、次いでＶ相、Ｗ相を制御する信号ｖ、ｗのパルスが立ち上がっている。
【０００５】
１つの電流検出器でＵ相及びＷ相に通電される電流の大きさを順次検出するには、Ｕ相のみが通電されている期間に電流検出器で検出された電流と、Ｗ相のみが通電されている期間、すなわち、信号ｕ及びｖのパルスのみがオンとなっている期間に電流検出器で検出された電流とをそれぞれＡＤ変換する必要がある。このため、上記２つのＡＤ変換に必要な時間を確保するために、マイクロコンピュータによって信号ｖ及びｗのパルスの立ち上がり及び立ち下がりタイミングが調整される。
【０００６】
マイクロコンピュータは、Ｖ相及びＷ相のＰＷＭ制御のパルスの立ち上がりをずらすことにより、キャリア信号の前半周期にＵ相及びＷ相のＡＤ変換を行い、このＡＤ変換結果に基づいて回転子の位置推定演算を行う。そして、次のカウント周期の比較値ｘ、ｙ及びｚの設定及びＡＤ変換開始時間の修正を行う。また、前半周期にパルスの立ち上がりをずらした分のデューティを調整するために、キャリア信号の後半周期の最初に割り込み処理によって比較値ｘ、ｙ及びｚの再設定を行う。
【特許文献１】特開２００３−１８９６７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の３相モータ駆動装置は、回転子の位置推定により高い精度を求めると、マイクロコンピュータによるソフトウエア処理が複雑化し、キャリア信号の１周期内に、ＡＤ変換時間確保の処理、回転子の位置推定演算、次のカウント周期の比較値設定及び割り込み処理の全てを完了させることができなくなる。このため、従来の３相モータ駆動装置では、回転子の位置推定の精度を上げにくいといった問題がある。また、ＣＰＵの処理速度を向上させることによって、上記問題は解決されるであろうが、コストの増大につながってしまう。
【０００８】
上記問題に鑑み、本発明は、ＣＰＵの処理速度を向上させることなく、回転子の位置推定の精度を向上させるモータ駆動装置、及び、多相モータのＰＷＭ制御を行う半導体装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明に係る半導体装置は、Ｎ相モータを駆動するインバータ回路の制御を行うＮ相のパルス幅変調信号を生成する半導体装置であって、前記Ｎ相のパルス幅変調信号がアクティブとなる区間を決定するための値であり、前記各パルス変調信号に対応するＮ個の値を保持する第１のレジスタと、前記各パルス変調信号のアクティブとなる区間の補正を行うための値であり、前記各パルス幅変調信号に対応するＮ個の補正値を保持する補正用バッファと、カウント周期毎に、第１のカウント値から第２のカウント値まで所定の時間毎にアップカウントを行い、前記第２のカウント値までアップカウントを行った後、前記第２のカウント値から前記第１のカウント値まで所定の時間毎にダウンカウントを行う第１のカウンタと、前記前記Ｎ相のパルス幅変調信号にそれぞれ対応し、第１のカウンタのカウント値に対して、対応する前記補正値分時間的に進んだ、又は遅れた値をカウントするＮ個の第２のカウンタと、対応する前記パルス変調信号のアクティブとなる区間の補正を行わない場合に前記第１のカウンタのカウント値を選択し、対応する前記パルス変調信号のアクティブとなる区間の補正を行う場合に対応する前記第２のカウンタのカウント値を選択するＮ個のセレクタと、前記各セレクタにより選択された前記第１のカウンタ又は前記第２のカウンタのカウント値と、対応する前記第１のレジスタが保持する値とが一致するか否かを判定するＮ個の比較手段と、前記比較手段が一致すると判定したタイミングで論理値が切り替わる前記Ｎ相のパルス幅変調信号を生成するパルス幅変調制御手段とを備える。
【００１０】
この構成によれば、補正が必要な場合には、パルス幅変調信号（以下、ＰＷＭ信号と記す。）のアクティブとなる区間（以下、オン区間と記す。）をシフトさせる。よって、オンデューティの変更なしに、例えば、ＡＤ変換を行う時間を確保することができる。よって、従来のインバータ制御用半導体装置で必要であった比較値を再設定するための割り込み処理が不要となり、ＣＰＵリソースを回転子の位置推定演算に集中させることができる。すなわち、本発明に係る半導体装置は、ＣＰＵの処理速度を向上させることなく、回転子の位置推定の精度を向上させることができる。
【００１１】
また、前記半導体装置は、さらに、前記インバータ回路の電流値をデジタル信号に変換するＡＤ変換手段と、前記ＡＤ変換手段が変換したデジタル信号に基づき、前記Ｎ相のパルス幅変調信号のアクティブとなる区間を演算する演算手段とを備え、前記第１のレジスタは、前記演算手段が演算した前記Ｎ相のパルス幅変調信号のアクティブとなる区間を決定するための値を保持し、前記補正は、前記ＡＤ変換手段によるデジタル信号への変換処理の時間を確保するための補正であってもよい。
【００１２】
この構成によれば、ＡＤ変換手段がＡＤ変換を行う時間を確保するための補正が必要な場合には、ＰＷＭ信号のオン区間をシフトさせる。よって、オンデューティの変更なしに、ＡＤ変換を行う時間を確保することができる。よって、従来のインバータ制御用半導体装置で必要であった比較値を再設定するための割り込み処理が不要となり、ＣＰＵリソースを回転子の位置推定演算に集中させることができる。すなわち、本発明に係る半導体装置は、ＣＰＵの処理速度を向上させることなく、回転子の位置推定の精度を向上させることができる。なお、演算手段は、ＣＰＵと、ＣＰＵ上で実行されるプログラムを格納したＲＯＭ等の記憶手段とを備え、ＣＰＵ上で記憶手段からのプログラムを実行することで前記演算をおこなってもよい。また、演算手段は、ＣＰＵを備えるマイコン等であり、外部からプログラムを読み出し、前記演算を行ってもよい。すなわち、演算手段は、ＣＰＵのみで構成されてもよい。
【００１３】
また、前記Ｎ相のパルス幅変調信号は、第１のパルス幅変調信号と、前記第１のパルス幅変調信号の直前及び直後のいずれか一方で論理値が変更される第２のパルス幅変調信号とを含み、前記第１のレジスタは、前記第１のパルス幅変調信号のアクティブとなる区間を決定するための値である第１の値と、前記第２のパルス幅変調信号のアクティブとなる区間を決定するための値である第２の値とを保持し、前記半導体装置は、さらに、前記ＡＤ変換手段によるデジタル信号への変換処理に要する時間に対応する値を保持する第２のレジスタと、前記第１の値と、前記第２の値との差分値を算出する差分算出手段と、前記差分値と、前記第２のレジスタが保持する値とを比較し、前記差分値が前記第２のレジスタが保持する値より小さい場合に、前記第２のレジスタが保持する値と前記差分値との差分を算出し、算出した差分を前記補正値として前記第１のパルス幅変調信号又は前記第２のパルス幅変調信号に対応する前記補正用バッファに保持し、前記第１のパルス幅変調信号又は前記第２のパルス幅変調信号に対応する前記セレクタに前記第２のカウンタのカウント値を選択させる比較演算手段とを備えてもよい。
【００１４】
この構成によれば、演算手段が演算したオン区間のＰＷＭ信号では、ＡＤ変換手段によるＡＤ変換の時間が確保できない場合には、第２のレジスタが保持するＡＤ変換に必要な時間と、演算手段が演算したＰＷＭ信号のオン区間を決定する値との差分値を、補正用バッファに格納する。これにより、通常（補正を行わない場合）のオン区間に対して、ＡＤ変換に必要な時間と、演算手段が演算したＰＷＭ信号のオン区間を決定する値との差分値分、時間的に進んだ、又は遅れたオン区間のＰＷＭ信号を生成することができる。
【００１５】
また、前記比較演算手段は、前記差分値が前記第２のレジスタが保持する値より大きい場合に、前記第１のパルス幅変調信号又は前記第２のパルス幅変調信号に対応する前記補正用バッファに「０」を保持し、前記第１のパルス幅変調信号又は前記第２のパルス幅変調信号に対応する前記セレクタに前記第１のカウンタのカウント値を選択させてもよい。
【００１６】
この構成によれば、演算手段が演算したオン区間のＰＷＭ信号で、ＡＤ変換手段によるＡＤ変換の時間が確保できる場合には、補正を行わない。また、ＣＰＵ等は、補正用バッファが格納する値を確認することで、補正が行われたか否かを判断することができる。
【００１７】
また、前記半導体装置は、さらに、前記補正が行われたパルス幅変調信号のアクティブとなる区間が、前記第１のカウンタの前記カウント周期の範囲を越えるか否かを判定し、前記補正が行われたパルス幅変調信号のアクティブとなる区間が、前記第１のカウンタの前記カウント周期の範囲を越える場合に、第１のフラグを設定する第１のフラグ制御手段を備えてもよい。
【００１８】
この構成によれば、ＣＰＵ等は、第１のフラグを参照することにより、補正状態を判別し、補正状態に応じた後処理を行うことができる。例えば、ＣＰＵは、第１のフラグを監視し、オン区間が次のカウント周期にずれこんでいるＰＷＭ信号については、次のカウント周期での補正を制限することができる。
【００１９】
また、前記半導体装置は、さらに、前記パルス幅変調信号のアクティブとなる区間が直前のカウント周期の該パルス幅変調信号のアクティブとなる区間と重なるか否かを判定し、前記パルス幅変調信号のアクティブとなる区間が直前のカウント周期の該パルス幅変調信号のアクティブとなる区間と重なる場合に、第２のフラグを設定する第２のフラグ制御手段を備えてもよい。
【００２０】
この構成によれば、ＣＰＵ等は、第２のフラグを参照することにより、ＰＷＭ信号のオン区間の重なりを判別し、これに応じた後処理を行うことができる。例えば、ＣＰＵは、第２のフラグをＣＰＵにより監視し、オンデューティが一時的に短くなった信号については、次のカウント周期でその短くなった分を補償するようにオンデューティを長くすることができる。
【００２１】
また、前記比較演算手段は、算出した前記第２のレジスタが保持する値と前記差分値との差分に基づき、前記ＡＤ変換手段がデジタル信号への変換処理を開始するタイミングを制御してもよい。
【００２２】
この構成によれば、補正後のＰＷＭ信号の区間に合わせて、ＡＤ変換手段は、ＡＤ変換処理を開始することができる。
【００２３】
また、前記半導体装置は、３相モータを駆動するインバータ回路の制御を行う３相のパルス幅変調信号を生成する半導体装置であって、前記３相のパルス幅変調信号は、３相のパルス幅変調信号の中で最もアクティブとなる区間の広い第１のパルス幅変調信号と、３相のパルス幅変調信号の中で２番目にアクティブとなる区間の広い第２のパルス幅変調信号と、３相のパルス幅変調信号の中で最もアクティブとなる区間の狭い第３のパルス幅変調信号とを含み、前記第１のレジスタは、第１のパルス幅変調信号のアクティブとなる区間を決定するための値である第１の値と、第２のパルス幅変調信号のアクティブとなる区間を決定するための値である第２の値と、第３のパルス幅変調信号のアクティブとなる区間を決定するための値である第３の値とを保持し、前記補正用バッファは、前記第１のパルス幅変調信号のアクティブとなる区間の補正を行うための値である第１の補正値と、前記第３のパルス幅変調信号のアクティブとなる区間の補正を行うための値である第３の補正値とを保持し、前記Ｎ個の第２のカウンタは、前記第１のカウンタのカウント値に対して、前記第１の補正値分時間的に進んだ値をカウントする第３のカウンタと、前記第１のカウンタのカウント値に対して、前記第３の補正値分時間的に遅れた値をカウントする第４のカウンタとを含み、前記Ｎ個のセレクタは、前記第１のパルス幅変調信号の補正を行わない場合に前記第１のカウンタのカウント値を選択し、前記第１のパルス幅変調信号の補正を行う場合に前記第３のカウンタのカウント値を選択する第１のセレクタと、前記第３のパルス幅変調信号の補正を行わない場合に前記第１のカウンタのカウント値を選択し、前記第３のパルス幅変調信号の補正を行う場合に前記第４のカウンタのカウント値を選択する第２のセレクタとを含み、前記半導体装置は、さらに、前記ＡＤ変換手段によるデジタル信号への変換処理に要する時間に対応する値を格納する第２のレジスタと、前記第１の値と前記第２の値との差分である第１の差分値、及び、前記第２の値と前記第３の値の差分である第２の差分値を算出する差分算出手段と、前記第１の差分値と、前記第２のレジスタが格納する値とを比較し、前記第１の差分値が前記第２のレジスタが格納する値より小さい場合に、前記第２のレジスタが格納する値と前記第１の差分値との差分である第３の差分値を算出し、前記第３の差分値を前記第１の補正値として前記補正用バッファに格納し、前記第１のセレクタに前記第３のカウンタのカウント値を選択させ、前記第２の差分値と、前記第２のレジスタが格納する値とを比較し、前記第２の差分値が前記第２のレジスタが格納する値より小さい場合に、前記第２のレジスタが格納する値と前記第２の差分値との差分である第４の差分値を算出し、前記第４の差分を前記第３の補正値として前記補正用バッファに格納し、前記第２のセレクタに前記第４のカウンタのカウント値を選択させる比較演算手段とを備えてもよい。
【００２４】
この構成によれば、３相のＰＷＭ信号のうち、最もオン区間の長いＰＷＭ信号（第１のパルス幅変調信号）と、最もオン区間の短いＰＷＭ信号（第３のパルス幅変調信号）とに補正を行う。これにより、２つのＡＤ変換に必要な期間に対する補正を独立して行うことができ、処理量を低減することができる。例えば、第１及び第２のパルス幅変調信号のみがオンする区間に行われるＡＤ変換の時間に対する補正を、第２のパルス幅変調信号のオン区間を変更することで補正した場合には、第２のパルス幅変調信号のオン区間を変更することで第１のパル幅変調信号のみがオンする区間が変更される。これにより、再度、第１のパルス幅変調信号に対する補正値を算出する必要が生じ、処理が複雑化する。一方、第１及び第２のパルス幅変調信号のみがオンする区間に行われるＡＤ変換の時間に対する補正を、第３のパルス幅変調信号のオン区間を変更することで補正した場合には、第３のパルス幅変調信号のオン区間を変更することで、第１のパル幅変調信号のみがオンする区間は変更されない。よって、処理量を低減することができる。
【００２５】
また、前記補正用バッファは、さらに、前記第２のパルス幅変調信号のアクティブとなる区間の補正を行うための値である第２の補正値を保持し、前記Ｎ個の第２のカウンタは、さらに、前記第１のカウンタのカウント値に対して、前記第２の補正値分時間的に遅れた値をカウントする第５のカウンタを含み、前記Ｎ個のセレクタは、さらに、前記第２のパルス幅変調信号の補正を行わない場合に前記第１のカウンタのカウント値を選択し、前記第２のパルス幅変調信号の補正を行う場合に前記第５のカウンタのカウント値を選択する第３のセレクタを含み、前記半導体装置は、さらに、前記第１のパルス幅変調信号のアクティブとなる区間が直前のカウント周期の該第１のパルス幅変調信号のアクティブとなる区間と重なるか否かを判定する区間判定手段を備え、前記比較演算手段は、前記区間判定手段により第１のパルス幅変調信号のアクティブとなる区間が直前のカウント周期の該第１のパルス幅変調信号のアクティブとなる区間と重なると判定された場合に、前記第３の差分値を前記第２の補正値として前記補正用バッファに保持し、前記第３のセレクタに前記第５のカウント値を選択させ、前記第１のセレクタに前記第１のカウント値を選択させてもよい。
【００２６】
この構成によれば、補正により、所定のＰＷＭ信号のオン区間が、所定のＰＷＭ信号の直前のカウント周期のオン区間と重なる場合には、他のＰＷＭ信号のオン区間をずらすことで、オン区間の重なりを回避することができる。
【００２７】
また、本発明に係るモータ駆動装置は、モータの駆動制御を行うモータ駆動装置であって、直流電圧をＮ相交流電圧に変換してモータを駆動するインバータ回路と、前記インバータ回路の電流値を検出する電流検出手段と、前記インバータ回路の制御を行うＮ相のパルス幅変調信号を生成する前記半導体装置とを備え、前記ＡＤ変換手段は、前記電流検出手段が検出した電流値をデジタル信号に変換する。
【００２８】
この構成によれば、ＡＤ変換手段がＡＤ変換を行う時間を確保するための補正が必要な場合には、ＰＷＭ信号のオン区間をシフトさせる。よって、オンデューティの変更なしに、ＡＤ変換を行う時間を確保することができる。よって、従来のモータ駆動装置で必要であった比較値を再設定するための割り込み処理が不要となり、ＣＰＵリソースを回転子の位置推定演算に集中させることができる。すなわち、本発明に係るモータ駆動装置は、ＣＰＵの処理速度を向上させることなく、回転子の位置推定の精度を向上させることができる。
【００２９】
また、本発明に係る空調機は、冷媒を圧縮する圧縮機と、前記圧縮機が圧縮した冷媒を断熱膨張させる熱変換器と、前記圧縮機を駆動するモータの駆動制御を行う前記モータ駆動装置とを備える。
【００３０】
この構成によれば、モータ駆動装置において、ＡＤ変換手段がＡＤ変換を行う時間を確保するための補正が必要な場合には、ＰＷＭ信号のオン区間をシフトさせる。よって、オンデューティの変更なしに、ＡＤ変換を行う時間を確保することができる。よって、従来のモータ駆動装置で必要であった比較値を再設定するための割り込み処理が不要となり、ＣＰＵリソースを回転子の位置推定演算に集中させることができる。すなわち、本発明に係る空調機のモータ駆動装置は、ＣＰＵの処理速度を向上させることなく、回転子の位置推定の精度を向上させることができる。
【発明の効果】
【００３１】
本発明は、ＣＰＵの処理速度を向上させることなく、回転子の位置推定の精度を向上させるモータ駆動装置、及び、多相モータのＰＷＭ制御を行う半導体装置を提供することができる。
【発明を実施するための最良の形態】
【００３２】
以下、本発明に係るインバータ制御用半導体装置の実施の形態について、図面を参照しながら詳細に説明する。
【００３３】
（第１の実施の形態）
本発明の第１の実施の形態に係るインバータ制御用半導体装置は、ＰＷＭ制御においてＡＤ変換時間を確保するための補正が必要な場合に、パルス幅を変更せずにパルスのオン区間をシフトさせる。これにより、割り込み処理を行う必要がないので、ＣＰＵの処理負荷を低減することができる。
【００３４】
まず、本発明の第１の実施の形態に係るインバータ制御用半導体装置の構成を説明する。
【００３５】
図１は、本発明の第１の実施の形態に係るインバータ制御用半導体装置を含むモータ装置の構成を示す図である。図１に示すモータ装置１００は、電流検出器１と、インバータ２と、モータ３と、インバータ制御用半導体装置１０と、コンバータ２４と、交流電圧源２５とを備える。モータ３は、例えば、３相ＤＣブラシレスモータである。インバータ２は、交流電圧源２５からの交流電圧をコンバータ２４で整流した直流電圧を３相交流電圧（Ｕ相、Ｖ相及びＷ相）に変換してモータ３を駆動する。電流検出器１は、インバータ２の母線に接続され、インバータ２の電流値を検出する。
【００３６】
インバータ制御用半導体装置１０は、モータ３を駆動するインバータ２の制御を行う３相のＰＷＭ信号を生成する半導体装置である。インバータ制御用半導体装置１０は、ＡＤ変換部４と、制御部５と、補正制御部６と、オーバーフラグレジスタ２２と、エラーフラグレジスタ２３と、位置推定部２６とを備える。
【００３７】
ＡＤ変換部４は、電流検出器１により検出されたインバータ２の電流値をデジタル信号にＡＤ変換する。
【００３８】
位置推定部２６は、ＡＤ変換部４が変換したデジタル信号に基づき、３相のＰＷＭ信号のパルス幅を演算する。具体的には、位置推定部２６は、ＡＤ変換部４が変換したデジタル信号、すなわちインバータ２の母線に流れる電流値から、モータ３の相電流を算出する。さらに、位置推定部２６は、算出した相電流からモータ３の誘起電圧を推定する。さらに、位置推定部２６は、推定した誘起電圧からモータ３の回転子の位置及び速度を推定する。さらに、位置推定部２６は、推定した回転子の速度が、外部より与えられた目標速度になるように、３相のＰＷＭ信号のパルス幅を算出する。ここで、位置推定部２６は、ＣＰＵと、ＣＰＵ上で実行されるプログラムを格納したＲＯＭ等の記憶部とを備え、位置推定部２６は、ＣＰＵ上で、ＲＯＭ等からのプログラムを実行することで実現される。なお、位置推定部２６は、ＣＰＵを備えるマイコンであり、外部からプログラムを読み出し、上記処理を行ってもよい。
【００３９】
制御部５は、位置推定部２６が算出した３相のＰＷＭ信号のパルス幅に基づき、インバータ２を制御するＰＷＭ信号ｕ、ｕｂ、ｖ、ｖｂ、ｗ及びｗｂを生成する。制御部５は、通常用バイナリカウンタ１５と、出力タイミング制御バッファ１１ａ、１１ｂ及び１１ｃと、補正用バイナリカウンタ１２ａ、１２ｂ及び１２ｃと、セレクタ部１３ａ、１３ｂ及び１３ｃと、比較部１４ａ、１４ｂ及び１４ｃと、コンペアレジスタ１６ａ、１６ｂ及び１６ｃと、コンペアレジスタバッファ１７ａ、１７ｂ及び１７ｃと、ＰＷＭ制御部１８とを備える。
【００４０】
出力タイミングバッファ１１ａ、１１ｂ及び１１ｃは、ＰＷＭ信号ｕ、ｕｂ、ｖ、ｖｂ、ｗ及びｗｂのオン区間の補正を行うための値である補正値を保持する。ここで、出力タイミングバッファ１１ａ、１１ｂ及び１１ｃが保持する補正値を用いる補正は、ＡＤ変換部４によるデジタル信号への変換処理の時間を確保するためのＰＷＭ信号ｕ、ｕｂ、ｖ、ｖｂ、ｗ及びｗｂのオン区間の補正である。出力タイミング制御バッファ１１ａは、Ｕ相のＰＷＭ信号ｕ及びｕｂの補正を行うための値である補正値αを格納する。出力タイミング制御バッファ１１ｂは、Ｖ相のＰＷＭ信号ｖ及びｖｂの補正を行うための値である補正値βを格納する。出力タイミング制御バッファ１１ｃは、Ｗ相のＰＷＭ信号ｗ及びｗｂの補正を行うための値である補正値γを格納する。
【００４１】
通常用バイナリカウンタ１５は、アップカウント及びダウンカウントを行う。具体的には、通常用バイナリカウンタ１５は、カウント周期毎に、カウント開始値からカウント終了値まで所定の時間毎にアップカウントを行い、カウント終了値までアップカウントを行った後、カウント終了値からカウント開始値まで所定の時間毎にダウンカウントを行う。
【００４２】
補正用バイナリカウンタ１２ａ、１２ｂ及び１２ｃは、通常用バイナリカウンタ１５のカウント値に対して、それぞれ出力タイミング制御バッファ１１ａ、１１ｂ及び１１ｃが格納する補正値を加算又は減算したカウント値をカウントする。すなわち、補正用バイナリカウンタ１２ａ、１２ｂ及び１２ｃは、通常用バイナリカウンタ１５のカウント値に対して、補正値分時間的に進んだ、又は遅れた値をカウントする。例えば、補正用バイナリカウンタ１２ａは、通常用バイナリカウンタ１５のカウント値から、出力タイミング制御バッファ１１ａの格納する補正値α分、時間的に進んだカウント値をカウントする。補正用バイナリカウンタ１２ｂは、通常用バイナリカウンタ１５のカウント値から、出力タイミング制御バッファ１１ｂの格納する補正値β分、時間的に進んだカウント値をカウントする。補正用バイナリカウンタ１２ｃは、通常用バイナリカウンタ１５のカウント値から、出力タイミング制御バッファ１１ｃの格納する補正値γ分、時間的に遅れたカウント値をカウントする。なお、補正用バイナリカウンタ１２ａ及び１２ｂは、通常用バイナリカウンタ１５のカウント値に対して、それぞれ出力タイミング制御バッファ１１ａ及び１１ｂが格納する補正値分、時間的に遅れたカウント値をカウントしてもよい。また、補正用バイナリカウンタ１２ｃは、通常用バイナリカウンタ１５のカウント値に対して、出力タイミング制御バッファ１１ｃが格納する補正値分、時間的に進んだカウント値をカウントしてもよい。
【００４３】
セレクタ部１３ａは、Ｕ相のＰＷＭ信号のパルス幅に補正を行わない場合に通常用バイナリカウンタ１５のカウント値を選択し、Ｕ相のＰＷＭ信号のパルス幅に補正を行う場合に補正用バイナリカウンタ１２ａのカウント値を選択する。セレクタ部１３ｂは、Ｖ相のＰＷＭ信号のパルス幅に補正を行わない場合に通常用バイナリカウンタ１５のカウント値を選択し、Ｖ相のＰＷＭ信号のパルス幅に補正を行う場合に補正用バイナリカウンタ１２ｂのカウント値を選択する。セレクタ部１３ｃは、Ｗ相のＰＷＭ信号のパルス幅に補正を行わない場合に通常用バイナリカウンタ１５のカウント値を選択し、Ｗ相のＰＷＭ信号のパルス幅に補正を行う場合に補正用バイナリカウンタ１２ｃのカウント値を選択する。ここで、選択されたカウント値は、キャリア信号として三角波を生成するものである。
【００４４】
コンペアレジスタ１６ａは、Ｕ相に通電する電流のパルス幅を決定するための値である比較値ｘを格納する。コンペアレジスタ１６ｂは、Ｖ相に通電する電流のパルス幅を決定するための値である比較値ｙを格納する。コンペアレジスタ１６ｃは、Ｗ相に通電する電流のパルス幅を決定するための値である比較値ｚを格納する。
【００４５】
コンペアレジスタバッファ１７ａ、１７ｂ及び１７ｃは、コンペアレジスタ１６ａ、１６ｂ及び１６ｃのバッファであり、次のカウント周期のパルス幅を決定するための比較値ｘ’、ｙ’及びｚ’を格納する。ここで、比較値ｘ’は、位置推定部２６が演算したＵ相のＰＷＭ信号のパルス幅を決定するための値であり、比較値ｙ’は、位置推定部２６が演算したＶ相のＰＷＭ信号のパルス幅を決定するための値であり、比較値ｚ’は、位置推定部２６が演算したＺ相のＰＷＭ信号のパルス幅を決定するための値である。
【００４６】
比較部１４ａは、コンペアレジスタ１６ａに格納されている比較値ｘと、セレクタ部１３ａが選択したカウント値との大小関係を比較し、一致するか否かを判定する。比較部１４ｂは、コンペアレジスタ１６ｂに格納されている比較値ｙと、セレクタ部１３ｂが選択したカウント値との大小関係を比較し、一致するか否かを判定する。比較部１４ｃは、コンペアレジスタ１６ｃに格納されている比較値ｚと、セレクタ部１３ｃが選択したカウント値との大小関係を比較し、一致するか否かを判定する。
【００４７】
ＰＷＭ制御部１８は、インバータ２を制御するＰＷＭ信号ｕ、ｕｂ、ｖ、ｖｂ、ｗ及びｗｂを生成する。なお、信号ｕｂは信号ｕの反転信号であり、信号ｖｂは信号ｖの反転信号であり、信号ｗｂは信号ｗの反転信号である。ＰＷＭ制御部１８は、比較部１４ａが、比較値ｘと、セレクタ部１３ａが選択したカウント値とが一致したと判定したタイミングで信号ｕ及びｕｂの論理を反転させる。ＰＷＭ制御部１８は、比較部１４ｂが、比較値ｙと、セレクタ部１３ｂが選択したカウント値とが一致したと判定したタイミングで信号ｖ及びｖｂの論理を反転させる。ＰＷＭ制御部１８は、比較部１４ｃが、比較値ｚと、セレクタ部１３ｃが選択したカウント値とが一致したと判定したタイミングで信号ｗ及びｗｂの論理を反転させる。ここで、信号ｕはインバータ２を構成するスイッチ素子２ａを制御し、信号ｖはスイッチ素子２ｂを制御し、信号ｗはスイッチ素子２ｃを制御し、信号ｕｂはスイッチ素子２ｄを制御し、信号ｖｂはスイッチ素子２ｅを制御し、信号ｗｂはスイッチ素子２ｆを制御する。また、ＰＷＭ制御部１８は、信号ｕと信号ｕｂとの信号間、信号ｖと信号ｖｂと信号間、及び信号ｗと信号ｗｂとの信号間にデッドタイムと呼ばれる共に非アクティブな区間を挿入することもある。
【００４８】
補正制御部６は、出力タイミング制御バッファ１１ａ、１１ｂ及び１１ｃに格納される補正値α、β及びγを生成する。補正制御部６は、ＡＤ変換時間格納レジスタ２１と、差分算出部１９と、比較演算部２０を備える。
【００４９】
差分算出部１９は、比較値ｘ’と、比較値ｙ’と差分である差分値ｓ、及び比較値ｙ’と比較値ｚ’との差分である差分値ｔを算出する。
【００５０】
ＡＤ変換時間格納レジスタ２１は、ＡＤ変換時間を示す設定値ｒを格納する。例えば、設定値ｒは、ＡＤ変換部４が１相の電流のＡＤ変換の処理に要する時間に対応する。
【００５１】
比較演算部２０は、差分値ｓと設定値ｒとを比較し、差分値ｓと設定値ｒとの大小関係を判定する。比較演算部２０は、差分値ｓが設定値ｒより小さい場合に、設定値ｒと差分値ｓとの差分を算出し、算出した差分を出力タイミング制御バッファ１１ａに格納し、かつセレクタ部１３ａに補正用バイナリカウンタ１２ａを選択する切換信号を出力する。また、比較演算部２０は、差分値ｓが設定値ｒより大きい場合に、出力タイミング制御バッファ１１ａに「０」を格納し、かつセレクタ部１３ａに通常用バイナリカウンタ１５を選択する切換信号を出力する。
【００５２】
さらに、比較演算部２０は、差分値ｔと設定値ｒとを比較し、差分値ｔと設定値ｒとの大小関係を判定する。比較演算部２０は、差分値ｔが設定値ｒより小さい場合に、設定値ｒと差分値ｔとの差分を算出し、算出した差分を出力タイミング制御バッファ１１ｃに格納し、かつセレクタ部１３ｃに補正用バイナリカウンタ１２ｃを選択する切換信号を出力する。また、比較演算部２０は、差分値ｔが設定値ｒより大きい場合に、出力タイミング制御バッファ１１ｃに「０」を格納し、かつセレクタ部１３ｃに通常用バイナリカウンタ１５を選択する切換信号を出力する。
【００５３】
また、比較演算部２０は、補正を行った場合（補正値α、β及びγに「０」以外の値を設定した場合）に、補正が行われたＰＷＭ信号のオン区間が、通常用バイナリカウンタ１５のカウント周期の範囲を越えるか否かを判定する。比較演算部２０は、補正が行われたＰＷＭ信号のオン区間が、通常用バイナリカウンタ１５のカウント周期の範囲を越える場合に、これを示すフラグであるオーバーフラグをオーバーフラグレジスタ２２に設定する。
【００５４】
また、比較演算部２０は、補正を行った場合（補正値α、β及びγに「０」以外の値を設定した場合）に、補正が行われたＰＷＭ信号のオン区間が直前のカウント周期の該ＰＷＭ信号のオン区間と重なるか否かを判定する。比較演算部２０は、ＰＷＭ信号のオン区間が通常用バイナリカウンタ１５のカウント周期の範囲を越えた場合であり、かつＰＷＭ信号のオン区間が直前のカウント周期の該ＰＷＭ信号のオン区間と重なる場合に、これを示すフラグであるエラーフラグをエラーフラグレジスタ２３に設定する。また、比較演算部２０は、補正を行わない場合（補正値α、β及びγに「０」の値を設定した場合）でも、前周期の補正値α、β及びγが大きすぎるために、直前のＰＷＭ信号のオン区間と重なるときは、これを示すフラグとしてエラーフラグをエラーフラグレジスタ２３に設定する。
【００５５】
次に、モータ装置１００の動作を説明する。一例として、相電流Ｕ、Ｖ及びＷのＰＷＭ制御を行う信号ｕ、ｖ及びｗのパルスにおいて、Ｕ相のパルス幅が最大で、Ｗ相のパルス幅が最小の場合、つまりパルス幅を決定するための比較値ｘ、ｙ及びｚの関係が、ｘ＜ｙ＜ｚの場合を前提に説明する。
【００５６】
まず、所定のカウント周期におけるＡＤ変換部４、位置推定部２６及び補正制御部６による次のカウント周期の比較値設定の動作を説明する。
【００５７】
ＡＤ変換部４は、電流検出器１で検出された電流値（Ｕ相及びＷ相の電流）をＡＤ変換する。位置推定部２６は、ＡＤ変換部４によりＡＤ変換された電流値に基づき、次のカウント周期の比較値ｘ’、ｙ’及びｚ’を算出する。位置推定部２６は、算出した次のカウント周期の比較値ｘ’、ｙ’及びｚ’をそれぞれコンペアレジスタバッファ１７ａ、１７ｂ及び１７ｃに格納する。
【００５８】
差分算出部１９は、比較値ｘ’と、比較値ｙ’との差分値ｓを算出する。また、差分算出部１９は、比較値ｙ’と比較値ｚ’との差分値ｔを算出する。ここで、差分値ｓは、Ｕ相のＰＷＭ信号のみがオンする区間、すなわちＵ相の相電流のＡＤ変換に用いられる時間に対応する。また、差分値ｔは、Ｕ相及びＶ相のＰＷＭ信号がオンする区間、すなわちＷ相の相電流のＡＤ変換に用いられる時間に対応する。
【００５９】
比較演算部２０は、差分値ｓと設定値ｒとを比較し、差分値ｓと設定値ｒとの大小関係を判定する。比較演算部２０は、差分値ｓが設定値ｒより小さい場合に、設定値ｒから差分値ｓを引いた値を出力タイミング制御バッファ１１ａに格納し、かつセレクタ部１３ａに補正用バイナリカウンタ１２ａを選択する切換信号を出力する。また、比較演算部２０は、差分値ｓが設定値ｒより大きい場合に、出力タイミング制御バッファ１１ａに「０」を格納し、かつセレクタ部１３ａに通常用バイナリカウンタ１５を選択する切換信号を出力する。
【００６０】
さらに、比較演算部２０は、差分値ｔと設定値ｒとを比較し、差分値ｔと設定値ｒとの大小関係を判定する。比較演算部２０は、差分値ｔが設定値ｒより小さい場合に、設定値ｒから差分値ｔを引いた値を出力タイミング制御バッファ１１ｃに格納し、かつセレクタ部１３ｃに補正用バイナリカウンタ１２ｃを選択する切換信号を出力する。また、比較演算部２０は、差分値ｔが設定値ｒより大きい場合に、出力タイミング制御バッファ１１ｃに「０」を格納し、かつセレクタ部１３ｃに通常用バイナリカウンタ１５を選択する切換信号を出力する。なお、比較演算部２０は、出力タイミング制御バッファ１１ａ、１１ｂ及び１１ｃへのデータの格納と、セレクタ部１３ａ、１３ｂ及び１３ｃの切り替えとを、例えば、１周期が終了したタイミングで行う。また、１周期が終了したタイミングで、コンペアレジスタバッファ１７ａ、１７ｂ及び１７ｃが格納している比較値ｘ’、ｙ’及びｚ’が、比較値ｘ、ｙ及びｚとしてコンペアレジスタ１６ａ、１６ｂ及び１６ｃに格納される。
【００６１】
次に、所定のカウント周期の次のカウント周期における制御部５によるＰＷＭ信号生成の動作を説明する。
【００６２】
図２は、ＰＷＭ信号の１周期におけるキャリア信号と相電流Ｕ、Ｖ及びＷのＰＷＭ信号との関係の一例を示す図である。図２に示す例において差分値ｓは設定値ｒよりも小さく、差分値ｔは設定値ｒよりも大きい。よって、比較演算部２０は、次のカウント周期の開始時に、補正値αとして設定値ｒから差分値ｓを引いた値を出力タイミング制御バッファ１１ａに格納する（補正値α＝設定値ｒ−差分値ｓ）。また、比較演算部２０の制御により、セレクタ部１３ａは、補正用バイナリカウンタ１２ａのカウント値を選択する。また、差分値ｔが設定値ｒ以上であるため、比較演算部２０は、出力タイミング制御バッファ１１ｃに「０」を格納する（補正値γ＝０）。また、セレクタ部１３ｃは、通常用バイナリカウンタ１５のカウント値を選択する。また、比較演算部２０は、出力タイミング制御バッファ１１ｂに「０」を格納し（補正値β＝０）、セレクタ部１３ｂは、通常用バイナリカウンタ１５のカウント値を選択する。
【００６３】
通常用バイナリカウンタ１５は、ＰＷＭ信号の１周期（カウント周期）において、カウント開始値（例えば、「０」）からカウント終了値（例えば、「２５５」）まで所定の時間毎にアップカウントを行い、カウント終了値（例えば、「２５５」）までアップカウントを行った後、カウント終了値（例えば、「２５５」）からカウント開始値（例えば、「０」）まで所定の時間毎にダウンカウントを行う。例えば、通常用バイナリカウンタ１５は、インバータ制御用半導体装置１０の内部、又は外部で生成されたクロックにより、アップカウント及びダウンカウントを行う。これにより、図２に示す三角波であるキャリア信号２７が生成される。
【００６４】
補正用バイナリカウンタ１２ａは、通常用バイナリカウンタ１５と同様に、ＰＷＭ信号の１周期において、カウント開始値（例えば、「０」）からカウント終了値（例えば、「２５５」）まで所定の時間毎にアップカウントを行い、カウント終了値（例えば、「２５５」）までアップカウントを行った後、カウント終了値（例えば、「２５５」）からカウント開始値（例えば、「０」）まで所定の時間毎にダウンカウントを行う。例えば、補正用バイナリカウンタ１２ａは、インバータ制御用半導体装置１０の内部、又は外部で生成されたクロックにより、アップカウント及びダウンカウントを行う。さらに、補正用バイナリカウンタ１２ａは、通常用バイナリカウンタ１５のカウント値に対して、補正値α分時間的に進んだ値をカウントする。これにより、図２に示す三角波であるキャリア信号２８が生成される。
【００６５】
ＰＷＭ制御部１８は、補正用バイナリカウンタ１２ａのカウント値と、比較値ｘが一致したタイミングＴ１で、信号ｕのパルスを立ち上げる。次いで、ＰＷＭ制御部１８は、通常用バイナリカウンタ１５のカウント値と、比較値ｙが一致したタイミングＴ３で、信号ｖのパルスを立ち上げる。次いで、ＰＷＭ制御部１８は、通常用バイナリカウンタ１５のカウント値と、比較値ｚが一致したタイミングＴ４で、信号ｗのパルスを立ち上げる。
【００６６】
また、１周期の後半（通常用バイナリカウンタ１５及び補正用バイナリカウンタ１２ａのダウンカウント時）において、通常用バイナリカウンタ１５のカウント値と、比較値ｚが一致したタイミングＴ５で、信号ｗのパルスを立ち下げる。次いで、ＰＷＭ制御部１８は、通常用バイナリカウンタ１５のカウント値と、比較値ｙが一致したタイミングＴ６で、信号ｖのパルスを立ち下げる。次いで、ＰＷＭ制御部１８は、補正用バイナリカウンタ１２ａのカウント値と、比較値ｘが一致したタイミングＴ７で、信号ｕのパルスを立ち下げる。
【００６７】
このように、本発明の第１の実施の形態に係るインバータ制御用半導体装置１０は、相電流Ｕのオンデューティを一定に保ったまま、補正値αに相当する時間だけ通電タイミングをずらす。これにより、相電流Ｕにおける通電時間を変化させず、ＡＤ変換の時間を確保することができる。よって、ＰＷＭ制御に悪影響を与えずにＡＤ変換の時間を確保することができる。
【００６８】
また、図示していないが、差分値ｔが設定値ｒよりも小さい場合には、比較演算部２０は、次のカウント周期の開始時に、設定値ｒから差分値ｔを引いた値を補正値γとして出力タイミング制御バッファ１１ｃに格納する（補正値γ＝設定値ｒ−差分値ｔ）。補正用バイナリカウンタ１２ｃは、通常用バイナリカウンタ１５のカウント値に対して出力タイミング制御バッファ１１ｃが格納する補正値γ分遅れたカウント値をカウントする。セレクタ１３ｃは、比較演算部２０の制御により、補正用バイナリカウンタ１２ｃのカウント値を選択する。比較部１４ｃは、補正用バイナリカウンタ１２ｃのカウント値と、コンペアレジスタ１６ｃが格納する比較値ｚとの一致を判定する。ＰＷＭ制御部１８は、補正用バイナリカウンタ１２ｃのカウント値と、比較値ｚが一致したタイミングで論理値が切り替わるＰＷＭ信号ｗ及びｗｂを生成する。すなわち、差分値ｔが設定値ｒよりも小さい場合には、インバータ制御用半導体装置１０は、補正前のＰＷＭ信号に対してオン区間を補正値γ分遅らしたＰＷＭ信号ｗ及びｗｂを出力する。これにより、本発明の第１の実施の形態に係るインバータ制御用半導体装置１０は、相電流Ｗのオンデューティを一定に保ったまま、補正値γに相当する時間だけ通電タイミングをずらす。これにより、相電流Ｗにおける通電時間を変化させず、ＡＤ変換の時間を確保することができる。よって、ＰＷＭ制御に悪影響を与えずにＡＤ変換の時間を確保することができる。
【００６９】
なお、差分値ｔが設定値ｒよりも小さい場合の処理について、比較演算部２０は、設定値ｒから差分値ｔを引いた値を補正値βとして出力タイミング制御バッファ１１ｂに格納し（補正値β＝設定値ｒ−差分値ｔ）、出力タイミング制御バッファ１１ｃに「０」を格納してもよい。この場合、補正用バイナリカウンタ１２ｂは、通常用バイナリカウンタ１５のカウント値に対して出力タイミング制御バッファ１１ｂが格納する補正値β分時間的に進んだカウント値をカウントする。セレクタ１３ｂは、比較演算部２０の制御により、補正用バイナリカウンタ１２ｂのカウント値を選択する。比較部１４ｂは、補正用バイナリカウンタ１２ｂのカウント値と、コンペアレジスタ１６ｂが格納する比較値ｙとの一致を判定する。ＰＷＭ制御部１８は、補正用バイナリカウンタ１２ｂのカウント値と、比較値ｙが一致したタイミングで論理値が切り替わるＰＷＭ信号ｖ及びｖｂを生成する。すなわち、インバータ制御用半導体装置１０は、補正前のＰＷＭ信号に対してオン区間を補正値β分進ませたＰＷＭ信号ｖ及びｖｂを出力してもよい。
【００７０】
さらに、差分値ｓが設定値ｒよりも小さい場合の処理について、比較演算部２０は、設定値ｒから差分値ｔを引いた値を補正値βとして出力タイミング制御バッファ１１ｂに格納し（補正値β＝設定値ｓ−差分値ｔ）、出力タイミング制御バッファ１１ａに「０」を格納してもよい。この場合、補正用バイナリカウンタ１２ｂは、通常用バイナリカウンタ１５のカウント値に対して出力タイミング制御バッファ１１ｂが格納する補正値β分時間的に遅れたカウント値をカウントする。セレクタ１３ｂは、比較演算部２０の制御により、補正用バイナリカウンタ１２ｂのカウント値を選択する。比較部１４ｂは、補正用バイナリカウンタ１２ｂのカウント値と、コンペアレジスタ１６ｂが格納する比較値ｙとの一致を判定する。ＰＷＭ制御部１８は、補正用バイナリカウンタ１２ｂのカウント値と、比較値ｙが一致したタイミングで論理値が切り替わるＰＷＭ信号ｖ及びｖｂを生成する。すなわち、インバータ制御用半導体装置１０は、補正前のＰＷＭ信号に対してオン区間を補正値β分遅らせたＰＷＭ信号ｖ及びｖｂを出力してもよい。
【００７１】
なお、Ｖ相のＰＷＭ信号に対して補正を行う場合は、２相の電流値に対するＡＤ変換に必要な２つの期間の補正のための処理の順序に応じて、第１の補正後の期間に対して第２の補正を行う必要がある。具体的には、差分値ｓが設定値ｒより小さい場合に、Ｖ相のＰＷＭ信号に対して補正を行うと、補正後のＶ相のＰＷＭ信号の立上りとＷ相のＰＷＭ信号の立上りの差分を差分値ｔとして求める必要がある（差分値ｔ＝比較値ｚ’−比較値ｙ’−補正値β）。よって、処理を簡略化するためにも、３相のＰＷＭ信号のうち、最もオン区間の長いＵ相のＰＷＭ信号と、最もオン区間の短いＷ相のＰＷＭ信号とに補正を行うことが好ましい。すなわち、Ｕ相及びＷ相に補正を行うことで、２つのＡＤ変換に必要な期間に対する補正を独立して行うことができ、比較演算部２０の処理量を低減することができる。
【００７２】
なお、上記説明において、所定のカウント周期でＡＤ変換部４、位置推定部２６及び補正制御部６の次のカウント周期の比較値設定の動作を説明し、所定のカウント周期の次のカウント周期で制御部５のＰＷＭ信号生成の動作を説明したが、各カウント周期において、制御部５は、前周期で設定された比較値に基づきＰＷＭ信号の生成を行い、ＡＤ変換部４、位置推定部２６及び補正制御部６は、次のカウント周期の比較値設定を行う。
【００７３】
ここで、相電流Ｕの通電タイミングを早めた場合、Ｕ相に通電する電流のＡＤ変換の開始タイミングの変更が必要となる。図３は、信号ｕ、ｖ及びｗのタイミングと、ＡＤ変換開始のタイミングとを示す図である。図３に示すように、比較演算部２０の出力タイミングに合わせて、ＡＤ変換を開始すればよい。例えば、比較演算部２０は、補正が行われない場合のＡＤ変換の開始のタイミングに対して、算出した補正値αの値に基づきＡＤ変換の開始のタイミングを変更し、変更したタイミングの制御信号をＡＤ変換部４に送り、ＡＤ変換部４のＡＤ変換の開始のタイミングを制御すればよい。
【００７４】
また、補正値α及びβが大きすぎると、ＰＷＭのオン区間が通常用バイナリカウンタ１５のカウント周期の範囲を越える場合がある。以下、オーバーフラグ及びエラーフラグの設定動作について説明する。
【００７５】
図４は、ＰＷＭ信号の出力の例を示す図である。図４（Ａ）は、補正が行われない場合のＰＷＭ信号の一例を示す図である。図４（Ｂ）及び図４（Ｅ）は、補正によりオン区間を遅らしたＰＷＭ信号の一例を示す図である。図４（Ｃ）及び図４（Ｄ）は、補正によりオン区間を進ませたＰＷＭ信号の一例を示す図である。例えば、図４（Ａ）、図４（Ｃ）及び図４（Ｄ）に示すＰＷＭ信号は、上述したＵ相のＰＷＭ信号に対応し、図４（Ｂ）及び図４（Ｅ）に示すＰＷＭ信号は、上述したＷ相のＰＷＭ信号に対応する。なお、説明の便宜上、図４に示す３つのカウント周期のうち最初のカウント周期を第１周期、２番目のカウント周期を第２周期、３番目のカウント周期を第３周期と記す。すなわち、図４（Ｂ）〜図４（Ｅ）では、第２周期においてＰＷＭ信号のオン区間の補正が行われる。また、図４において実線の三角波５０は、通常用バイナリカウンタ１５のカウント値に基づくキャリア信号であり、破線の三角波５１は、補正用バイナリカウンタ１２ａのカウント値に基づくキャリア信号であり、破線の三角波５２は、補正用バイナリカウンタ１２ｃのカウント値に基づくキャリア信号である。
【００７６】
図４（Ａ）に示すように、補正が行われない場合には、比較演算部２０は、オーバーフラグ及びエラーフラグを設定しない（オーバーフラグ＝「０」、エラーフラグ＝「０」）。
【００７７】
図４（Ｂ）に示すように、補正値γが大きすぎるため、第２周期のＰＷＭのオン区間が通常用バイナリカウンタ１５のカウント周期Ｔ１０の範囲を超えてしまう場合、比較演算部２０は、オーバーフラグをオーバーフラグレジスタ２２に設定する（オーバーフラグ＝「１」、エラーフラグ＝「０」）。
【００７８】
図４（Ｃ）に示すように、補正値αが大きすぎるため、第２周期のＰＷＭのオン区間が通常用バイナリカウンタ１５のカウント周期の範囲を超えてしまう場合、比較演算部２０は、オーバーフラグをオーバーフラグレジスタ２２に設定する（オーバーフラグ＝「１」、エラーフラグ＝「０」）。
【００７９】
このようにオーバーフラグレジスタ２２にオーバーフラグを設定することで、ＣＰＵは、補正状態を判別でき、これに応じた後処理が可能となる。
【００８０】
オーバーフラグがセットされているときは、ＰＷＭ信号のオン区間は、通常用バイナリカウンタ１５のカウント周期の範囲を越えている。すなわち、出力されるＰＷＭ信号のパルス幅が通常とるべきキャリア信号の範囲を越えていることを示す。そこで、比較演算部２０によってセットされたオーバーフラグをＣＰＵなどにより監視し、キャリア信号の次のカウント周期での補正を制限すれば良い。例えば、図４（Ｂ）に示すように、ＰＷＭのオン区間が次のカウント周期にずれこんでいる信号については、ずれこんでいる相の次のカウント周期での補正を制限すればよい。
【００８１】
さらに、補正値α、βが大きすぎると、ＰＷＭのオン区間が通常用バイナリカウンタ１５のカウント周期の範囲を越えて、且つ前後のＰＷＭのオン区間と重なる場合がある。
【００８２】
図４（Ｄ）に示すように、補正値αが大きすぎるため、第２周期のＰＷＭのオン区間が、通常用バイナリカウンタ１５のカウント周期の範囲を超えて、且つ直前の第１周期のＰＷＭのオン区間と重なる場合、比較演算部２０は、エラーフラグをエラーフラグレジスタ２３に設定する。
【００８３】
図４（Ｅ）に示すように、第３周期のＰＷＭのオン区間が通常用バイナリカウンタ１５のカウント周期の範囲を越えない場合でも、第２周期の補正値γが大きすぎるために、第２周期のＰＷＭのオン区間と第３周期のＰＷＭのオン区間とが重なる場合、比較演算部２０は、エラーフラグをエラーフラグレジスタ２３に設定する。
【００８４】
このようにエラーフラグをエラーフラグレジスタ２３に設定することで、ＣＰＵは、補正状態を判別でき、これに応じた後処理が可能となる。
【００８５】
エラーフラグレジスタ２３にエラーフラグがセットされているときは、出力されるＰＷＭ信号のデューティ比において、キャリア信号のある周期において設定していた通りのデューティが出ていないことを示す。そこで、比較演算部２０によってセットされたエラーフラグをＣＰＵなどにより監視し、キャリア信号の次のカウント周期でＰＷＭ信号のデューティ比を調整すればよい。例えば、オンデューティが一時的に短くなった信号については、次のカウント周期でその短くなった分を補償するようにオンデューティを長くすればよい。
【００８６】
また、図４（Ｄ）に示すように、前周期のＰＷＭ信号とオン区間が重なる場合には、以下の処理を行ってもよい。
【００８７】
比較演算部２０は、所定のカウント周期のＵ相のＰＷＭ信号のオン区間が直前のカウント周期のＵ相のＰＷＭ信号のオン区間と重なると判定した場合（エラーフラグ＝「１」）に、算出した設定値ｒと差分値ｓとの差分を補正値βとして出力タイミング制御バッファ１１ｂに格納し、出力タイミング制御バッファ１１ａに「０」を格納してもよい。この場合、補正用バイナリカウンタ１２ｂは、通常用バイナリカウンタ１５のカウント値に対して補正値β分を減算したカウント値をカウントし、セレクタ部１３ｂは、補正用バイナリカウンタ１２ｂのカウント値を選択する。すなわち、インバータ制御用半導体装置１０は、Ｕ相のＰＷＭ信号のオン区間を進める補正を行わず、Ｖ相のＰＷＭ信号のオン区間を遅らす補正を行う。これにより、Ｕ相のＰＷＭ信号のオン区間が直前のカウント周期のオン区間と重なることを回避することができる。なお、比較演算部２０は、図４（Ｃ）に示すようにＵ相のＰＷＭ信号のオン区間が直前の通常用バイナリカウンタ１５のカウント周期にずれ込む場合（オーバーフラグ＝「１」）に、同様の処理を行ってもよい。
【００８８】
また、比較演算部２０は、図４（Ｂ）に示すようにＷ相のＰＷＭ信号のオン区間が直後の通常用バイナリカウンタ１５のカウント周期にずれこむ場合（又は所定のカウント周期のＷ相のＰＷＭ信号のオン区間が直後のカウント周期のＷ相のＰＷＭ信号のオン区間と重なる場合）に、設定値ｒと差分値ｔとの差分を補正値βとして出力タイミング制御バッファ１１ｂに格納し、出力タイミング制御バッファ１１ｃに「０」を格納してもよい。この場合、補正用バイナリカウンタ１２ｂは、通常用バイナリカウンタ１５のカウント値に対して補正値β分を加算したカウント値をカウントし、セレクタ部１３ｂは、補正用バイナリカウンタ１２ｂのカウント値を選択する。すなわち、インバータ制御用半導体装置１０は、Ｗ相のＰＷＭ信号のオン区間を遅らす補正を行わず、Ｖ相のＰＷＭ信号のオン区間を進める補正を行う。これにより、Ｗ相のＰＷＭ信号のオン区間が直後のカウント周期のオン区間と重なることを回避することができる。
【００８９】
さらに、比較演算部２０は、所定のカウント周期のＵ相のＰＷＭ信号のオン区間が直前のカウント周期のＵ相のＰＷＭ信号のオン区間と重なると判定した場合に、算出した設定値ｒと差分値ｓとの差分を補正値αと補正値βとに分割して出力タイミング制御バッファ１１ａ及び１１ｂに格納してもよい（設定値ｒ−差分値ｓ＝補正値α＋補正値β）。この場合、補正用バイナリカウンタ１２ａは、通常用バイナリカウンタ１５のカウント値に対して補正値α分を加算したカウント値をカウントし、補正用バイナリカウンタ１２ｂは、通常用バイナリカウンタ１５のカウント値に対して補正値β分を減算したカウント値をカウントし、セレクタ部１３ａは、補正用バイナリカウンタ１２ａのカウント値を選択し、セレクタ部１３ｂは、補正用バイナリカウンタ１２ｂのカウント値を選択する。すなわち、インバータ制御用半導体装置１０は、Ｕ相のＰＷＭ信号のオン区間が直前のカウント周期のＵ相のＰＷＭ信号のオン区間と重ならない程度にＵ相のＰＷＭ信号のオン区間を進める補正を行い、ＡＤ変換に必要な時間が確保できるようにＶ相のＰＷＭ信号のオン区間を遅らす補正を行ってもよい。さらに、同様に、比較演算部２０は、所定のカウント周期のＷ相のＰＷＭ信号のオン区間が直後のカウント周期のＷ相のＰＷＭ信号のオン区間と重なると判定した場合に、算出した設定値ｒと差分値ｔとの差分を補正値βと補正値γとに分割して出力タイミング制御バッファ１１ｂ及び１１ｃに格納してもよい（設定値ｒ−差分値ｔ＝補正値β＋補正値γ）。
【００９０】
以上より、本発明の第１の実施の形態に係るインバータ制御用半導体装置１０は、専用のハードウエアにより相電流の通電タイミングの補正を行う。また、本発明の第１の実施の形態に係るインバータ制御用半導体装置１０は、相電流のオンデューティを一定に保ったまま、出力タイミング制御バッファ１１ａ、１１ｂ及び１１ｃに格納される補正値に相当する時間だけ通電タイミングをずらす。これにより、相電流における通電時間を変化させず、ＡＤ変換の時間を確保することができる。よって、ＰＷＭ制御に悪影響を与えずにＡＤ変換の時間を確保することができる。すなわち、図６に示したような従来のインバータ制御におけるキャリア信号の後半周期に行われていた、比較値ｘ、ｙ及びｚの再設定を行う為の割り込み処理をなくすことができる。これにより、ＣＰＵリソースを回転子の位置推定演算に集中させることができる。例えば、キャリア信号の後半周期に発生さしていた割込み処理をなくすことにより、約１００μｓの処理が削減される。このため、特にＣＰＵの処理速度を向上させることなく、回転子の位置推定演算の精度を高めることが可能となる。
【００９１】
また、本発明の第１の実施の形態に係るインバータ制御用半導体装置１０は、３相のＰＷＭ信号のうち、最もオン区間の長いＵ相のＰＷＭ信号と、最もオン区間の短いＷ相のＰＷＭ信号とに補正を行う。これにより、２つのＡＤ変換に必要な期間に対する補正を独立して行うことができ、比較演算部２０の処理量を低減することができる。
【００９２】
また、本発明の第１の実施の形態に係るインバータ制御用半導体装置１０は、ＰＷＭ信号のオン区間が通常用バイナリカウンタ１５のカウント周期の範囲を超えてしまう場合、オーバーフラグをオーバーフラグレジスタ２２に設定する。これにより、ＣＰＵ等は、オーバーフラグを参照することにより、補正状態を判別し、補正状態に応じた後処理を行うことができる。例えば、オーバーフラグをＣＰＵにより監視し、次のカウント周期でＰＷＭ信号の補正を制限する。具体的には、ＰＷＭのオン区間が次のカウント周期にずれこんでいる信号については、ずれこんでいる相の次のカウント周期での補正を制限すればよい。
【００９３】
また、本発明の第１の実施の形態に係るインバータ制御用半導体装置１０は、ＰＷＭ信号のオン区間が、通常用バイナリカウンタ１５のカウント周期の範囲を超え、且つ直前のカウント周期のＰＷＭ信号のオン区間と重なる場合、エラーフラグをエラーフラグレジスタ２３に設定する。これにより、ＣＰＵ等は、エラーフラグを参照することにより、ＰＷＭ信号のオン区間の重なりを判別し、これに応じた後処理を行うことができる。例えば、エラーフラグをＣＰＵにより監視し、次のカウント周期でＰＷＭ信号のデューティ比を調整すればよい。具体的には、オンデューティが一時的に短くなった信号については、次のカウント周期でその短くなった分を補償するようにオンデューティを長くすればよい。
【００９４】
また、本発明の第１の実施の形態に係るインバータ制御用半導体装置１０は、補正により、所定のＰＷＭ信号のオン区間が、他のカウント周期の所定のＰＷＭ信号のオン区間と重なる場合には、他のＰＷＭ信号のオン区間をずらす。これにより、ＰＷＭ信号のオン区間の重なりを低減することができる。
【００９５】
なお、上記説明において、制御部５は、３つの出力タイミング制御バッファ１１ａ、１１ｂ及び１１ｃと、３つの補正用バイナリカウンタ１２ａ、１２ｂ及び１２ｃと、３つのセレクタ部１３ａ、１３ｂ及び１３ｃとを備えるとしたが、２相の相電流の通電タイミングのみを調整するのであれば、それぞれ２つを備えればよい。例えば、相電流Ｕ及びＷの通電タイミングのみ調整するのであれば、出力タイミング制御バッファ１１ｂ、補正用バイナリカウンタ１２ｂ及びセレクタ部１３ｂは備えていなくてもよい。
【００９６】
また、本発明は、上記の実施の形態に限定されるものではなく、３相モータ以外のモータの制御に適用できることは言うまでもない。
【００９７】
（第２の実施の形態）
本発明の第２の実施の形態では、空調機に上述したインバータ制御用半導体装置を適用した実施例について説明する。
【００９８】
図５は、本発明の第２の実施の形態に係る空調機の構成を示す図である。図５に示す空調機２００は、エアコン室内機３０と、エアコン室外機４０とを備える。
【００９９】
室外機４０は、圧縮機４５と、熱交換器４１と、ファン４２と、四方弁４４と、膨張弁４３と、同期モータ制御装置４６とを備える。圧縮機４５は、冷媒を圧縮する。圧縮機４５は、モータ３を備える。熱交換器４１は、圧縮した冷媒を断熱膨張させて吸熱させる、又は圧縮して発熱した冷媒を放熱させる。ファン４２は、熱交換器４１の熱を室外へ放熱する。四方弁４４は、冷媒の流れを制御する。膨張弁４３は、冷媒を制御する。同期モータ制御装置４６は、圧縮機４５の駆動源であり、圧縮機４５を駆動するモータ３の駆動制御を行う。同期モータ制御装置４６は、インバータ２と、電流検出器１と、インバータ制御用半導体装置１０と、交流電圧源２５と、コンバータ２４とを備える。例えば、インバータ制御用半導体装置１０は、第１の実施の形態において説明したインバータ制御用半導体装置である。インバータ制御用半導体装置１０は、ＡＤ変換部４と、制御部５とを備える。なお、インバータ２、電流検出器１、インバータ制御用半導体装置１０、交流電圧源２５、及びコンバータ２４の構成は、上述した第１の実施の形態と同様であり詳細な説明は省略する。
【０１００】
エアコン室内機３０は、空調を行う室内に設置され、熱交換器３１と、ファン３２を備える。熱交換器３１は、圧縮機４５が圧縮した冷媒を断熱膨張させて吸熱させる、又は圧縮して発熱した冷媒を放熱させる。ファン３２は、熱交換器３１の熱を室内へ放熱する。
【０１０１】
以上より、本発明の第２の実施の形態に係る空調機２００は、インバータ制御用半導体装置１０を含む同期モータ制御装置４６を空調機の駆動源として使用し、ＡＤ変換部４にて相電流を検出し、制御部５にてＰＷＭ信号を補正する。これにより、ＰＷＭ信号のパルスの補正に係るＣＰＵの割り込み処理をなくすことができ、ＣＰＵの処理速度を向上させることなく、回転子の位置推定の精度を向上させることができる。これにより、モータ電流センサレス駆動の安定した空調機を実現することができる。
【産業上の利用可能性】
【０１０２】
本発明は、モータを駆動するインバータの制御を行う半導体装置、及びモータ装置に適用でき、特に、空調機に用いられるブラシレスモータ等の高効率の電動機の駆動装置に適用できる。
【図面の簡単な説明】
【０１０３】
【図１】本発明の第１の実施の形態に係るインバータ制御用半導体装置を含むモータ装置の構成を示す図である。
【図２】キャリア信号と相電流Ｕ、Ｖ及びＷのＰＷＭ制御との関係の一例を示す図である。
【図３】ＡＤ変換開始タイミングの補正を示す図である。
【図４】キャリア信号とＰＷＭ制御との関係の別例を示す図である。
【図５】本発明の第２の実施の形態に係る空調機の構成を示す図である。
【図６】従来のモータ駆動装置に係るキャリア信号と相電流Ｕ、Ｖ及びＷのＰＷＭ制御との関係を示す図である。
【符号の説明】
【０１０４】
１      電流検出器
２      インバータ
３      モータ
４      ＡＤ変換部
５      制御部
６      補正制御部
１０    インバータ制御用半導体装置
１１ａ  出力タイミング制御バッファ（Ｕ相）
１１ｂ  出力タイミング制御バッファ（Ｖ相）
１１ｃ  出力タイミング制御バッファ（Ｗ相）
１２ａ  補正用バイナリカウンタ（Ｕ相）
１２ｂ  補正用バイナリカウンタ（Ｖ相）
１２ｃ  補正用バイナリカウンタ（Ｖ相）
１３ａ、１３ｂ、１３ｃ  セレクタ部
１４ａ、１４ｂ、１４ｃ  比較部
１５    通常用バイナリカウンタ
１６ａ、１６ｂ、１６ｃ  コンペアレジスタ
１７ａ、１７ｂ、１７ｃ  コンペアレジスタバッファ
１８    ＰＷＭ制御部
１９    差分算出部
２０    比較演算部
２１    ＡＤ変換時間格納レジスタ
２２    オーバーフラグレジスタ
２３    エラーフラグレジスタ
２４    コンバータ
２５    交流電圧源
２６    位置推定部
３０    室内機
３１    熱交換器
３２    ファン
４０    室内機
４１    熱交換器
４２    ファン
４３    膨張弁
４４    四方弁
４５    圧縮機
４６    同期モータ制御装置
１００  モータ装置
２００  空調機
【図１】
2008131730.tif 000003
【図２】
2008131730.tif 000004
【図３】
2008131730.tif 000005
【図４】
2008131730.tif 000006
【図５】
2008131730.tif 000007
【図６】
2008131730.tif 000008