(57)【特許請求の範囲】
【請求項１】
ロータ位置を検出しこの位置信号を出力するロータ位置検出手段と、ロータ位置と対応したアドレスを前記ロータ位置検出手段の出力信号よりも高い分解能でカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータに基づきモータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備え、前記ロータ位置検出手段の信号出力時に、そのロータ位置に相当する基準アドレス値と現在のアドレス値との差に制御ゲインを乗じる演算に基づいて前記アドレスカウンタのカウント速度を調整することにより、前記アドレスカウンタの出力するアドレスがロータ位置に追従する構成としたことを特徴とするブラシレスモータの駆動装置。
【請求項２】
ロータの磁極位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号の周波数を検出する回転周波数検出手段と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分と制御ゲインとの積に、前記回転周波数検出手段が出力する回転周波数を加算した結果を周波数指令として出力する第１の周波数調整手段と、前記第１の周波数調整手段の出力する周波数指令値に比例した速度でロータ磁極位置と対応したアドレスをカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータと直流指令値とを乗算し、モータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備えたブラシレスモータの駆動装置。
【請求項３】
ロータの磁極位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分と制御ゲインとの積に、現在の周波数指令を加算した結果を新たな周波数指令として出力する第２の周波数調整手段と、前記第２の周波数調整手段の出力する周波数指令値に比例した速度でロータ磁極位置と対応したアドレスをカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータと直流指令値とを乗算し、モータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備えたブラシレスモータの駆動装置。
【請求項４】
ロータの磁極位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号の周波数を検出する回転周波数検出手段と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分と前記回転周波数検出手段が出力する回転周波数と制御ゲインとの積に、前記回転周波数を加算した結果を周波数指令として出力する第３の周波数調整手段と、前記第３の周波数調整手段の出力する周波数指令値に比例した速度でロータ磁極位置と対応したアドレスをカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータと直流指令値とを乗算し、モータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備えたブラシレスモータの駆動装置。
【請求項５】
ロータの磁極位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分と現在の周波数指令と制御ゲインとの積に、現在の周波数指令を加算した結果を新たな周波数指令として出力する第４の周波数調整手段と、前記第４の周波数調整手段の出力する周波数指令値に比例した速度でロータ磁極位置と対応したアドレスをカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータと直流指令値とを乗算し、モータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備えたブラシレスモータの駆動装置。
【請求項６】
ロータの磁極位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差であるアドレス誤差と波形の単位周期に相当する単位アドレス長との和を分子とし、かつ前記単位アドレス長から前記アドレス誤差を減算した値と前記エッジの前回検出時におけるアドレス誤差とを加算した値をもって分母とした分数値と、制御ゲインと、現在の周波数指令とを乗算した値を新たな周波数指令として出力する第５の周波数調整手段と、前記第５の周波数調整手段の出力する周波数指令値に比例した速度でロータ磁極位置と対応したアドレスをカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータと直流指令値とを乗算し、モータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備えたブラシレスモータの駆動装置。
【請求項７】
モータの加速度に基づく値を周波数指令値に加算して周波数指令値を補正する周波数指令補正手段を備えた、請求項１〜６のいずれか１項記載のブラシレスモータの駆動装置。
【請求項８】
モータを起動する際に、時間の経過に伴い徐々に上昇する周波数値を前記アドレスカウンタに指令する構成としたことを特徴とする請求項１〜６のいずれか１項記載のブラシレスモータの駆動装置。
【請求項９】
モータを起動する際に、前記インバータ回路が直流通電を一定時間行った後に、時間の経過に伴い徐々に上昇する周波数値を前記アドレスカウンタに指令する構成
としたことを特徴とする請求項１〜６のいずれか１項記載のブラシレスモータの駆動装置。
【請求項１０】
パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分の絶対値が予め設定した値を超えたことを検出し位相誤差過大信号を出力する位相誤差過大検出手段を備え、前記位相誤差過大信号出力時に前記インバータ回路が一時的に矩形波通電処理を行う構成としたことを特徴とする請求項２〜６のいずれか１項記載のブラシレスモータの駆動装置。
【請求項１１】
パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分の絶対値が予め設定した値を超えたことを検出し位相誤差過大信号を出力する位相誤差過大検出手段と、モータの誘起電圧からロータの磁極位置を検出するロータ磁極位置検出回路と、前記ロータ磁極位置検出回路の出力信号に基づき矩形波通電にて駆動を行う第２の矩形波駆動手段とを備え、前記位相誤差過大信号出力時に前記インバータ回路が一時的に矩形波通電処理を行う構成としたことを特徴とする請求項２〜６のいずれか１項記載のブラシレスモータの駆動装置。
【請求項１２】
アドレスカウンタの現在の出力アドレス値から、前記パルス発生器の出力信号の最新エッジが示すロータ磁極位置に相当する基準アドレス値を減算した差分の絶対値が、予め設定した値を超えたことを検出し位相誤差過大信号を出力する位相誤差過大検出手段を備え、前記位相誤差過大信号出力時に前記インバータ回路が一時的に矩形波通電処理を行う構成としたことを特徴とする請求項２〜６のいずれか１項記載のブラシレスモータの駆動装置。
【請求項１３】
パルス発生器の出力信号のエッジ検出周期を計測する周期カウンタと、前記パルス発生器の出力信号のエッジ検出時に、前記周期カウンタが計測した周期データに基づき次回計測される周期データの許容範囲を設定する許容周期範囲設定手段と、前記周期カウンタの現在のカウント値が前記許容周期範囲設定手段が設定した許容範囲を超過した場合、もしくは、許容範囲に至る以前に前記パルス発生器の出力信号のエッジを検出した場合に周期急変信号を出力する周期急変検出手段を備え、前記周期急変信号出力時に前記インバータ回路が一時的に矩形波通電処理を行う構成としたことを特徴とする請求項２〜６のいずれか１項記載のブラシレスモータの駆動装置。
【請求項１４】
基準アドレス値は任意に設定変更可能なる値であることを特徴とする請求項１〜６のいずれか１項記載のブラシレスモータの駆動装置。
【請求項１５】
基準アドレス値は任意に設定変更可能なる値と、モータの回転数、もしくは電流値に基づき駆動中に動的に変化する値との和であることを特徴とする請求項１〜６のいずれか１項記載のブラシレスモータの駆動装置。
【請求項１６】
パルス発生器の出力信号のエッジ検出周期を計測する周期カウンタと、前記周期カウンタが計測した過去の周期データを記憶する複数の周期データメモリと、前記周期データメモリを読み出し、新旧順にモータの１回転に相当する数量の周期データを加算し出力する１回転周期データ演算手段とを備え、前記回転周波数検出手段は前記１回転周期データ演算手段から得られる１回転周期データに基づき回転周波数を作成する構成としたことを特徴とする請求項２〜６のいずれか１項記載のブラシレスモータの駆動装置。
【請求項１７】
ロータ位置を検出しこの位置信号を出力するロータ位置検出手段と、ロータ位置と対応したアドレスを前記ロータ位置検出手段の出力信号よりも高い分解能でカウントするアドレスカウンタとを備え、前記ロータ位置検出手段の信号出力時に、そのロータ位置に相当する基準アドレス値と現在のアドレス値との差に制御ゲインを乗じる演算に基づいて前記アドレスカウンタのカウント速度を調整することにより、前記アドレスカウンタの出力するアドレスがロータ位置に追従する構成とし、前記アドレスカウンタの出力アドレス値に基づいてロータ位置を識別することを特徴とするモータのロータ位置検出装置。
【請求項１８】
ロータ位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号の周波数を検出する回転周波数検出手段と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ位置に相当する基準アドレス値から現在のアドレス値を減算した差分と制御ゲインとの積に、前記回転周波数検出手段が出力する回転周波数を加算した結果を周波数指令として出力する第１の周波数調整手段と、前記第１の周波数調整手段の出力する周波数指令値に比例した速度でロータ磁極位置と対応したアドレスをカウントするアドレスカウンタとを備え、前記アドレスカウンタの出力アドレス値に基づいてロータ位置を識別することを特徴とするモータのロータ位置検出装置。
【請求項１９】
ロータ位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ位置に相当する基準アドレス値から現在のアドレス値を減算した差分と制御ゲインとの積に、現在の周波数指令を加算した結果を新たな周波数指令として出力する第２の周波数調整手段と、前記第２の周波数調整手段の出力する周波数指令値に比例した速度でロータ位置と対応したアドレスをカウントするアドレスカウンタとを備え、前記アドレスカウンタの出力アドレス値に基づいてロータ位置を識別することを特徴とするモータのロータ位置検出装置。
【請求項２０】
ロータ位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号の周波数を検出する回転周波数検出手段と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ位置に相当する基準アドレス値から現在のアドレス値を減算した差分と前記回転周波数検出手段が出力する回転周波数と制御ゲインとの積に、前記回転周波数を加算した結果を周波数指令として出力する第３の周波数調整手段と、前記第３の周波数調整手段の出力する周波数指令値に比例した速度でロータ位置と対応したアドレスをカウントするアドレスカウンタとを備え、前記アドレスカウンタの出力アドレス値に基づいてロータ位置を識別することを特徴とするモータのロータ位置検出装置。
【請求項２１】
ロータ位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ位置に相当する基準アドレス値から現在のアドレス値を減算した差分と現在の周波数指令と制御ゲインとの積に、現在の周波数指令を加算した結果を新たな周波数指令として出力する第４の周波数調整手段と、前記第４の周波数調整手段の出力する周波数指令値に比例した速度でロータ位置と対応したアドレスをカウントするアドレスカウンタとを備え、前記アドレスカウンタの出力アドレス値に基づいてロータ位置を識別することを特徴とするモータのロータ位置検出装置。
【請求項２２】
ロータ位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ位置に相当する基準アドレス値から現在のアドレス値を減算した差であるアドレス誤差と波形の単位周期に相当する単位アドレス長との和を分子とし、かつ前記単位アドレス長から前記アドレス誤差を減算した値と前記エッジの前回検出時におけるアドレス誤差とを加算した値をもって分母とした分数値と、制御ゲインと、現在の周波数指令とを乗算した値を新たな周波数指令として出力する第５の周波数調整手段と、前記第５の周波数調整手段の出力する周波数指令値に比例した速度でロータ位置と対応したアドレスをカウントするアドレスカウンタとを備え、前記アドレスカウンタの出力アドレス値に基づいてロータ位置を識別することを特徴とするモータのロータ位置検出装置。
【請求項２３】
モータの加速度に基づく値を周波数指令値に加算して周波数指令値を補正する周波数指令補正手段を備えた、請求項１７〜２２のいずれか１項記載のモータのロータ位置検出装置。
【請求項２４】
パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分の絶対値が予め設定した値を超えたことを検出し位相誤差過大信号を出力する位相誤差過大検出手段を備えたことを特徴とする請求項１８〜２２のいずれか１項記載のモータのロータ位置検出装置
。
【請求項２５】
アドレスカウンタの現在の出力アドレス値から、前記パルス発生器の出力信号の最新エッジが示すロータ位置に相当する基準アドレス値を減算した差分の絶対値が、予め設定した値を超えたことを検出し位相誤差過大信号を出力する位相誤差過大検出手段を備えたことを特徴とする請求項１８〜２２のいずれか１項記載のモータのロータ位置検出装置。
【請求項２６】
パルス発生器の出力信号のエッジ検出周期を計測する周期カウンタと、前記パルス発生器の出力信号のエッジ検出時に、前記周期カウンタが計測した周期データに基づき次回計測される周期データの許容範囲を設定する許容周期範囲設定手段と、前記周期カウンタの現在のカウント値が前記許容周期範囲設定手段が設定した許容範囲を超過した場合、もしくは、許容範囲に至る以前に前記パルス発生器の出力信号のエッジを検出した場合に周期急変信号を出力する周期急変検出手段を備えたことを特徴とする請求項１８〜２２のいずれか１項記載のモータのロータ位置検出装置。
【請求項２７】
基準アドレス値は任意に設定変更可能なる値であることを特徴とする請求項１７〜２２のいずれか１項記載のモータのロータ位置検出装置。
【請求項２８】
基準アドレス値は任意に設定変更可能なる値と、モータの回転数、もしくは電流値に基づき駆動中に動的に変化する値との和であることを特徴とする請求項１７〜２２のいずれか１項記載のモータのロータ位置検出装置。
【請求項２９】
パルス発生器の出力信号のエッジ検出周期を計測する周期カウンタと、前記周期カウンタが計測した過去の周期データを記憶する複数の周期データメモリと、前記周期データメモリを読み出し、新旧順にモータの１回転に相当する数量の周期データを加算し出力する１回転周期データ演算手段とを備え、前記回転周波数検出手段は前記１回転周期データ演算手段から得られる１回転周期データに基づき回転周波数を作成する構成としたことを特徴とする請求項１８〜２２のいずれか１項記載のモータのロータ位置検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明中の請求項１〜１６に記載の発明は、ロータに磁石を使用したブラシレスモータの駆動装置に関するものである。また、請求項１７〜２９に記載の発明は、モータのロータ位置検出装置に関するものであり、ブラシレスモータのみならず広範囲のモータに適用できるものである。
【０００２】
【従来の技術】
近年、空調機の送風用ファン駆動等に使用されるモータにおいては、高効率化、小型化が強く求められる背景のもと、従来主流であったインダクションモータからブラシレスモータへの転換が広く行われてきている。
【０００３】
この種の従来のブラシレスモータの駆動装置としては、例えば図３４に示す構成のものがある。
【０００４】
図３４において、内部にパワートランジスタ６個を備えるインバータ回路１は直流電源２から電力の供給を受け、かつ、Ｕ，Ｖ，Ｗの出力線で３相のモータ３に接続されている。４Ａ，４Ｂ，４Ｃはモータ３のロータの磁極位置を検出し、これをパルス信号４ａ，４ｂ，４ｃとして出力するパルス発生器であり、例えば互いに電気角１２０度の間隔をもって配設されたホール素子の出力信号を波形整形して出力するものが一般に使用されている。このパルス発生器４Ａ，４Ｂ，４Ｃの出力パルス信号４ａ，４ｂ，４ｃは通電相切り替え信号を作成する矩形波駆動ロジック回路５に入力されている。この矩形波駆動ロジック回路５の出力信号と、モータ３に印加する電圧量を指令する電圧指令値７はパルス幅変調（以下ＰＷＭと略称する）処理を行うＰＷＭ回路６に入力され、そして、その出力信号ｕｈ，ｖｈ，ｗｈ，ｕｌ，ｖｌ，ｗｌはパワートランジスタの通電信号としてインバータ回路１に入力されている。
【０００５】
以上の構成により、パルス発生器４Ａ，４Ｂ，４Ｃが出力するモータ３のロータ磁極位置を示すパルス信号４ａ，４ｂ，４ｃに基づいて、矩形波駆動ロジック回路５とＰＷＭ回路６がパワートランジスタの通電信号を作成し、この通電信号でインバータ回路１がスイッチング動作を行っている。このときの動作波形を図３５に示す。本構成の駆動方式は一般に矩形波ＰＷＭ駆動と呼ばれているものであり、本従来例では電圧指令値７に応じてインバータ回路１の上アームのパワートランジスタをＰＷＭ制御し、モータ３の回転数を制御する構成のものを表している。
【０００６】
【発明が解決しようとする課題】
このような従来のブラシレスモータの駆動装置では、図３５に示したようにモータ３に流れる相電流が矩形波状となるため、騒音及び振動が大きいという問題を有していた。これは通電相の切り替わり時に電流が急峻に変化して発生トルクに脈動の生じることが主な原因であり、特にモータ３の出力容量が大きい場合や、共振を生じ易い鋼板フレーム構造等の場合に大きな問題となっていた。空調機は夜間にも運転されるため静粛性を強く要求されるが、近年、それに使用される送風ファン駆動用モータは熱交換特性をより高めるために次第に出力容量が大型化する傾向にあり、前述した問題を以前にも増して大きなものにしている。
【０００７】
駆動波形を正弦波状にすればこの問題は解決されるが、正弦波駆動するためには高分解能でモータ３のロータ位置を検出する必要があり、このために要する検出器は一般に構成が複雑なため高価でかつ信頼性が低く、民生分野に広く普及させることができなかった。
【０００８】
本発明は上記課題を解決するもので、ロータ位置を検出するのに分解能の低い検出器を用いながらも駆動波形を正弦波状とし、騒音，振動の低減を図ることのできるブラシレスモータの駆動装置を安価に提供することを主な目的とするものである。
【０００９】
【課題を解決するための手段】
この目的を達成するために、本発明のブラシレスモータの駆動装置は、ロータ位置を検出しこの位置信号を出力するロータ位置検出手段と、ロータ位置と対応したアドレスを前記ロータ位置検出手段の出力信号よりも高い分解能でカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータに基づきモータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備え、前記ロータ位置検出手段の信号出力時に、そのロータ位置に相当する基準アドレス値と現在のアドレス値との差に制御ゲインを乗じる演算に基づいて前記アドレスカウンタのカウント速度を調整することにより、前記アドレスカウンタの出力するアドレスがロータ位置に追従する構成としたものである。
【００１０】
この構成により、ロータ位置検出手段の出力信号が低分解能であっても、アドレスカウンタの出力アドレスがロータ位置に追従する動作によって、結果的にロータ位置検出手段の出力信号の情報を高いカウント分解能を有するアドレスカウンタが補間する形となる。これによって微細なロータ位置検出が可能となり、波形データメモリに書き込んだ任意の波形でモータを駆動することができる。
【００１１】
【発明の実施の形態】
上記の課題を解決するために本発明のブラシレスモータの駆動装置は、ロータ位置を検出しこの位置信号を出力するロータ位置検出手段と、ロータ位置と対応したアドレスを前記ロータ位置検出手段の出力信号よりも高い分解能でカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータに基づきモータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備え、前記ロータ位置検出手段の信号出力時に、そのロータ位置に相当する基準アドレス値と現在のアドレス値との差に制御ゲインを乗じる演算に基づいて前記アドレスカウンタのカウント速度を調整することにより、前記アドレスカウンタの出力するアドレスがロータ位置に追従する構成としたものである。
【００１２】
また、ロータの磁極位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号の周波数を検出する回転周波数検出手段と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分と制御ゲインとの積に、前記回転周波数検出手段が出力する回転周波数を加算した結果を周波数指令として出力する第１の周波数調整手段と、前記第１の周波数調整手段の出力する周波数指令値に比例した速度でロータ磁極位置と対応したアドレスをカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータと直流指令値とを乗算し、モータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備えたものである。
【００１３】
また、ロータの磁極位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分と制御ゲインとの積に、現在の周波数指令を加算した結果を新たな周波数指令として出力する第２の周波数調整手段と、前記第２の周波数調整手段の出力する周波数指令値に比例した速度でロータ磁極位置と対応したアドレスをカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータと直流指令値とを乗算し、モータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備えたものである。
【００１４】
また、ロータの磁極位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号の周波数を検出する回転周波数検出手段と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分と前記回転周波数検出手段が出力する回転周波数と制御ゲインとの積に、前記回転周波数を加算した結果を周波数指令として出力する第３の周波数調整手段と、前記第３の周波数調整手段の出力する周波数指令値に比例した速度でロータ磁極位置と対応したアドレスをカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータと直流指令値とを乗算し、モータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備えたものである。
【００１５】
また、ロータの磁極位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分と現在の周波数指令と制御ゲインとの積に、現在の周波数指令を加算した結果を新たな周波数指令として出力する第４の周波数調整手段と、前記第４の周波数調整手段の出力する周波数指令値に比例した速度でロータ磁極位置と対応したアドレスをカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータと直流指令値とを乗算し、モータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備えたものである。
【００１６】
また、ロータの磁極位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差であるアドレス誤差と波形の単位周期に相当する単位アドレス長との和を分子とし、かつ前記単位アドレス長から前記アドレス誤差を減算した値と前記エッジの前回検出時におけるアドレス誤差とを加算した値をもって分母とした分数値と、制御ゲインと、現在の周波数指令とを乗算した値を新たな周波数指令として出力する第５の周波数調整手段と、前記第５の周波数調整手段の出力する周波数指令値に比例した速度でロータ磁極位置と対応したアドレスをカウントするアドレスカウンタと、波形データを記憶し前記アドレスカウンタが出力するアドレス上のデータを出力する波形データメモリと、前記波形データメモリが出力するデータと直流指令値とを乗算し、モータの各相の交流指令値を作成する相出力指令作成手段と、前記相出力指令作成手段の出力する交流指令値を相電圧指令値もしくは相電流指令値としてモータ駆動電力を出力制御するインバータ回路とを備えたものである。
【００１７】
また、モータの加速度に基づく値を周波数指令値に加算して周波数指令値を補正する周波数指令補正手段を備えたものである。
【００１８】
また、モータを起動する際に、時間の経過に伴い徐々に上昇する周波数値を前記アドレスカウンタに指令する構成としたものである。
【００１９】
また、モータを起動する際に、前記インバータ回路が直流通電を一定時間行った後に、時間の経過に伴い徐々に上昇する周波数値を前記アドレスカウンタに指令する構成としたものである。
【００２０】
また、パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分の絶対値が予め設定した値を超えたことを検出し位相誤差過大信号を出力する位相誤差過大検出手段を備え、前記位相誤差過大信号出力時に前記インバータ回路が一時的に矩形波通電処理を行う構成としたものである。
【００２１】
また、パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分の絶対値が予め設定した値を超えたことを検出し位相誤差過大信号を出力する位相誤差過大検出手段と、モータの誘起電圧からロータの磁極位置を検出するロータ磁極位置検出回路と、前記ロータ磁極位置検出回路の出力信号に基づき矩形波通電にて駆動を行う第２の矩形波駆動手段とを備え、前記位相誤差過大信号出力時に前記インバータ回路が一時的に矩形波通電処理を行う構成としたものである。
【００２２】
また、アドレスカウンタの現在の出力アドレス値から、前記パルス発生器の出力信号の最新エッジが示すロータ磁極位置に相当する基準アドレス値を減算した差分の絶対値が、予め設定した値を超えたことを検出し位相誤差過大信号を出力する位相誤差過大検出手段を備え、前記位相誤差過大信号出力時に前記インバータ回路が一時的に矩形波通電処理を行う構成としたものである。
【００２３】
また、パルス発生器の出力信号のエッジ検出周期を計測する周期カウンタと、前記パルス発生器の出力信号のエッジ検出時に、前記周期カウンタが計測した周期データに基づき次回計測される周期データの許容範囲を設定する許容周期範囲設定手段と、前記周期カウンタの現在のカウント値が前記許容周期範囲設定手段が設定した許容範囲を超過した場合、もしくは、許容範囲に至る以前に前記パルス発生器の出力信号のエッジを検出した場合に周期急変信号を出力する周期急変検出手段を備え、前記周期急変信号出力時に前記インバータ回路が一時的に矩形波通電処理を行う構成としたものである。
【００２４】
また、基準アドレス値は任意に設定変更可能なる値としたものである。
【００２５】
また、基準アドレス値は任意に設定変更可能なる値と、モータの回転数、もしくは電流値に基づき駆動中に動的に変化する値との和としたものである。
【００２６】
また、パルス発生器の出力信号のエッジ検出周期を計測する周期カウンタと、前記周期カウンタが計測した過去の周期データを記憶する複数の周期データメモリと、前記周期データメモリを読み出し、新旧順にモータの１回転に相当する数量の周期データを加算し出力する１回転周期データ演算手段とを備え、前記回転周波数検出手段は前記１回転周期データ演算手段から得られる１回転周期データに基づき回転周波数を作成する構成としたものである。
【００２７】
次に、本発明のブラシレスモータの駆動装置を応用して構成したモータのロータ位置検出装置は、ロータ位置を検出しこの位置信号を出力するロータ位置検出手段と、ロータ位置と対応したアドレスを前記ロータ位置検出手段の出力信号よりも高い分解能でカウントするアドレスカウンタとを備え、前記ロータ位置検出手段の信号出力時に、そのロータ位置に相当する基準アドレス値と現在のアドレス値との差に制御ゲインを乗じる演算に基づいて前記アドレスカウンタのカウント速度を調整することにより、前記アドレスカウンタの出力するアドレスがロータ位置に追従する構成とし、前記アドレスカウンタの出力アドレス値に基づいてロータ位置を識別するものである。
【００２８】
また、ロータ位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号の周波数を検出する回転周波数検出手段と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ位置に相当する基準アドレス値から現在のアドレス値を減算した差分と制御ゲインとの積に、前記回転周波数検出手段が出力する回転周波数を加算した結果を周波数指令として出力する第１の周波数調整手段と、前記第１の周波数調整手段の出力する周波数指令値に比例した速度でロータ磁極位置と対応したアドレスをカウントするアドレスカウンタとを備え、前記アドレスカウンタの出力アドレス値に基づいてロータ位置を識別するものである。
【００２９】
また、ロータ位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ位置に相当する基準アドレス値から現在のアドレス値を減算した差分と制御ゲインとの積に、現在の周波数指令を加算した結果を新たな周波数指令として出力する第２の周波数調整手段と、前記第２の周波数調整手段の出力する周波数指令値に比例した速度でロータ位置と対応したアドレスをカウントするアドレスカウンタとを備え、前記アドレスカウンタの出力アドレス値に基づいてロータ位置を識別するものである。
【００３０】
また、ロータ位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号の周波数を検出する回転周波数検出手段と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ位置に相当する基準アドレス値から現在のアドレス値を減算した差分と前記回転周波数検出手段が出力する回転周波数と制御ゲインとの積に、前記回転周波数を加算した結果を周波数指令として出力する第３の周波数調整手段と、前記第３の周波数調整手段の出力する周波数指令値に比例した速度でロータ位置と対応したアドレスをカウントするアドレスカウンタとを備え、前記アドレスカウンタの出力アドレス値に基づいてロータ位置を識別するものである。
【００３１】
また、ロータ位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ位置に相当する基準アドレス値から現在のアドレス値を減算した差分と現在の周波数指令と制御ゲインとの積に、現在の周波数指令を加算した結果を新たな周波数指令として出力する第４の周波数調整手段と、前記第４の周波数調整手段の出力する周波数指令値に比例した速度でロータ位置と対応したアドレスをカウントするアドレスカウンタとを備え、前記アドレスカウンタの出力アドレス値に基づいてロータ位置を識別するものである。
【００３２】
また、ロータ位置を示す信号を出力する少なくとも１個のパルス発生器と、前記パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ位置に相当する基準アドレス値から現在のアドレス値を減算した差であるアドレス誤差と波形の単位周期に相当する単位アドレス長との和を分子とし、かつ前記単位アドレス長から前記アドレス誤差を減算した値と前記エッジの前回検出時におけるアドレス誤差とを加算した値をもって分母とした分数値と、制御ゲインと、現在の周波数指令とを乗算した値を新たな周波数指令として出力する第５の周波数調整手段と、前記第５の周波数調整手段の出力する周波数指令値に比例した速度でロータ位置と対応したアドレスをカウントするアドレスカウンタとを備え、前記アドレスカウンタの出力アドレス値に基づいてロータ位置を識別するものである。
【００３３】
また、モータの加速度に基づく値を周波数指令値に加算して周波数指令値を補正する周波数指令補正手段を備えたものである。
【００３４】
また、パルス発生器の出力信号のエッジ検出時に、このエッジが示すロータ磁極位置に相当する基準アドレス値から現在のアドレス値を減算した差分の絶対値が予め設定した値を超えたことを検出し位相誤差過大信号を出力する位相誤差過大検出手段を備えたものである。
【００３５】
また、アドレスカウンタの現在の出力アドレス値から、前記パルス発生器の出力信号の最新エッジが示すロータ位置に相当する基準アドレス値を減算した差分の絶対値が、予め設定した値を超えたことを検出し位相誤差過大信号を出力する位相誤差過大検出手段を備えたものである。
【００３６】
また、パルス発生器の出力信号のエッジ検出周期を計測する周期カウンタと、前記パルス発生器の出力信号のエッジ検出時に、前記周期カウンタが計測した周期データに基づき次回計測される周期データの許容範囲を設定する許容周期範囲設定手段と、前記周期カウンタの現在のカウント値が前記許容周期範囲設定手段が設定した許容範囲を超過した場合、もしくは、許容範囲に至る以前に前記パルス発生器の出力信号のエッジを検出した場合に周期急変信号を出力する周期急変検出手段を備えたものである。
【００３７】
また、基準アドレス値は任意に設定変更可能なる値としたものである。
【００３８】
また、基準アドレス値は任意に設定変更可能なる値と、モータの回転数、もしくは電流値に基づき駆動中に動的に変化する値との和としたものである。
【００３９】
また、パルス発生器の出力信号のエッジ検出周期を計測する周期カウンタと、前記周期カウンタが計測した過去の周期データを記憶する複数の周期データメモリと、前記周期データメモリを読み出し、新旧順にモータの１回転に相当する数量の周期データを加算し出力する１回転周期データ演算手段とを備え、前記回転周波数検出手段は前記１回転周期データ演算手段から得られる１回転周期データに基づき回転周波数を作成する構成としたものである。
【００４０】
以上の構成により、ロータ位置検出手段の出力信号が低分解能であっても、アドレスカウンタの出力アドレスがロータ位置に追従する動作によって、結果的にロータ位置検出手段の出力信号の情報を高いカウント分解能を有するアドレスカウンタが補間する形となる。これによって微細なロータ位置検出が可能となり、波形データメモリに書き込んだ任意の波形でモータを駆動することができる。
【００４１】
また、第１の周波数調整手段がパルス発生器の出力信号のエッジを検出する毎に、アドレスの誤差と制御ゲインとの積に回転周波数を加算した結果を周波数指令として出力し、この周波数指令値に比例した速度でアドレスカウンタがカウント動作するものでは、アドレスカウンタのカウント速度を変化させることでアドレスの誤差の修正を行うため、アドレスの急変が無くなり出力波形をより滑らかにすることができる。
【００４２】
また、第２の周波数調整手段がパルス発生器の出力信号のエッジを検出する毎に、アドレスの誤差と制御ゲインとの積に現在の周波数指令を加算した結果を新たな周波数指令として出力し、この周波数指令値に比例した速度でアドレスカウンタがカウント動作するものでは、構成要素に回転周波数検出手段を必要としない。
【００４３】
また、第３の周波数調整手段がパルス発生器の出力信号のエッジを検出する毎に、アドレスの誤差と回転周波数と制御ゲインとの積に回転周波数を加算した結果を周波数指令として出力し、この周波数指令値に比例した速度でアドレスカウンタがカウント動作するものでは、アドレス誤差の修正を行う際の周波数操作量は回転周波数に応じて加減するため、回転周波数の大きさに関わらず安定したアドレス誤差修正を行うことができる。
【００４４】
また、第５の周波数調整手段がパルス発生器の出力信号のエッジを検出する毎に、アドレス誤差と波形の単位周期に相当する単位アドレス長との和を分子とし、かつ前記単位アドレス長から前記アドレス誤差を減算した値と前回のアドレス誤差とを加算した値をもって分母とした分数値と、制御ゲインと、現在の周波数指令とを乗算した値を新たな周波数指令として出力し、この周波数指令値に比例した速度でアドレスカウンタがカウント動作するものでは、周波数の調整に際して前回のアドレス誤差も考慮することにより、構成要素に回転周波数検出手段を必要とせず、かつ、回転周波数の大きさ及び前回のアドレス誤差量に関わらず安定したアドレス誤差修正を行うことができる。
【００４５】
また、モータの加速度に基づく値を周波数指令値に加算して周波数指令値を補正する周波数指令補正手段を備えたものでは、モータの速度が変化した場合でもその変化に応じて周波数指令値を補正することにより、安定したアドレス誤差修正を行うことができる。
【００４６】
また、時間の経過に伴い徐々に上昇する周波数値を前記アドレスカウンタに指令して起動するものでは、外力によらず起動を行うことができ、さらに、この動作前にインバータ回路が直流通電を一定時間行うものでは、起動時に高いトルクが発生し安定した起動特性を得ることができる。
【００４７】
また、アドレスの誤差が予め設定した値を超えた場合に一時的に矩形波駆動を行うものでは、モータに急に外乱トルクが加わりアドレスの誤差が大きくなった場合でも、駆動トルクを確保して回転を維持することができ、さらに、この時の矩形波駆動はモータの誘起電圧からロータの磁極位置を検出して行うものでは、少ない数のパルス発生器で構成することができる。
【００４８】
また、パルス発生器の出力信号のエッジに対応する基準アドレス値を任意に設定変更可能としたものでは、パルス発生器の機械的な取り付け精度の問題から生じるロータ磁極位置と基準アドレス値との対応の誤差を容易に修正することができ、さらに、基準アドレス値をモータの回転数、もしくは電流値に基づき駆動中に動的に変化するものでは、回転数の増大に伴う電流位相の遅れを防止するための位相進め処理等を容易に実現できる。
【００４９】
また、パルス発生器の出力信号のエッジ間周期データを順次周期データメモリに記憶し、これを新しいものから順にモータの１回転に相当する分、読み出して加算した１回転周期データに基づき回転周波数を作成するものでは、ロータの着磁バラツキ，パルス発生器の特性及び機械的な取り付け精度等に起因して生じるエッジ間周期データの誤差の影響が無くなり、精度の高い回転周波数の検出が行えるため、安定した駆動を行うことができる。
【００５０】
【実施例】
以下、本発明の実施例について、図面を参照しながら順に説明する。
【００５１】
（実施例１）
図１は本発明のブラシレスモータの駆動装置における第１の実施例を示すブロック図である。図１において、ロータ位置検出手段４は内部に従来例と同様のパルス発生器４Ａを含有するものであり、モータ３のロータの磁極位置を検出し、これをパルス信号４ａとして出力するものである。回転周波数検出手段８はパルス信号４ａの周波数を検出し、これを回転周波数Ｆｓｅｎとして出力するものである。アドレスカウンタ９はオーバーフローする周期とパルス信号４ａの周期とが同じになるように信号Ｆｓｅｎと比例させた速度でアドレスＡｕをカウントアップして出力するもので、この出力するアドレスＡｕはモータ３のロータの磁極位置に対応している。このアドレスカウンタ９は、Ａｕの他にＡｕを基準に作成したＡｖ，Ａｗも同時に出力しており、Ａｕ，Ａｖ，Ａｗが互いに電気角１２０度に相当するアドレス差を有している。第１のエッジ検出手段１０はパルス信号４ａの立ち上がりエッジを検出し、アドレス修正手段１１はそのエッジ検出時にエッジが示すモータ３のロータの磁極位置に相当する基準アドレス値Ａｒｅｆをアドレスカウンタ９にプリセット、すなわちアドレスＡｕの値を強制的に基準アドレス値Ａｒｅｆにするものである。波形データメモリ１２は正弦波の基準振幅値データが書き込まれたもので、入力されるアドレスＡｕ，Ａｖ，Ａｗ上にあるデータを読み出し、それぞれ相出力波形データＤｕ，Ｄｖ，Ｄｗとして出力するものである。相出力指令作成手段１３は、相出力波形データＤｕ，Ｄｖ，Ｄｗを直流指令値１４と乗算し相出力指令値Ｖｕ，Ｖｖ，Ｖｗを作成するものである。インバータ回路１５は相出力指令値Ｖｕ，Ｖｖ，Ｖｗに従いＰＷＭ処理してモータ３を駆動する電力を出力制御するものである。
【００５２】
以上の構成において、その動作を図２，図３を加えて説明する。なお、アドレスカウンタ９のデータ長は８ｂｉｔ、すなわちアドレスの最大値がＦＦＨであり、基準アドレス値Ａｒｅｆは００Ｈであるものとして説明する。
【００５３】
モータ３が回転しているとき、パルス発生器４Ａが出力するロータの磁極位置を示したパルス信号４ａから、回転周波数検出手段８は周期計測により回転周波数を検出する。例えば、エッジｅ０からエッジｅ１までの期間の周期Ｔ０を計測し、その周期Ｔ０から逆数演算して求めた値を回転周波数Ｆｓｅｎとして、新たな次のエッジｅ２が来るまでの間、アドレスカウンタ９に伝える。すなわち、エッジｅ１からエッジｅ２までの期間は回転周波数Ｆｓｅｎは、Ｆｓｅｎ＝Ｋｆ／Ｔ０となる。ここで、Ｋｆは係数である。同様のことを繰り返し行うため、エッジｅ２からエッジｅ３までの期間はＦｓｅｎ＝Ｋｆ／Ｔ１に、また、エッジｅ３からエッジｅ４までの期間はＦｓｅｎ＝Ｋｆ／Ｔ２となる。
【００５４】
アドレスカウンタ９はオーバーフローする周期とパルス信号４ａの周期とが同じになるように、回転周波数Ｆｓｅｎに比例した速度でアドレスＡｕをカウントアップする。また、パルス信号４ａの立ち上がりエッジにて、アドレス修正手段１１がアドレスカウンタ９に基準アドレス値Ａｒｅｆをプリセットし、Ａｕは００Ｈとなる。
【００５５】
これらの動作により、エッジｅ２からエッジｅ３までの期間のように前回のエッジ間周期Ｔ１と現在のエッジ間周期Ｔ２とが等しい場合には、その期間の最後のエッジｅ３のタイミングと、アドレスカウンタ９がプリセットされることなく自然にオーバーフローしてアドレスＡｕが００Ｈとなるタイミングとが一致する。すなわち、このエッジｅ２からエッジｅ３の期間においてはアドレスＡｕは正しいロータ磁極位置を示している。
【００５６】
逆に、エッジｅ１からエッジｅ２までの期間や、エッジｅ３からエッジｅ４までの期間のように前回のエッジ間周期と現在のエッジ間周期とが異なる場合には、その期間の最後のエッジのタイミングと、アドレスカウンタ９が自然にオーバーフローしてアドレスＡｕが００Ｈとなるタイミングとは一致せず、すなわち、アドレスＡｕは正しいロータ磁極位置を示しておらず誤差を生じている。しかし、その期間の最後のエッジタイミングにて、アドレス修正手段１１のプリセット動作によりアドレスＡｕは００ＨとなりアドレスＡｕの誤差が修正される。
【００５７】
アドレスＡｕは波形データメモリ１２に伝えられてアドレスＡｕの値に対応した波形データが読み出され、モータ３のＵ相に入力する相電圧の基準振幅値を持った相出力波形データＤｕとして出力される。このとき、モータ３が最大トルクを出力するように入力アドレスＡｕと出力データＤｕの位相との対応がとられており、出力データＤｕを、Ｄｕ＝Ｋｒ・ｓｉｎθで表した場合、図２ではアドレスＡｕの００Ｈとθ＝０°とが対応している例を示している。ここでＫｒは基準振幅値である。
【００５８】
アドレスカウンタ９はＡｕの他に、Ａｕから電気角１２０度に相当するアドレス量を減算してＡｖを、Ａｖからさらに電気角１２０度に相当するアドレス量を減算してＡｗを作成して出力しており、Ａｕ，Ａｖ，Ａｗが互いに電気角１２０度に相当するアドレス差をもっている。アドレスＡｖ，ＡｗはＡｕと同様に、波形データメモリ１２に伝えられてその値に対応した波形データが読み出され、モータ３のＶ相及びＷ相に入力する相出力波形データＤｖ，Ｄｗとして出力される。これにより、相出力波形データＤｕ，Ｄｖ，Ｄｗは互いに１２０度の位相差を持つ３相正弦波データとなる。
【００５９】
このアドレスＡｕ，Ａｖ，Ａｗの値に対応した波形データメモリ１２の内容を読み出す動作は、アドレスＡｕ，Ａｖ，Ａｗの値を直接用いてアドレスＡｕ，Ａｖ，Ａｗが示す波形データメモリ１２の内容を読み出すことによって行う他には、例えば、アドレスＡｕ，Ａｖ，Ａｗの下位側ビットの値は用いずに上位側ビットの値のみを使用し、この上位アドレスが示す波形データメモリ１２の内容を読み出すこと等により行う。
【００６０】
これらの相出力波形データＤｕ，Ｄｖ，Ｄｗは相出力指令作成手段１３にて直流指令値
１４と乗算され、直流指令値１４に比例した振幅値をもつ相出力指令値Ｖｕ，Ｖｖ，Ｖｗとなり、インバータ回路１５がこの相出力指令値Ｖｕ，Ｖｖ，Ｖｗに基づきＰＷＭ処理して電力を出力制御しモータ３を駆動する。図３はインバータ回路１５におけるこのときのＰＷＭ処理をＵ相のみ表したもので、相出力指令値Ｖｕと三角波とを大小比較してｕｈ，ｕｌを作成し、この信号に必要に応じて上下アームの同時導通防止期間を設けたものをパワートランジスタの通電信号としている。なお、直流指令値１４は相出力波形データＤｕ，Ｄｖ，Ｄｗの交流的な動きに対して直流的な動きをする指令値を意味するものであり、時間的に変化しない厳密な直流を意味するものではない。
【００６１】
以上のようにしてモータ３は駆動するのであるが、図２のエッジｅ１からエッジｅ２までの期間や、エッジｅ３からエッジｅ４までの期間のように、アドレスＡｕに誤差を生じていて正しいロータ磁極位置を示していない場合には、相出力指令値Ｖｕ，Ｖｖ，Ｖｗの位相は最大出力トルクの得られる位相からずれるために出力トルクが乱れる。しかし、モータ３には慣性があり、特にファン等のように大きな慣性モーメントの負荷を駆動する場合にはその慣性力も大きく作用するため、アドレスＡｕの誤差が極端に大きく無い限り、これを原因として急にモータ３の回転周波数が大きく変動することは無い。したがって、アドレスＡｕに誤差があってもパルス信号４ａのエッジ間周期は一定値となり、過渡的にアドレスＡｕに誤差を生じても、定常的には前述した動作により、アドレスＡｕに誤差は無くなり正しいロータ磁極位置を示すようになる。換言すれば、ロータ磁極位置の不明なパルス信号４ａのエッジとエッジの間をアドレスカウンタ９の高い分解能で正しく補完できることになり、安定した正弦波駆動を行うことができる。
【００６２】
以上のように本実施例によれば、モータ３の回転周波数に比例した速度でロータ磁極位置と対応したアドレスＡｕをアップカウントし、パルス発生器４Ａの出力信号のエッジ検出時に基準アドレス値ＡｒｅｆをアドレスＡｕにプリセットすることで、アドレスＡｕは正しいロータ磁極位置を示すようになり、このアドレスＡｕに基づいて正弦波駆動を行うので、騒音，振動の低減を図ることができる。また、パルス発生器４Ａとしてはホール素子等を用いた簡単な構成のもので良く、さらに、構成の大半はソフトウェアで容易に実現可能なため、安価に提供することができる。
【００６３】
なお、本実施例ではパルス信号４ａの立ち上がりエッジにて、無条件にアドレスＡｕを基準アドレス値Ａｒｅｆにプリセットする構成としたが、アドレスＡｕの誤差が大きな場合にはその誤差を一度に修正してしまわず、修正量の絶対値に上限を設け、完全な修正は次回以降のエッジで行う構成としても良い。図４がこの動作を示すもので、修正量の絶対値の上限を２０Ｈとした場合の例である。パルス信号４ａのエッジｅ５においてアドレスＡｕの誤差は３０Ｈあり、一度に基準アドレス値Ａｒｅｆである００Ｈをプリセットすると修正量の絶対値は３０Ｈとなって、上限を超えてしまうため、修正量を上限値である２０Ｈに留めて１０Ｈをプリセットしている。そして、次のエッジｅ６にて００Ｈをプリセットして完全な修正を行っている。このようにアドレス修正量が一定範囲内に留まるようにすることで出力トルクの変化が小さくなり、より安定した動作、並びに騒音の低減を実現することができる。
【００６４】
また、パルス発生器を複数備えた構成でも良く、この場合は、複数のパルス信号から得られるエッジ毎に、これに対応する基準アドレス値Ａｒｅｆを予め設定しておき、エッジを検出する毎に、このエッジに対応する基準アドレス値Ａｒｅｆを選択してアドレスカウンタ９にプリセットする構成とすればよい。このようにすれば、モータ３の１回転当たりのアドレスＡｕの誤差の修正回数が増すため、制御をより安定したものにできる。さらに、パルス発生器４Ａとしてホール素子を例に挙げたが、この他にはモータ３のステータにロータの磁極検出用のコイルを設けて構成したものや、モータ３の誘起電圧を検出する構成のもの等、幅広く利用することが可能である。
【００６５】
また、パルス発生器４Ａは必ずしも直接的にロータの磁極位置を検出するものである必要はなく、例えば、機械角から電気角は一義的に定まることを利用して、パルス発生器４Ａは機械的なロータ位置を検出するものとしても良い。この場合、ロータの磁極位置に対応した信号となるように変換処理して信号を出力する構成とすれば、結果的に同じとなる。あるいは、パルス発生器４Ａの出力信号は機械的なロータ位置を示すものとしておいて、アドレスカウンタ９がロータの機械的な位置と対応したアドレスをカウントし、波形データメモリ１２の内容をロータの機械的な位置に対応した出力波形データとする構成であっても構わない。すなわち、ロータの機械角に基づいた制御を行う構成としたものであっても構わない。この構成をとった場合は、ブラシレスモータに限らずロータに磁石を有さないリラクタンスモータ等、同期モータ全般の駆動装置としても利用することができるため、極めて応用範囲の広いものとすることができる。
【００６６】
また、回転周波数検出手段８はパルス信号４ａの周波数を検出し、この回転周波数Ｆｓｅｎに比例した速度でアドレスカウンタ９がカウント動作する構成としたが、パルス信号４ａの周波数を求めずエッジ間の周期を検出するのみに留め、この周期に比例したカウント周期でアドレスカウンタ９が動作する構成でも良い。これは演算を周波数で行うか、周期で行うかの単なる演算処理上の違いであり、本質的に何ら変わりのないものである。
【００６７】
また、アドレスカウンタ９はアップカウントするものとして説明したが、パルス発生器の数を２つにし、この出力信号を９０度位相差２相信号とする等してモータ３の回転方向を検出し、モータ３の回転方向に応じてアドレスカウンタ９のアップカウントとダウンカウントの切り替えを行う構成とすれば、モータ３が正逆の両方に回転する用途にも適用することができる。
【００６８】
また、波形データメモリ１２のデータを正弦波として説明したが、これは正弦波でなくても構わない。一般に、ＰＷＭインバータ回路において相電圧指令を、例えば正弦波にその３次の整数倍の高周波を重畳した波形にすれば、線間電圧の最大値を正弦波の場合より大きくでき電圧の利用率を高めることができることが知られている。したがって、波形データメモリ１２のデータはこのような波形としても構わない。さらに、モータ３の誘起電圧の波形が正弦波で無い場合には、モータ３に流れる電流も正弦波とはならないが、この場合は波形データメモリ１２のデータをモータ３の誘起電圧の波形に応じて変形させればモータ３に流れる電流を正弦波にすることができる。また、インバータ回路１５の内部のパワー素子は、上アームと下アームのいずれか一方がオンし、もう一方がオフする動作が基本であるが、波形データメモリ１２の値が予め設定した値と一致した時に上アームと下アームの両方をオフする、すなわち、その相の電位を確定しない状態をとる構成とすれば、モータ駆動波形をより自由度の高い任意の波形にすることが可能である。これは、騒音、振動の低減よりも効率の向上を重視するために駆動波形を矩形波状とし、かつ通電角を任意に設定するような場合や、モータ駆動中に上アームと下アームの両方オフの期間を利用して誘起電圧を検出する必要のある場合などで特に有効である。すなわち本実施例の構成は、目的に応じて波形データメモリ１２のデータを変更することにより任意の波形でモータ３を駆動できるため、騒音，振動の低減以外の例えば効率向上等の目的にも適用できるなど、応用範囲の広いものである。加えて、波形データメモリ１２のデータが一周期分に満たなくても、一周期を再生できるものであれば良いことは言うまでもないことである。
【００６９】
また、インバータ回路１５はＰＷＭ制御するもので説明したが、パワートランジスタの損失が問題無ければ、パワートランジスタを活性領域で使用することで実現しても良い。また、電圧制御ではなく相電流を検出する電流検出手段を設けて、相出力指令値Ｖｕ，Ｖｖ，Ｖｗを相電流指令とした電流制御を行う構成でも構わない。コストは上昇するものの、制御誤差となるモータ３の誘起電圧の波形歪の影響を受けなくなり出力トルクが安定するため望ましい構成である。
【００７０】
（実施例２）
図５は本発明の第２の実施例を示すブロック図である。図５において、ロータ位置検出手段４，回転周波数検出手段８，第１のエッジ検出手段１０，アドレスカウンタ９，波形データメモリ１２，相出力指令作成手段１３，直流指令値１４，インバータ回路１５については第１の実施例を示す図１の構成と同様のものである。図１の構成と異なるのは、第１のエッジ検出手段１０の出力信号タイミングでアドレスＡｕの値を保持しアドレス値Ａｕｓとして出力する第１のデータラッチ１６と、これを包含し、基準アドレス値Ａｒｅｆから第１のデータラッチ１６で保持するアドレス値Ａｕｓを減算して得られるアドレス誤差Ａｅｒｒと制御ゲインＫａとの積に、回転周波数Ｆｓｅｎを加算した結果を周波数指令Ｆｒｅｆとしてアドレスカウンタ９に出力する第１の周波数調整手段１７を備える点である。
【００７１】
以下、本第２の実施例の動作を第１の実施例と異なる点のみ説明する。
【００７２】
第１の周波数調整手段１７は第１のエッジ検出手段１０がパルス信号４ａの立ち上がりエッジを検出すると、このタイミングにて第１のデータラッチ１６が現在の出力アドレスＡｕを保持し、この保持したデータをアドレス値Ａｕｓとして出力する。そして、パルス信号４ａの立ち上がりエッジでのモータ３のロータ磁極位置に相当する基準アドレス値Ａｒｅｆから、アドレス値Ａｕｓを減算したものをアドレス誤差Ａｅｒｒとし、このアドレス誤差Ａｅｒｒに制御ゲインＫａを乗じたものを回転周波数Ｆｓｅｎに加算した周波数指令Ｆｒｅｆをアドレスカウンタ９に出力する。したがって、周波数指令ＦｒｅｆはＦｒｅｆ＝Ｆｓｅｎ＋Ｋａ・Ａｅｒｒとなる。
【００７３】
アドレスカウンタ９の動作は第１の実施例と同様であるが、入力される周波数指令Ｆｒｅｆと比例した速度でアドレスＡｕをカウントアップするのみで、プリセットはされない。
【００７４】
以下、図５における各部の動作を示す図６を加えて説明する。なお、第１の実施例と同じく、アドレスＡｕの最大値はＦＦＨで基準アドレス値Ａｒｅｆは００Ｈであり、エッジｅ１のタイミングにおいてアドレスＡｕは００Ｈであるものとしている。また、アドレス誤差Ａｅｒｒを作成する減算においてオーバーフローもしくはアンダーフローが発生しても、そのときのキャリーもしくはボローは無視してアドレス誤差Ａｅｒｒを算出し、この結果得られたアドレス誤差Ａｅｒｒは２の補数で表された正負の極性を有する数値として扱う。したがって、エッジにおいて、アドレスＡｕの値が０１Ｈから８０Ｈまでの範囲にあるときはアドレス誤差Ａｅｒｒは負の値になり、また、アドレスＡｕの値が８１ＨからＦＦＨまでの範囲にあるときはアドレス誤差Ａｅｒｒは正の値になる。
【００７５】
まず、エッジｅ１のタイミングにおけるアドレスＡｕは００Ｈであり、基準アドレス値Ａｒｅｆに等しくアドレス誤差Ａｅｒｒはゼロである。よって、エッジｅ１からエッジｅ２までの期間においては、周波数指令Ｆｒｅｆは回転周波数Ｆｓｅｎと同じになり、回転周波数Ｆｓｅｎは、Ｆｓｅｎ＝Ｋｆ／Ｔ０であるから、周波数指令Ｆｒｅｆは、Ｆｒｅｆ＝Ｋｆ／Ｔ０となる。したがって、エッジ間周期Ｔ１がＴ０と等しければ、第１の実施例で述べたようにエッジｅ２においてアドレスＡｕが自然にオーバーフローして基準アドレス値Ａｒｅｆと同じ００Ｈとなるが、エッジ間周期Ｔ１の方が大きいのでエッジｅ２においてアドレスＡｕは基準アドレス値Ａｒｅｆをオーバーし、負のアドレス誤差Ａｅｒｒを生じる。よって、エッジｅ２からエッジｅ３までの期間は、周波数指令Ｆｒｅｆは回転周波数Ｆｓｅｎよりも小さな値となり、このときの回転周波数Ｆｓｅｎは、Ｆｓｅｎ＝Ｋｆ／Ｔ１であるから、周波数指令Ｆｒｅｆは、Ｆｒｅｆ＜Ｋｆ／Ｔ１となる。仮に、アドレスカウンタ９をＫｆ／Ｔ１の値でカウント動作させたならば、エッジ間周期Ｔ１とＴ２は等しいもののエッジｅ２においてアドレス誤差Ａｒｅｆがゼロでないため、第１の実施例とは異なりエッジｅ３のタイミングとアドレスＡｕが００Ｈとなるタイミングは一致しない。しかし、周波数指令Ｆｒｅｆが、Ｆｒｅｆ＜Ｋｆ／Ｔ１であり、かつこの大小差を決定する制御ゲインＫａを適切な値に設定しているので、エッジｅ３においてアドレスＡｕが基準アドレス値Ａｒｅｆに等しい００Ｈとなっておりアドレス誤差Ａｅｒｒがゼロとなっている。エッジｅ４のようにアドレス誤差Ａｅｒｒが正になる場合は、周波数指令Ｆｒｅｆを加減する極性が変わるだけであって同様の動作であり、周波数指令Ｆｒｅｆを回転周波数Ｆｓｅｎよりも大きな値にしてアドレス誤差Ａｅｒｒが無くなるようにしていく。
【００７６】
このように、アドレス誤差Ａｅｒｒがゼロでない場合にはアドレスカウンタ９に出力する周波数指令Ｆｒｅｆを加減することによってアドレス誤差Ａｅｒｒが無くなるように動作し、アドレスＡｕが正しいロータ磁極位置を示すように誤差が修正されていく。第１の実施例と異なるのは一連の動作においてアドレスＡｕが急変することが無い点であり、このため相出力波形データＤｕに不連続点が生じない。よって、相出力指令値Ｖｕ，Ｖｖ，Ｖｗも滑らかな連続したものとなり出力トルクの乱れが少なくなって、さらなる騒音の低減を図ることができる。
【００７７】
以上のように本実施例によれば、第１の出力周波数調整手段１７が基準アドレス値Ａｒｅｆから現在のアドレス値Ａｕを減算したアドレス誤差Ａｅｒｒと制御ゲインＫａとの積に、回転周波数Ｆｓｅｎを加算した結果を周波数指令Ｆｒｅｆとして出力し、この周波数指令Ｆｒｅｆに応じたカウント速度でアドレスカウンタ９が動作するため、アドレスＡｕを急変させること無く正しいロータ磁極位置を示すように修正していくことができる。これにより、相出力指令値Ｖｕ，Ｖｖ，Ｖｗが滑らかになり出力トルクの乱れが少なくなって、騒音，振動の低減を図ることができるものである。さらに、パルス発生器４Ａとしてはホール素子等を用いた簡単な構成のもので良く、また、構成の大半はソフトウェアで容易に実現可能なため、安価に提供することのできるものである。
【００７８】
また、パルス発生器４Ａの特性及び機械的な取り付け誤差、あるいはノイズ等に起因して、モータ３が一定回転数でムラ無く回転していても出力パルス信号４ａの周期に変動が生じる場合がある。このような場合、前述した実施例１の構成ではパルス信号４ａのエッジ検出時にアドレスカウンタ９をプリセットするため、この誤差がそのままインバータ回路１５まで伝わり出力位相誤差を生じてしまう。特に、パルス発生器４Ａとしてホール素子を用い、なおかつ複数個使用するような場合には、互いのホール素子の間隔が均一となるように配設することが一般に困難なため、この問題を大きくする。これに対し本実施例の構成では、パルス信号４ａのエッジ検出時にアドレスカウンタ９を即プリセットするのではなく、この時に生じているアドレス誤差Ａｅｒｒが徐々に無くなるように制御を行うので、出力パルス信号４ａの周期誤差が出力に与える影響を緩和する効果を有する。制御ゲインＫａの値を小さく設定し、アドレス誤差Ａｅｒｒに対してある程度鈍感に作用するようにしておけば、さらにこの効果を高めることができる。
【００７９】
なお、本実施例では周波数で演算処理する例を示したが、これは周期で行っても当然良く、この場合は、回転周波数検出手段８がパルス信号４ａのエッジ間周期を検出するだけとし、第１の出力周波数調整手段１７がアドレス誤差Ａｅｒｒに制御ゲインＫａを乗じたものを、その検出したエッジ間周期から減算して周期指令としてアドレスカウンタ９に伝え、この周期指令に比例したカウント周期でアドレスカウンタ９がカウント動作する構成とすればよい。
【００８０】
また、パルス発生器を複数備えた構成でも良く、この場合は、複数のパルス信号から得
られるエッジ毎に、これに対応する基準アドレス値Ａｒｅｆを予め設定しておき、エッジを検出する毎に、このエッジに対応する基準アドレス値Ａｒｅｆを選択して一連の制御を行う構成とすれば良い。このようにすれば、モータ３の１回転当たりのアドレスＡｕの誤差修正操作の数が増すため、制御をより安定したものにできる。
【００８１】
さらに、アドレスカウンタ９をアップダウン動作させるとモータ３の正逆の両方の回転に対応できること、波形データメモリ１２のデータは正弦波でなく例えば正弦波にその３次の整数倍の高周波を重畳した波形とすれば電圧の利用率を高めることができること、インバータ回路１５はＰＷＭ制御でなくパワートランジスタを活性領域で使用する構成でも良いこと、電圧制御ではなく電流制御を行っても良いこと、パルス発生器４Ａとしてホール素子以外のものも利用できること、ロータの機械角に基づいた制御を行う構成でも良いこと等は第１の実施例で説明したのと同様である。
【００８２】
（実施例３）
図７は本発明の第３の実施例を示すブロック図である。図７に示す構成は、第２の実施例を示す図５に近い構成となっており、図５と異なるのは、回転周波数検出手段８を備えず、第１の周波数調整手段１７に替えて、第１のエッジ検出手段１０の出力信号タイミングでアドレスＡｕの値を保持しアドレス値Ａｕｓとして出力する第１のデータラッチ１６と、これと同じタイミングで現在の周波数指令Ｆｒｅｆの値を保持し周波数Ｆｒｅｆｚとして出力する第２のデータラッチ１８と、これらを包含し、基準アドレス値Ａｒｅｆから第１のデータラッチ１６で保持するアドレス値Ａｕｓを減算して得られるアドレス誤差Ａｅｒｒと制御ゲインＫａとの積に、第２のデータラッチ１８で保持する周波数Ｆｒｅｆｚを加算した結果を周波数指令Ｆｒｅｆとしてアドレスカウンタ９に出力する第２の周波数調整手段１９を備える点である。
【００８３】
以下、本第３の実施例の動作を説明する。
【００８４】
第２の周波数調整手段１９は第１のエッジ検出手段１０がパルス信号４ａの立ち上がりエッジを検出すると、このタイミングにて第１のデータラッチ１６が現在の出力アドレスＡｕを保持し、この保持したデータをアドレス値Ａｕｓとして出力する。これと同じタイミングで、第２のデータラッチ１８は現在の周波数指令Ｆｒｅｆを保持しこの保持したデータを周波数Ｆｒｅｆｚとして出力する。そして、パルス信号４ａの立ち上がりエッジが示すモータ３のロータ磁極位置に相当する基準アドレス値Ａｒｅｆから、アドレス値Ａｕｓを減算したものをアドレス誤差Ａｅｒｒとし、このアドレス誤差Ａｅｒｒに制御ゲインＫａを乗じたものを周波数Ｆｒｅｆｚに加算した周波数指令Ｆｒｅｆをアドレスカウンタ９に出力する。したがって、周波数指令ＦｒｅｆはＦｒｅｆ＝Ｆｒｅｆｚ＋Ｋａ・Ａｅｒｒとなる。
【００８５】
前述した第２の実施例と動作が異なるのは、アドレス誤差Ａｅｒｒと制御ゲインＫａとの積に回転周波数Ｆｓｅｎに替えて、現在の周波数指令であるＦｒｅｆｚを加えて、新たな周波数指令Ｆｒｅｆを作成する点である。
【００８６】
以下、図７における各部の動作を示す図８を加えて説明する。なお、第２の実施例と同じく、アドレスＡｕの最大値はＦＦＨで基準アドレス値Ａｒｅｆは００Ｈであり、エッジｅ１においてアドレスＡｕは００Ｈであるものとしている。また、アドレス誤差Ａｅｒｒを作成する減算においてオーバーフローもしくはアンダーフローが発生しても、そのときのキャリーもしくはボローは無視してアドレス誤差Ａｅｒｒを算出し、この結果得られたアドレス誤差Ａｅｒｒは２の補数で表された正負の極性を有する数値として扱う。
【００８７】
まず、エッジｅ１のタイミングにおけるアドレスＡｕは００Ｈであり、基準アドレス値
Ａｒｅｆに等しくアドレス誤差Ａｅｒｒはゼロである。よって、エッジｅ１からエッジｅ２までの期間においては、周波数指令Ｆｒｅｆは周波数Ｆｒｅｆｚと同じ、すなわち周波数指令Ｆｒｅｆは前回のエッジｅ０からエッジｅ１までの期間と同じ値をとる。そして、エッジ間周期Ｔ０よりエッジ間周期Ｔ１の方が大きいのでエッジｅ２においてアドレスＡｕは００Ｈをオーバーし、負のアドレス誤差Ａｅｒｒを生じる。よって、エッジｅ２からエッジｅ３までの期間は、周波数指令Ｆｒｅｆは周波数Ｆｒｅｆｚ、すなわちエッジｅ１からｅ２までの期間の周波数指令Ｆｒｅｆより小さな値となり、かつ、この大小差を決定する制御ゲインＫａを適切な値に設定しているので、エッジｅ３においてアドレスＡｕが００Ｈとなっておりアドレス誤差Ａｅｒｒがゼロとなっている。エッジｅ４のようにアドレス誤差Ａｅｒｒが正になる場合は、周波数指令Ｆｒｅｆを加減する極性が変わるだけで同様の動作であり、周波数指令Ｆｒｅｆを現在の値よりも大きな値にしてアドレス誤差Ａｅｒｒが無くなるようにしていく。
【００８８】
このように、アドレス誤差Ａｅｒｒがゼロでない場合にはアドレスカウンタ９に出力する周波数指令Ｆｒｅｆを加減することによってアドレス誤差Ａｅｒｒが無くなるように動作し、アドレスＡｕが正しいロータ磁極位置を示すように誤差が修正されていく。第２の実施例と同様に、一連の動作においてアドレスＡｕが急変することが無く、このため相出力波形データＤｕに不連続点が生じない。よって、相出力指令値Ｖｕ，Ｖｖ，Ｖｗも滑らかな連続したものとなり出力トルクの乱れが少なくなって、騒音の低減を図ることができる。
【００８９】
以上のように本実施例によれば、第２の出力周波数調整手段１９が基準アドレス値Ａｒｅｆから現在のアドレス値Ａｕを減算したアドレス誤差Ａｅｒｒと制御ゲインＫａとの積に、現在の周波数Ｆｒｅｆｚを加算した結果を周波数指令Ｆｒｅｆとして出力し、この周波数指令Ｆｒｅｆでもってアドレスカウンタ９がカウント動作するため、アドレスＡｕを急変させること無く正しいロータ磁極位置を示すように修正していくことができる。これにより、相出力指令値Ｖｕ，Ｖｖ，Ｖｗが滑らかになり出力トルクの乱れが少なくなって、騒音，振動の低減を図ることができるものである。また、構成要素に回転周波数検出手段８を必要としないため構成を簡単にすることができると共に、このため当然に回転周波数検出時の検出誤差により制御が不安定になることが無い。さらに、パルス発生器４Ａとしてはホール素子等を用いた簡単な構成のもので良く、また、構成の大半はソフトウェアで容易に実現可能なため、安価に提供することのできるものである。
【００９０】
なお、本実施例では周波数で演算処理する例を示したが、これは周期で行っても当然良く、この場合は、第２の出力周波数調整手段１９がアドレス誤差Ａｅｒｒに制御ゲインＫａを乗じたものを第２のデータラッチ１８の出力データから減算して周期指令としてアドレスカウンタ９に伝え、この周期指令に比例したカウント周期でアドレスカウンタ９がカウント動作する構成とすればよい。
【００９１】
また、パルス発生器を複数備えた構成でも良いのは、第２の実施例で説明したのと同様であり、さらに、アドレスカウンタ９をアップダウン動作させるとモータ３の正逆の両方の回転に対応できること、波形データメモリ１２のデータは正弦波でなく例えば正弦波にその３次の整数倍の高周波を重畳した波形とすれば電圧の利用率を高めることができること、インバータ回路１５はＰＷＭ制御でなくパワートランジスタを活性領域で使用する構成でも良いこと、電圧制御ではなく電流制御を行っても良いこと、パルス発生器４Ａとしてホール素子以外のものも利用できること、ロータの機械角に基づいた制御を行う構成でも良いこと等は第１の実施例で説明したのと同様である。
【００９２】
（実施例４）
図９は本発明の第４の実施例を示すブロック図である。図９に示す構成は、第２の実施
例を示す図５に近い構成となっており、図５と異なるのは、第１の周波数調整手段１７に替えて、第１のエッジ検出手段１０の出力信号タイミングでアドレスＡｕの値を保持しアドレス値Ａｕｓとして出力する第１のデータラッチ１６と、これを包含し、基準アドレス値Ａｒｅｆから第１のデータラッチ１６で保持するアドレス値Ａｕｓを減算して得られるアドレス誤差Ａｅｒｒと回転周波数Ｆｓｅｎと制御ゲインＫａとの積に、回転周波数Ｆｓｅｎを加算した結果を周波数指令Ｆｒｅｆとしてアドレスカウンタ９に出力する第３の周波数調整手段２０を備える点である。
【００９３】
以下、本第４の実施例の動作を前述の第２の実施例の動作と比較して説明する。
【００９４】
第３の周波数調整手段２０は第１のエッジ検出手段１０がパルス信号４ａの立ち上がりエッジを検出すると、このタイミングにて第１のデータラッチ１６が現在の出力アドレスＡｕを保持し、この保持したデータをアドレス値Ａｕｓとして出力する。そして、パルス信号４ａの立ち上がりエッジが示すモータ３のロータ磁極位置に相当する基準アドレス値Ａｒｅｆから、アドレス値Ａｕｓを減算したものをアドレス誤差Ａｅｒｒとし、このアドレス誤差Ａｅｒｒに回転周波数Ｆｓｅｎと制御ゲインＫａとを乗じたものを回転周波数Ｆｓｅｎに加算した周波数指令Ｆｒｅｆをアドレスカウンタ９に出力する。したがって、周波数指令ＦｒｅｆはＦｒｅｆ＝Ｆｓｅｎ＋Ｋａ・Ａｅｒｒ・Ｆｓｅｎとなる。
【００９５】
第２の実施例と動作が異なるのは、アドレス誤差Ａｅｒｒと制御ゲインＫａとの積にさらに回転周波数Ｆｓｅｎを乗じている点であり、これに回転周波数Ｆｓｅｎを加算し新たな周波数指令Ｆｒｅｆを作成している。
【００９６】
図１０はすでに説明した第２の実施例の動作を示すものであり、上段は下段に示すものよりモータ３の回転周波数が低い場合を示すものである。上段も下段もエッジ間周期Ｔ７とＴ８及びＴ１０とＴ１１は等しく、また、エッジｅ８におけるアドレスＡｕの値とエッジｅ１１におけるアドレスＡｕの値は共にＡ１であり、アドレス誤差Ａｅｒｒの値は等しい。しかし、上段に示すエッジｅ９においては前述した動作によりアドレスＡｕが００Ｈとなっているのに対して、下段に示すエッジｅ１２ではアドレスＡｕは００Ｈをオーバーしており、アドレスＡｕが正しいモータ３のロータ磁極位置に追従していく位相追従性に差が出ている。これは、前述したように周波数指令ＦｒｅｆはＦｒｅｆ＝Ｆｓｅｎ＋Ｋａ・Ａｅｒｒの関係式で表されるが、この右辺第２項が制御ゲインＫａ、アドレス誤差Ａｅｒｒ共に同じ値であるならば同じ値、すなわちアドレス誤差Ａｅｒｒに応じて回転周波数Ｆｓｅｎを加減する操作量がモータ３の回転数によらず一定の値となることに起因している。図示していないが、逆に上段よりもモータ３の回転数が低くなった場合には、周波数の操作量が大きくなり過ぎて周波数指令Ｆｒｅｆが小さくなり、次のエッジにてアドレスＡｕが００Ｈに至らずアドレス誤差Ａｅｒｒが正の値になってしまう。つまり、アドレス誤差Ａｅｒｒを無くすための操作がその逆の極性のアドレス誤差Ａｅｒｒを生むわけであり、条件によってはこの動作を繰り返し、アドレス誤差Ａｅｒｒの極性が変わるだけでその値がいつまでもゼロにならないハンチングを生じてしまう。この問題を解決する構成が本第４の実施例である。
【００９７】
図１１は本第４の実施例の動作を示すものであり、例として制御ゲインＫａの値をアドレスＡｕのデータ長の逆数である１／１００Ｈとして、周波数指令ＦｒｅｆがＦｒｅｆ＝Ｆｓｅｎ＋Ａｅｒｒ・Ｆｓｅｎ／１００Ｈの関係式で表される場合を示したものである。ここで、制御ゲインの１／１００Ｈは正数として取り扱う。なお、第２の実施例と同じく、アドレスＡｕの最大値はＦＦＨで基準アドレス値Ａｒｅｆは００Ｈであり、アドレス誤差Ａｅｒｒの算出も同じである。また、エッジ間周期Ｔｎ０とＴｎ１とは等しい。上図の（ａ）はエッジｅｎ１においてアドレスＡｕの値が基準アドレス値の００Ｈをオーバーして、負のアドレス誤差Ａｅｒｒを生じている状態を示し、下図の（ｂ）はエッジｅｎ１においてアドレスＡｕの値が基準アドレス値の００Ｈに至らず、正のアドレス誤差Ａｅｒｒを生じている状態を示している。
【００９８】
図１１（ａ）において、エッジｅｎ１からエッジｅｎ２までの期間における周波数指令ＦｒｅｆはＦｒｅｆ＝Ｆｓｅｎ＋Ａｅｒｒ・Ｆｓｅｎ／１００Ｈとなるが、この関係式を変形するとＦｒｅｆ＝Ｆｓｅｎ・（１００Ｈ＋Ａｅｒｒ）／１００Ｈとなる。今、Ａｅｒｒの極性は負であるから、関係式中の（１００Ｈ＋Ａｅｒｒ）は１００ＨからＡｅｒｒの絶対値を減算した値となり、図１１（ａ）におけるアドレス差Ａｒを示すものとなる。したがって、これに置き換えるとＦｒｅｆ＝Ｆｓｅｎ・Ａｒ／１００Ｈとなる。なお、図１１は複雑になることを避けるために、アドレス差ＡｒがアドレスＡｕの最大値であるＦＦＨを基準としているかのように描画しているが、実際はＦＦＨの１カウント上である仮想的な値１００Ｈが基準である。
【００９９】
すでに述べた通り、エッジ間周期Ｔｎ０とＴｎ１とが等しいので、エッジｅｎ１におけるアドレス誤差Ａｅｒｒがゼロの場合には周波数指令Ｆｒｅｆを、Ｆｒｅｆ＝Ｆｓｅｎとすれば次のエッジｅｎ２においてもアドレス誤差Ａｅｒｒはゼロとなる。周波数は図におけるアドレスＡｕの傾きを示すものであり、周波数指令Ｆｒｅｆが、Ｆｒｅｆ＝Ｆｓｅｎのときの傾きは１００Ｈ／Ｔｎ１で示される。よって、周波数指令Ｆｒｅｆが、Ｆｒｅｆ＝Ｆｓｅｎ・Ａｒ／１００Ｈの場合の傾きはＦｒｅｆ＝Ｆｓｅｎのときの（Ａｒ／１００Ｈ）倍であるから（１００ＨＴｎ１）・（Ａｒ／１００Ｈ）で示され、整理するとＡｒ／Ｔｎ１となる。この傾きは時間Ｔｎ１経過したときＡｒだけアドレスＡｕが進むことを示すものであるから、次のエッジｅｎ２においてアドレス誤差Ａｅｒｒはゼロとなる。
【０１００】
図１１（ｂ）のようにエッジｅｎ１において正のアドレス誤差Ａｅｒｒを生じている場合は、（１００Ｈ＋Ａｅｒｒ）の値は図１１（ｂ）におけるアドレス量Ａｒを示すものとなり、アドレス誤差Ａｅｒｒが負の場合と同様に、周波数指令Ｆｒｅｆを傾きＡｒ／Ｔｎ１で示されるＦｒｅｆ＝Ｆｓｅｎ＋Ａｅｒｒ・Ｆｓｅｎ／１００Ｈとすることで、次のエッジｅｎ２においてアドレス誤差Ａｅｒｒをゼロにすることができる。
【０１０１】
図１１（ａ）（ｂ）共に重要なことは、エッジ間周期Ｔｎ１が任意の周期を表している点であり、エッジ間周期の大きさ、すなわち、モータ３の回転数に依存せず同じ位相追従性にて動作することを示している。
【０１０２】
以上のように本実施例によれば、前述した第２の実施例の効果に加え、周波数指令Ｆｒｅｆを、回転周波数Ｆｓｅｎ，アドレス誤差Ａｅｒｒ，制御ゲインＫａを用いて，Ｆｒｅｆ＝Ｆｓｅｎ＋Ｋａ・Ａｅｒｒ・Ｆｓｅｎの演算にて作成することにより、アドレス誤差Ａｅｒｒに応じて回転周波数Ｆｓｅｎを加減する操作量が回転周波数Ｆｓｅｎに比例するため、モータ３の回転数の大きさに関わらず同じ位相追従性を示す安定した制御を行うことができるものである。
【０１０３】
なお、本実施例では周波数で演算処理する例を示したが、これは周期で行っても当然良く、回転周波数検出手段８がパルス信号４ａのエッジ間周期Ｔｓｅｎを検出するのみとして、アドレスカウンタ９が周期指令Ｔｒｅｆに比例したカウント周期で動作し、第３の周波数調整手段２０がＴｒｅｆ＝Ｔｓｅｎ／（１＋Ｋａ・Ａｅｒｒ）で表される動作を行う構成とすればよい。単なる演算処理上の違いであり、本質的に何ら変わりのないものである。
【０１０４】
また、パルス発生器を複数備えた構成でも良いのは、第２の実施例で説明したのと同様であり、さらに、アドレスカウンタ９をアップダウン動作させるとモータ３の正逆の両方の回転に対応できること、波形データメモリ１２のデータは正弦波でなく例えば正弦波にその３次の整数倍の高周波を重畳した波形とすれば電圧の利用率を高めることができること、インバータ回路１５はＰＷＭ制御でなくパワートランジスタを活性領域で使用する構成でも良いこと、電圧制御ではなく電流制御を行っても良いこと、パルス発生器４Ａとしてホール素子以外のものも利用できること、ロータの機械角に基づいた制御を行う構成でも良いこと等は第１の実施例で説明したのと同様である。
【０１０５】
（実施例５）
図１２は本発明の第５の実施例を示すブロック図である。図１２に示す構成は、第３の実施例を示す図７に近い構成となっており、図７と異なるのは、第２の周波数調整手段１９に替えて、第１のエッジ検出手段１０の出力信号タイミングでアドレスＡｕの値を保持しアドレス値Ａｕｓとして出力する第１のデータラッチ１６と、これと同じタイミングで現在の周波数指令Ｆｒｅｆの値を保持し周波数Ｆｒｅｆｚとして出力する第２のデータラッチ１８と、これらを包含し、基準アドレス値Ａｒｅｆから第１のデータラッチ１６で保持するアドレス値Ａｕｓを減算して得られるアドレス誤差Ａｅｒｒと周波数Ｆｒｅｆｚと制御ゲインＫａとの積に、周波数Ｆｒｅｆｚを加算した結果を周波数指令Ｆｒｅｆとしてアドレスカウンタ９に出力する第４の周波数調整手段２１を備える点である。
【０１０６】
以下、本第５の実施例の動作を前述の第３の実施例の動作と比較して説明する。
【０１０７】
第４の周波数調整手段２１は第１のエッジ検出手段１０がパルス信号４ａの立ち上がりエッジを検出すると、このタイミングにて第１のデータラッチ１６が現在の出力アドレスＡｕを保持し、この保持したデータをアドレス値Ａｕｓとして出力する。これと同じタイミングで、第２のデータラッチ１８は現在の周波数指令Ｆｒｅｆを保持しこの保持したデータを周波数Ｆｒｅｆｚとして出力する。そして、パルス信号４ａの立ち上がりエッジが示すモータ３のロータ磁極位置に相当する基準アドレス値Ａｒｅｆから、アドレス値Ａｕｓを減算したものをアドレス誤差Ａｅｒｒとし、このアドレス誤差Ａｅｒｒに周波数Ｆｒｅｆｚと制御ゲインＫａとを乗じたものを周波数Ｆｒｅｆｚに加算した周波数指令Ｆｒｅｆをアドレスカウンタ９に出力する。したがって、周波数指令ＦｒｅｆはＦｒｅｆ＝Ｆｒｅｆｚ＋Ｋａ・Ａｅｒｒ・Ｆｒｅｆｚとなる。
【０１０８】
第３の実施例と動作が異なるのは、アドレス誤差Ａｅｒｒと制御ゲインＫａとの積にさらに周波数Ｆｒｅｆｚを乗じている点であり、これに周波数Ｆｒｅｆｚを加算し新たな周波数指令Ｆｒｅｆを作成している。
【０１０９】
第３の実施例においてはモータ３の回転数によって、アドレスＡｕが正しいロータ磁極位置に追従していく位相追従性に差が出るという、前述した第２の実施例と同じ問題点がある。これは、前述したように周波数指令ＦｒｅｆはＦｒｅｆ＝Ｆｒｅｆｚ＋Ｋａ・Ａｅｒｒの関係式で表されるが、この右辺第２項が制御ゲインＫａ，アドレス誤差Ａｅｒｒ共に同じ値であるならば同じ値、すなわちアドレス誤差Ａｅｒｒに応じて回転周波数Ｆｓｅｎを加減する操作量がモータ３の回転数によらず一定の値となることに起因している。したがって、条件によってはハンチングが発生する等の不安定な動作を生じてしまう。この問題を解決する構成が本第５の実施例である。
【０１１０】
本第５の実施例では周波数指令Ｆｒｅｆを、Ｆｒｅｆ＝Ｆｒｅｆｚ＋Ｋａ・Ａｅｒｒ・Ｆｒｅｆｚの演算にて作成するため、この関係式の右辺第２項が示すアドレス誤差Ａｅｒｒに応じて周波数Ｆｒｅｆｚを加減する操作量が、周波数Ｆｒｅｆｚに比例する。周波数Ｆｒｅｆｚは現在出力している周波数指令Ｆｒｅｆを第２のデータラッチ１８が保持したものであるが、通常アドレス誤差Ａｅｒｒは小さな値であり、周波数指令Ｆｒｅｆはモータ３の回転周波数にほぼ等しいものであるため、アドレス誤差Ａｅｒｒに応じて周波数Ｆｒｅｆｚを加減する操作量は、ほぼモータ３の回転周波数に比例することになる。したが
って、モータ３の回転数の大きさに関わらず同じ位相追従性を得ることができる。
【０１１１】
以上のように本実施例によれば、前述した第３の実施例の効果に加え、周波数指令Ｆｒｅｆを、周波数Ｆｒｅｆｚ，アドレス誤差Ａｅｒｒ，制御ゲインＫａを用いて，Ｆｒｅｆ＝Ｆｒｅｆｚ＋Ｋａ・Ａｅｒｒ・Ｆｒｅｆｚの演算にて作成することにより、アドレス誤差Ａｅｒｒに応じて周波数Ｆｒｅｆｚを加減する操作量が周波数Ｆｒｅｆｚに比例するため、モータ３の回転数の大きさに関わらず同じ位相追従性を示す安定した制御を行うことができるものである。
【０１１２】
なお、本実施例では周波数で演算処理する例を示したが、これは周期で行っても当然良く、単なる演算処理上の違いであり本質的に何ら変わりのないものである。
【０１１３】
また、パルス発生器を複数備えた構成でも良いのは、第２の実施例で説明したのと同様であり、さらに、アドレスカウンタ９をアップダウン動作させるとモータ３の正逆の両方の回転に対応できること、波形データメモリ１２のデータは正弦波でなく例えば正弦波にその３次の整数倍の高周波を重畳した波形とすれば電圧の利用率を高めることができること、インバータ回路１５はＰＷＭ制御でなくパワートランジスタを活性領域で使用する構成でも良いこと、電圧制御ではなく電流制御を行っても良いこと、パルス発生器４Ａとしてホール素子以外のものも利用できること、ロータの機械角に基づいた制御を行う構成でも良いこと等は第１の実施例で説明したのと同様である。
【０１１４】
（実施例６）
図１３は本発明の第６の実施例を示すブロック図である。前述した第５の実施例を示す図１２と異なるのは、第４の周波数調整手段２１に替えて第５の周波数調整手段４０を備える点であり、この内部のブロック図を図１３（ｂ）に示す。
【０１１５】
図１３（ｂ）において、第５の周波数調整手段４０は、前述した第１のエッジ検出手段１０の出力信号タイミングでアドレスＡｕの値を保持しアドレス値Ａｕｓとして出力する第１のデータラッチ１６と、これと同タイミングで現在の周波数指令Ｆｒｅｆの値を保持し周波数Ｆｒｅｆｚとして出力する第２のデータラッチ１８に加え、これと同タイミングで基準アドレス値Ａｒｅｆから第１のデータラッチ１６で保持するアドレス値Ａｕｓを減算して得られるアドレス誤差Ａｅｒｒを保持し、パルス信号４ａの前回のエッジタイミングにおけるアドレス誤差Ａｅｒｒｚを出力する第３のデータラッチ４１を備えるものであり、さらに、これらの出力を用いてアドレス誤差Ａｅｒｒと駆動波形の単位周期に相当する単位アドレス長Ａｌとの和を分子とし、かつ単位アドレス長Ａｌからアドレス誤差Ａｅｒｒを減算した値と前回のアドレス誤差Ａｅｒｒｚとを加算した値をもって分母とした分数値と、制御ゲインＫａと、周波数Ｆｒｅｆｚとを乗算した値を新たな周波数指令Ｆｒｅｆとして作成し出力するものである。
【０１１６】
以上の構成により、第５の周波数調整手段４０は周波数指令ＦｒｅｆをＦｒｅｆ＝（（Ａｌ＋Ａｅｒｒ）／（Ａｌ−Ａｅｒｒ＋Ａｅｒｒｚ））・Ｋａ・Ｆｒｅｆｚの演算結果として出力し、アドレスカウンタ９はこの周波数指令Ｆｒｅｆに応じたカウント速度で動作する。その他の動作については既に説明した実施例と同様である。
【０１１７】
図１４は本第６の実施例の動作を示すタイムチャートであり、例として制御ゲインＫａの値を１とし、単位アドレス長ＡｌをアドレスＡｕのデータ長である１００Ｈと同じに設定した場合を示している。また、これまでに示した実施例と同様に、パルス信号４ａのエッジタイミングでアドレス値が００Ｈとなるときアドレスが正しいロータ位置を示しているもの、すなわち基準アドレス値Ａｒｅｆ＝００Ｈであるものとして説明する。なお、アドレス値ＦＦＨの次の値はオーバーフローして００ＨとなるためアドレスＡｕの動作を示す図はアドレスＡｕを三角波状に描画するのが通常であるが、説明を理解しやすくするために、アドレスＡｕがＦＦＨから００Ｈに移る時にオーバーフローせずにカウント値が増え続けていくように描画している。
【０１１８】
パルス信号４ａのエッジｅ１０１の発生タイミングにおいては、アドレスＡｕは正しいロータ位置を示しておらず、カウント値に遅れがあり正極性のアドレス誤差を生じている。そして、この次のエッジｅ１０２の発生タイミングにおいても、値は異なるものの同様に正極性のアドレス誤差を生じている。さらに、次のエッジｅ１０３のタイミングにおいてはアドレス誤差は無く、アドレスＡｕが００Ｈとなっている。ここで、エッジｅ１０２のタイミングを基準に考えこのとき生じているアドレス誤差をＡｅｒｒとすれば、エッジｅ１０１のタイミングでのアドレス誤差は前回のアドレス誤差なのでＡｅｒｒｚで表される。
【０１１９】
ここで、図中に示した三角形ｑ１ｑ２ｑ３と三角形ｑ１ｑ４ｑ５が相似形であることから、ｑ１ｑ２：ｑ２ｑ３＝ｑ１ｑ４：ｑ４ｑ５の関係が成立する。この中のｑ２ｑ３は単位アドレス長Ａｌであり、ｑ１ｑ２はエッジｅ１０２からエッジｅ１０３までの期間におけるアドレスＡｕが単位アドレス長Ａｌ分カウントするに要する時間を示すアドレス周期Ｔａである。また、ｑ１ｑ４はエッジｅ１０２からエッジｅ１０３までの周期Ｔ１０２からアドレス周期Ｔａを引いた残りであるから（Ｔ１０２−Ｔａ）で表される。さらに、ｑ４ｑ５はアドレス誤差Ａｅｒｒを示すものである。したがって、前記関係式はＴａ：Ａｌ＝（Ｔ１０２−Ｔａ）：Ａｅｒｒとなり、この関係式からＴ１０２＝Ｔａ・（Ａｌ＋Ａｅｒｒ）／Ａｌが導かれる。
【０１２０】
また、図中に示した三角形ｑ６ｑ７ｑ８と三角形ｑ５ｑ９ｑ１０が相似形であることから、ｑ７ｑ８：ｑ８ｑ６＝ｑ９ｑ１０：ｑ１０ｑ５の関係が成立する。ここで、ｑ８ｑ６は単位アドレス長Ａｌであり、ｑ７ｑ８はエッジｅ１０１からエッジｅ１０２までの期間におけるアドレスＡｕが単位アドレス長Ａｌ分カウントするに要する時間を示すアドレス周期Ｔａｚである。また、ｑ９ｑ１０はエッジｅ１０１からエッジｅ１０２までの周期Ｔ１０１であり、さらに、ｑ１０ｑ５は（Ａｌ−Ａｅｒｒ＋Ａｅｒｒｚ）で表される。したがって、前記関係式はＴａｚ：Ａｌ＝Ｔ１０１：（Ａｌ−Ａｅｒｒ＋Ａｅｒｒｚ）となり、この関係式からＴ１０１＝Ｔａｚ・（Ａｌ−Ａｅｒｒ＋Ａｅｒｒｚ）／Ａｌが導かれる。
【０１２１】
ここでモータ３の回転に変動が無いものとすればＴ１０１＝Ｔ１０２であるから、前記２式をまとめて、Ｔａｚ・（Ａｌ−Ａｅｒｒ＋Ａｅｒｒｚ）／Ａｌ＝Ｔａ・（Ａｌ＋Ａｅｒｒ）／Ａｌとなり、これを整理するとＴａ＝（（Ａｌ−Ａｅｒｒ＋Ａｅｒｒｚ）／（Ａｌ＋Ａｅｒｒ））・Ｔａｚの関係式が得られる。ここで、アドレス周期Ｔａは周波数指令Ｆｒｅｆの逆数に比例し、また、アドレス周期Ｔａｚは周波数指令Ｆｒｅｆｚの逆数に比例し、共にその比例係数は同じであることから、Ｆｒｅｆ＝（（Ａｌ＋Ａｅｒｒ）／（Ａｌ−Ａｅｒｒ＋Ａｅｒｒｚ））・Ｆｒｅｆｚの関係が成立する。
【０１２２】
したがって、この関係式がエッジｅ１０３の発生タイミングにおいてアドレス誤差を生じずにアドレスＡｕが正しいロータ位置を示す条件を表す式である。換言すれば、エッジｅ１０２の発生タイミングにおいて、このタイミングでのアドレス誤差Ａｅｒｒと、この前回のエッジｅ１０１発生タイミングでのアドレス誤差Ａｅｒｒｚと、周波数指令Ｆｒｅｆｚとを用いて、新たな周波数指令ＦｒｅｆをＦｒｅｆ＝（（Ａｌ＋Ａｅｒｒ）／（Ａｌ−Ａｅｒｒ＋Ａｅｒｒｚ））・Ｆｒｅｆｚの演算で得られる値とすれば、次のエッジｅ１０３の発生タイミングにおいてアドレス誤差をゼロにすることができる。エッジｅ１０３のタイミングにおいて一度にアドレス誤差をゼロにせずにある程度の値に留め、次回以降のエッジ発生タイミングでアドレス誤差をゼロにするようにして徐々にアドレス誤差を減少させていくには、制御ゲインＫａを前記関係式右辺に乗じて、Ｆｒｅｆ＝（（Ａｌ＋Ａｅｒｒ）／（Ａｌ−Ａｅｒｒ＋Ａｅｒｒｚ））・Ｋａ・Ｆｒｅｆｚとし、この制御ゲインＫａの値を調節すれば良い。このようにすれば、より円滑にアドレス誤差をゼロに収束させていくことができる。前記第５の周波数調整手段４０はこの関係式に基づいて周波数指令Ｆｒｅｆを作成する一実施例であり、この第５の周波数調整手段４０の動作によってアドレス誤差を無くし、アドレスＡｕが正しいロータ位置に追従していく。なお、前回のアドレス誤差Ａｅｒｒｚと今回のアドレス誤差Ａｅｒｒは共に正の値である場合を例として説明したが、極性が負の場合であっても動作に違いはなく、式中の各項が極性を含むものとして扱えば周波数指令Ｆｒｅｆを作成する演算式は同じである。
【０１２３】
以上に述べた動作の説明において、パルス信号４ａのエッジ間の周期は任意の大きさであり、モータの回転数の大小によってアドレスＡｕが正しいロータ位置に追従していく度合いが変化するような問題は生じない。また、構成要素に回転周波数検出手段を必要としない点は前述した実施例５と同様であるが、周波数指令Ｆｒｅｆの作成において前回のアドレス誤差Ａｅｒｒｚを考慮するため、前回のアドレス誤差Ａｅｒｒｚがゼロでない場合であっても安定してアドレスＡｕが正しいロータ位置に追従していくことができる点がさらに優れる。
【０１２４】
以上のように本実施例によれば、周波数指令Ｆｒｅｆを周波数Ｆｒｅｆｚ，アドレス誤差Ａｅｒｒ，前回のアドレス誤差Ａｅｒｒｚ，単位アドレス長Ａｌ，制御ゲインＫａを用いて、Ｆｒｅｆ＝（（Ａｌ＋Ａｅｒｒ）／（Ａｌ−Ａｅｒｒ＋Ａｅｒｒｚ））・Ｋａ・Ｆｒｅｆｚの演算にて作成することにより、前述した第５の実施例と同様の効果に加え、前回のアドレス誤差Ａｅｒｒｚがゼロでない場合であっても安定してアドレスＡｕが正しいロータ位置に追従していくことができるものである。
【０１２５】
なお、本実施例では周波数で演算処理する例を示したが、これは周期で行っても当然良い。例えば、動作説明中に示したアドレス周期Ｔａの関係式右辺に制御ゲインＫａを乗じて、Ｔａ＝（（Ａｌ−Ａｅｒｒ＋Ａｅｒｒｚ）／（Ａｌ＋Ａｅｒｒ））・Ｋａ・Ｔａｚの演算からアドレス周期Ｔａを算出し、このアドレス周期Ｔａに基づいたカウント周期でアドレスカウンタ９が動作する構成としても良い。これは、単なる演算処理上の違いであり本質的に何ら変わりのないものである。
【０１２６】
また、パルス発生器を複数備えた構成でも良いのは、第２の実施例で説明したのと同様であり、さらに、アドレスカウンタ９をアップダウン動作させるとモータ３の正逆の両方の回転に対応できること、波形データメモリ１２のデータは正弦波でなく例えば正弦波にその３次の整数倍の高周波を重畳した波形とすれば電圧の利用率を高めることができること、インバータ回路１５はＰＷＭ制御でなくパワートランジスタを活性領域で使用する構成でも良いこと、電圧制御ではなく電流制御を行っても良いこと、パルス発生器４Ａとしてホール素子以外のものも利用できること、ロータの機械角に基づいた制御を行う構成でも良いこと等は第１の実施例で説明したのと同様である。
【０１２７】
（実施例７）
図１５は本発明の第７の実施例を示すブロック図である。図１５において、周波数指令補正手段４２は、パルス信号４ａからモータ３の加速度を検出する加速度検出手段４３を包含し、加速度と係数Ｋａｃｃの積を周波数指令Ｆｒｅｆに加算した結果を周波数指令Ｆｒｅｆｒとして、アドレスカウンタ９に対し出力するものである。この他の構成については、これまでに示した実施例と同様であるので図面からは省略している。なお、周波数指令Ｆｒｅｆはこれまでに示した実施例においてはアドレスカウンタ９のカウント速度を決定する指令としていたものであり、第２の実施例以降については同記号のものがこれに相当するが、第１の実施例においては回転周波数Ｆｓｅｎがこれに相当するものである。以
下、説明を簡便にするため語句を周波数指令Ｆｒｅｆに統一して説明する。
【０１２８】
この構成により、モータ３の加速度に比例した値が周波数指令Ｆｒｅｆに加算され周波数指令Ｆｒｅｆｒとなり、アドレスカウンタ９に伝えられる。すなわち、モータ３の加速時には周波数指令Ｆｒｅｆはプラス補正され、逆に減速時には周波数指令Ｆｒｅｆはマイナス補正されて周波数指令Ｆｒｅｆｒとなりアドレスカウンタ９に伝えられる。アドレスカウンタ９はこの周波数指令Ｆｒｅｆｒの値に応じた速度でカウント動作を行う。この動作における補正の度合いは係数Ｋａｃｃの値で定まり、モータ３が加速中においてもアドレスＡｕが正しくロータ位置を追従するように設定されている。
【０１２９】
これまでに述べた実施例においては、モータ３の速度が一定でありパルス信号４ａのエッジ間周期が一定周期である時に、アドレスＡｕが正しいロータ位置を示すように追従動作する構成となっている。したがって、パルス信号４ａのあるエッジ発生タイミングにおいてアドレス誤差Ａｅｒｒがゼロであっても、この次のエッジ発生タイミングにおいては、モータが加速しているときにはアドレスＡｕが正しい値に至らず正のアドレス誤差Ａｅｒｒを生じ、逆にモータが減速しているときにはアドレスＡｕが正しい値を越えて負のアドレス誤差Ａｅｒｒを生じてしまう。本実施例はこの問題を解決するものであり、モータ３の加速時には周波数指令Ｆｒｅｆはプラス補正され、逆に減速時には周波数指令Ｆｒｅｆはマイナス補正されて周波数指令Ｆｒｅｆｒとなりアドレスカウンタ９に伝えられるため、モータ３の速度が変化していてもアドレスＡｕが正しくロータ位置を追従することができる。
【０１３０】
なお、加速度検出手段４３は、パルス信号４ａのエッジを検出する毎にエッジ間周期から速度を求め、この速度から前回のエッジ検出時の速度を減じた結果を出力するもの、あるいは、単に前回検出したエッジ間周期から今回検出したエッジ間周期を減じた結果を出力するもの等のように、簡略した構成のものであっても構わない。理論的に厳密な加速度は得られないため制御特性は若干劣化するものの、加速度の近似値を容易に得ることができるため構成を簡素化することができる。また、周波数でなく周期を指令としてアドレスカウンタ９を動作させる構成としても当然良く、この場合は、モータ３の加速時には周期指令をマイナス補正し、減速時には周期指令をプラス補正した結果をアドレスカウンタ９に入力し、アドレスカウンタ９がこの補正結果に応じたカウント周期で動作する構成とすれば良い。これは、単なる演算処理上の違いであり本質的に何ら変わりのないものである。さらに、係数Ｋａｃｃは動作中に任意に可変できる構成として、より自由度の高い制御を行えるようにしても当然構わない。
【０１３１】
（実施例８）
以上に説明してきた実施例では、モータ３が停止しているとパルス発生器４Ａの出力パルス信号４ａのエッジが検出されないため、アドレスカウンタ９の出力アドレスＡｕが正しいロータ磁極位置を示すことができず、自ら起動することができない。また、モータ３の回転数が低いときは、単位時間当たりのアドレスＡｕの修正回数が少ないため安定した位相追従性が得られない。こういった問題を解決するのが本第８の実施例である。
【０１３２】
図１６は本発明の第８の実施例を示すブロック図である。図１６において、周波数上昇手段２２は時間の経過に伴い周波数を徐々に上昇して出力するもので、第１のセレクタ２３は周波数上昇手段２２の出力する周波数と、周波数指令Ｆｒｅｆとのどちらか一方を選択して出力し、アドレスカウンタ９へ周波数指令として伝えるものである。ここで、周波数指令Ｆｒｅｆは第２の実施例以降では同じ周波数指令Ｆｒｅｆが相当するが、第１の実施例においては回転周波数検出手段８が出力する回転周波数Ｆｓｅｎがこれに相当するものである。この他の構成はすでに説明した実施例と同様である。
【０１３３】
以下、本第８の実施例の動作を説明する。モータ３を起動する際には、まず、第１のセレクタ２３は周波数上昇手段２２の出力を選択しアドレスカウンタ９に伝える。この周波数上昇手段２２の動作は図１７に示すように、時間ｔの経過に伴い直線的に周波数ｆが上昇するものであり、これによって、モータ３には周波数が徐々に上昇していく交流電圧が印加され、回転磁界が発生する。ロータはこの回転磁界に引かれて連れ回りし次第に加速していく。そして、モータ３の回転数が予め設定した値を超えたとき、もしくは周波数上昇手段２２の出力する周波数の値が予め設定した値を超えたときに、第１のセレクタ２３はアドレスカウンタ９に伝える周波数を周波数上昇手段２２の出力する周波数から周波数指令Ｆｒｅｆに切り替える。この後は、すでに説明した実施例の動作となって、起動は完了する。前述した第３、第５、第６の実施例に本実施例を適用する際には、第１のセレクタ２３が周波数上昇手段２２の出力する周波数から周波数指令Ｆｒｅｆに切り替えた後に、周波数指令Ｆｒｅｆの値が不定であることに起因して不安定な動作を生じてしまうが、第２のデータラッチ１８が保持するデータを第１のセレクタ２３の出力データとすれば、この問題は回避できる。
【０１３４】
以上のように本実施例によれば、モータを起動する際に、周波数上昇手段２２が時間の経過に伴い徐々に上昇する周波数値を、アドレスカウンタ９に指令する構成としたことにより、安定した起動が行えるものである。
【０１３５】
なお、周波数上昇手段２２の動作はモータ３が連れ回りするように徐々に上昇すれば良いのであって、直線的でなく、曲線的に周波数が上昇する構成であっても構わない。
【０１３６】
（実施例９）
第８の実施例ではモータ３を起動させる際に、ロータの磁極位置に関わらず、時間の経過に伴い徐々に上昇する周波数値をアドレスカウンタ９に指令する構成としているが、停止時のロータの磁極位置と通電開始時の最初の磁界の向きによっては、発生トルクが不安定で起動できない場合がある。この問題を解決するのが本第９の実施例である。
【０１３７】
本第９の実施例のブロック図は第８の実施例のブロック図を示す図１６と同様であるが、周波数上昇手段２２の内部の構成が異なっており、モータ３を起動する際に、図１８に示す動作を行う。すなわち、起動の最初に予め設定された時間、周波数ｆがゼロの直流通電期間ｔｄｃがあり、この後、周波数ｆは時間の経過に伴い徐々に上昇していく構成となっている。この他の構成はすでに説明した第８の実施例と同様である。
【０１３８】
第９の実施例においては、モータ３を起動させる際の通電開始時に周波数ｆがゼロの直流通電期間ｔｄｃがあるため、発生する磁界の向きが固定された状態が一定時間続く。この時間は例えば数秒程度のものである。これにより、ロータの磁極位置はこの磁界の向きに沿った位置に固定される。そして、この後に周波数が時間の経過に伴い徐々に上昇し、モータ３は回転磁界に引かれて連れ回りして次第に加速していく。この後の動作は第８の実施例と同様である。この動作の中において、通電開始時にロータの磁極位置が特定の位置に定まるため、この後に周波数を上昇させる際に滑らかにロータを連れ回りさせることができ、安定した起動を行うことができる。
【０１３９】
以上のように本実施例によれば、モータを起動する際の通電開始時に、周波数ｆがゼロの直流通電期間ｔｄｃを設けたことによって、まず、ロータの磁極位置が特定の位置に定まり、そして、その後に時間の経過に伴い徐々に上昇する周波数値を、アドレスカウンタ９に指令する構成としたことにより、安定した起動が行えるものである。
【０１４０】
（実施例１０）
図１９は本発明の第１０の実施例を示すブロック図である。図１９においてパルス発生
器は４Ａ，４Ｂ，４Ｃの３個、すなわちモータ３の相数と同数備えており、第１の矩形波駆動手段２４はこのパルス発生器４Ａ，４Ｂ，４Ｃの出力信号をロジック処理して、矩形波通電を行うための電圧指令を作成し出力するものである。正弦波駆動手段２５はすでに説明した第１から第６の実施例におけるインバータ回路１５を除いた部分に相当するものである。第２のセレクタ２６は起動完了判定手段２７の出力に応じて、第１の矩形波駆動手段２４の出力する電圧指令と正弦波駆動手段２５の出力する電圧指令のいずれか一方を選択して、インバータ回路１５に伝えるものである。この他の構成はすでに説明した第１から第６の実施例と同様である。
【０１４１】
この構成において、モータ３を起動させる際には、まず、第２のセレクタ２６は第１の矩形波駆動手段２４の電圧指令を選択してインバータ回路１５に伝える。このため、まず、第１の矩形波駆動手段２４がパルス発生器４Ａ，４Ｂ，４Ｃの出力する３つのロータ磁極位置検出信号に基づいて作成した電圧指令をインバータ回路１５に与え、矩形波駆動を行う通常のブラシレスモータの動作を行う。こうして、モータ３が回転すると起動完了判定手段２７がモータ３の回転数が予め設定した値を超えたこと、または、パルス発生器の４Ａ，４Ｂ，４Ｃの出力する信号のエッジの検出回数が予め設定した値を超えたことによって起動の完了を判定し、第２のセレクタ２６に切り替え信号を伝える。第２のセレクタ２６はこの切り替え信号を受けると、インバータ回路１５に伝える電圧指令を、第１の矩形波駆動手段２４の出力から正弦波駆動手段２５の出力する電圧指令に切り替える。この後は、すでに説明した実施例の動作となって、起動は完了する。したがって、起動の際は通常の矩形波駆動のブラシレスモータとして動作するので安定した起動特性が得られる。
【０１４２】
以上のように本実施例によれば、３個のパルス発生器４Ａ，４Ｂ，４Ｃの出力信号に基づき矩形波通電にて駆動を行う第１の矩形波駆動手段２４を備え、モータ３を起動する際に、インバータ回路１５が第１の矩形波駆動手段２４による矩形波通電処理を行うため安定した起動特性が得られるものである。
【０１４３】
なお、起動の際に限らず、モータ３の回転数にしきい値を設け、このしきい値より低い場合は矩形波通電を行い、このしきい値より高い場合は正弦波駆動を行う構成としても良い。一般にモータ３が低速で回転しているときは、外乱トルクの影響を受け易く回転が不安定となり易い。このため、前述した正弦波駆動は低速時にアドレスに誤差を生じ、出力トルクが変動し不安定な動作をする場合がある。低速時に積極的に矩形波駆動に切り替えることにより、広い回転数範囲で安定した動作を行うことができる。さらに、この場合に矩形波と正弦波とを切り替える回転数にヒステリシス特性を持たせても当然良く、このようにすれば切り替え回転数付近での切り替えのバタツキを防止することができる。
【０１４４】
（実施例１１）
モータ３に急に外乱トルクが加わる等して、アドレスＡｕが正しいロータ磁極位置を示さなくなると出力トルクは減少し、場合によっては停止してしまう。この問題を解決するのが本第１１の実施例である。
【０１４５】
図２０は本発明の第１１の実施例を示すブロック図である。図２０において、位相誤差過大検出手段２８はアドレス誤差Ａｅｒｒの絶対値が予め設定した値を超えたことを検出し、このとき位相誤差過大信号２８ａを'Ｈ'として出力するものである。論理反転手段２９は位相誤差過大信号２８ａを論理反転して出力するものであり、また、論理積手段３０は起動完了判定手段２７の出力信号と論理反転手段２９の出力信号の論理積をとって第２のセレクタ２６に出力するものである。この他の構成は前述の第１０の実施例と同様である。
【０１４６】
この構成における動作を図２１のタイムチャートを加えて説明する。本実施例では３個
のパルス発生器４Ａ，４Ｂ，４Ｃで構成しているので、この出力パルス信号４ａ，４ｂ，４ｃの各エッジ毎にアドレス誤差Ａｅｒｒを更新するのが望ましいが、説明を理解し易くするため、パルス信号４ａの立ち上がりエッジを検出した時のみアドレス誤差Ａｅｒｒを更新するものとして説明する。
【０１４７】
図２１において、パルス信号４ａのエッジｅ１３ではアドレス誤差Ａｅｒｒがゼロであるが、エッジｅ１４，ｅ１５となるにつれて、アドレス誤差Ａｅｒｒが増大している様子を示している。エッジｅ１４ではアドレス誤差Ａｅｒｒの絶対値は予め設定したしきい値２８ｂより小さい値であるが、エッジｅ１５ではしきい値２８ｂを超えたため、位相誤差過大信号２８ａが'Ｈ'に変化している。位相誤差過大信号２８ａが'Ｈ'になると論理反転手段２９の出力信号は'Ｌ'になり、論理積手段３０の出力信号も'Ｌ'となる。また、起動時においても起動完了判定手段２７が'Ｌ'を出力するため、論理積手段３０の出力信号は'Ｌ'となる。論理積手段３０の出力信号が'Ｌ'となると、第２のセレクタ２６はインバータ回路１５に伝える電圧指令を、正弦波駆動手段２５の出力する電圧指令から第１の矩形波駆動手段２４の出力に切り替える。すなわち、起動時と、起動完了後においてもアドレス誤差Ａｅｒｒの絶対値がしきい値２８ｂを超えたときには、第２のセレクタ２６はインバータ回路１５に伝える電圧指令として、第１の矩形波駆動手段の出力する電圧指令を選択する。したがって、アドレスＡｕが正しいロータ磁極位置を示さなくなると、通常の矩形波駆動のブラシレスモータとして動作するので回転を維持することができる。位相誤差過大信号２８ａが'Ｈ'となって、矩形波駆動に切り替わると、この一定時間経過後に位相誤差過大検出手段２８は位相誤差過大信号２８ａを'Ｌ'に戻し、正弦波駆動に復帰する。
【０１４８】
以上のように本実施例によれば、位相誤差過大検出手段２８がアドレス誤差Ａｅｒｒの絶対値が予め設定したしきい値２８ｂを超えた場合にこれを検出し位相誤差過大信号２８ａを出力し、このときインバータ回路１５が矩形波通電処理を行うことにより、モータ３に急に外乱トルクが加わる等して、アドレスＡｕが正しいロータ磁極位置を示さなくなっても、回転を維持することができるものである。
【０１４９】
（実施例１２）
モータ３とこれを駆動する回路とを分離して配設する場合には、パルス発生器の数は少ないほどパルス発生器の出力信号線の本数は減りコストを低減できる。少ない数のパルス発生器で前述した第１１の実施例と同じ目的を果たすのが、本第１２の実施例である。
【０１５０】
図２２は本発明の第１２の実施例を示すブロック図である。図２２において、ロータ磁極位置検出回路３１はモータ３の誘起電圧を検出し、これに基づいてロータの磁極位置を検出するものである。第２の矩形波駆動手段３２は、ロータ磁極位置検出回路３１の出力信号に基づいて矩形波駆動を行うための電圧指令を作成し出力するものである。正弦波駆動手段２５はすでに説明した第１から第６の実施例におけるインバータ回路１５を除いた部分に相当するものであり、１個のパルス発生器４Ａの出力パルス信号４ａに基づいて正弦波駆動を行うための電圧指令を作成し出力するものである。第２のセレクタ２６と位相誤差過大検出手段２８は第１１の実施例で説明したものと同様である。この他の構成は第６および第９の実施例と同様である。
【０１５１】
この構成における動作を説明する。通常時は、第２のセレクタ２６は正弦波駆動手段２５の出力する電圧指令を選択してインバータ回路１５に伝え、正弦波駆動を行う。ここで第１１の実施例で説明したように、モータ３に急に外乱が加わる等してアドレス誤差Ａｅｒｒの絶対値がしきい値２８ｂを超えると、位相誤差過大検出手段２８は位相誤差過大信号２８ａを'Ｈ'にするため、第２のセレクタ２６は切り替え操作を行い、インバータ回路１５に対して第２の矩形波駆動手段３２が出力する電圧指令を伝えるようになる。この第２の矩形波駆動手段３２はロータ磁極位置検出回路３１からの入力信号に基づいて、１２０度通電矩形波駆動を行う。このロータ磁極位置検出回路３１はインバータ回路１５の出力、すなわちモータ３の巻き線の電圧を入力としてモータ３の誘起電圧を検出するものである。第２の矩形波駆動手段３２が行う１２０度矩形波通電では１周期（電気角３６０度）あたり２回、電気角６０度のインバータ回路１５のパワートランジスタが上下アーム同時にＯＦＦとなる期間があり、この期間にモータ３の誘起電圧を検出することができる。このことを利用してロータ磁極位置検出回路３１は、例えば３つの入力信号をフィルタにより積分処理して、積分処理後の信号の１つを他の２つの信号の分圧電位と比較する等してロータ磁極位置検出信号を作成する。したがって、アドレスＡｕが正しいロータ磁極位置を示さなくなると、モータ３の誘起電圧を利用したロータ磁極位置検出による矩形波駆動のブラシレスモータとして動作するので回転を維持することができる。位相誤差過大信号２８ａが'Ｈ'となって、矩形波駆動に切り替わると、この一定時間経過後に位相誤差過大検出手段２８は位相誤差過大信号２８ａを'Ｌ'に戻し、正弦波駆動に復帰する。
【０１５２】
以上のように本実施例によれば、位相誤差過大検出手段２８がアドレス誤差Ａｅｒｒの絶対値が予め設定したしきい値２８ｂを超えた場合にこれを検出して位相誤差過大信号２８ａを出力し、ロータ磁極位置検出回路３１がモータ３の誘起電圧からロータの磁極位置を検出した信号に基づきインバータ回路１５が矩形波通電処理を行うことにより、モータ３に急に外乱トルクが加わる等してアドレスＡｕが正しいロータ磁極位置を示さなくなっても、回転を維持することができる。さらに、パルス発生器の数を１個で構成できるため、パルス発生器の出力信号線の本数が減りコストを低減できるものである。
【０１５３】
なお、正弦波駆動から矩形波駆動に切り替える際に一時的にインバータ回路１５のパワートランジスタをすべてＯＦＦにする、いわゆるフリーラン状態とする期間を設けてもよい。このようにすれば、ロータ磁極位置検出回路３１が確実にモータ３の誘起電圧を検出できるので、円滑に矩形波駆動に移行することができる。
【０１５４】
（実施例１３）
第９および第１２の実施例ではアドレス誤差Ａｅｒｒがパルス発生器４Ａの出力パルス信号４ａのエッジ毎にしか更新されないので、急にモータ３の回転数が低下して次のエッジが検出されるまでの時間が長くなってしまった場合には、アドレスＡｕに生じる誤差は増大していくにも関わらず、次のエッジが検出されるまで矩形波駆動に切り替えることができないことから、一時的に不安定な動作をする場合がある。この問題を解決するのが本第１３の実施例である。
【０１５５】
本第１３の実施例のブロック図は第１１の実施例のブロック図を示す図２０、または、第１２の実施例のブロック図を示す図２２と同様であるが、位相誤差過大検出手段２８の内部の構成が異なっており、図２３のタイムチャートに示す動作を合わせ持つ構成となっている。
【０１５６】
図２３において、アドレス差分Ａｄｉｆは現在のアドレスＡｕからパルス信号４ａの立ち上がりエッジが示す基準アドレス値Ａｒｅｆである００Ｈを差し引いたものである。但し、アドレスＡｕが正しいロータ磁極位置を示しているときの、パルス信号４ａのエッジ間の周期に相当するアドレス量１００Ｈを超える量をもカウントできるように、カウントビット幅はアドレスＡｕよりも多く確保している。
【０１５７】
これより動作を順を追って説明する。まず、パルス信号４ａのエッジｅ１６においてはアドレスＡｕに誤差は無いが、アドレスカウンタ９のカウント速度が速く、次のエッジｅ１７を検出する前にアドレスＡｕはオーバーフローしている。基準アドレス値Ａｒｅｆが００Ｈなのでアドレス差分ＡｄｉｆはアドレスＡｕと同じ値を示すが、アドレスＡｕがオーバーフローした場合には、アドレスＡｕが桁上がりしたものと見なしてアドレス差分Ａｄｉｆの演算を行うため、アドレス差分ＡｄｉｆはアドレスＡｕの最大値であるＦＦＨを超えてカウントを続ける。次の新しいエッジであるエッジｅ１７を検出すると、処理は最初に戻り、現在のアドレスＡｕから基準アドレス値００Ｈを差し引いたものをアドレス差分Ａｄｉｆとする。この後も引き続き同じ動作を行うが、次のエッジｅ１８の来るタイミングが遅いためにアドレスＡｕに生じる誤差は大きくなっていくが、エッジｅ１８が来る前のｐ１のタイミングでアドレス差分Ａｄｉｆの値は予め設定したしきい値２８ｃを超える。アドレス差分Ａｄｉｆがしきい値２８ｃを超えると、位相誤差過大検出手段２８は位相誤差過大信号２８ａを'Ｈ'にするため、第２のセレクタ２６は切り替え操作を行い、正弦波駆動から矩形波駆動に切り替わる。したがって、次のエッジｅ１８の検出を待たずに、アドレスＡｕに生じた誤差が一定値を越えたことを検出し、矩形波駆動に切り替えることができる。
【０１５８】
この動作の中で、アドレス差分ＡｄｉｆはアドレスＡｕが進み過ぎていることを検出するのに使用している。よって、アドレスＡｕのカウントが遅れていて、エッジ時点でアドレス差分Ａｄｉｆが８０ＨからＦＦＨまでの値であった時には、この遅れ分を打ち消すため、アドレス差分Ａｄｉｆが１００Ｈになった時にアドレス差分Ａｄｉｆを０００Ｈにリセットする。また、モータ３が逆転駆動も行う場合には、アドレスＡｕの値は時間の経過に伴い減少するので、アドレス差分Ａｄｉｆの絶対値としきい値２８ｃの比較で位相誤差過大を判定するようにする。
【０１５９】
以上のように本実施例によれば、位相誤差過大検出手段２８がアドレスＡｕから基準アドレス値Ａｒｅｆを減算したアドレス差分Ａｄｉｆが予め設定した値２８ｃを超えた場合に、これを検出して位相誤差過大信号２８ａを出力し、インバータ回路１５が矩形波通電処理に切り替えるため、モータ３に急に外乱トルクが加わる等した場合でも安定した回転を維持することができるものである。
【０１６０】
なお、１個のパルス発生器４Ａの出力パルス信号４ａに基づいた説明をしたのは、理解し易くするためであって、第１１の実施例のように複数のパルス発生器を備える場合には、この複数のパルス発生器から得られる複数のエッジタイミング毎に一連の動作を行えば、アドレス差分Ａｄｉｆをカウントするビット幅は少なくて済み、構成及び演算が簡単にできる。
【０１６１】
（実施例１４）
図２４は第１４の実施例を表すブロック図である。図２４において、パルス発生器４Ａと第１のエッジ検出手段１０はすでに説明したものと同じものである。周期カウンタ３３はパルス発生器４Ａが出力するパルス信号４ａの立ち上がりエッジ間の周期を測定するカウンタであり、周期データラッチ３４は周期カウンタ３３の周期カウントデータ３３ａを第１のエッジ検出手段１０の出力タイミング毎に読み込み保持するものである。許容周期範囲設定手段３５は周期データラッチ３４の出力に基づいて、周期カウンタ３３が測定する周期の許容範囲を設定するもので、周期上限値３５ａと周期下限値３５ｂを出力する。周期急変検出手段３６は周期カウンタ３３の周期カウントデータ３３ａが周期上限値３５ａを超えたとき、もしくは、周期下限値３５ｂに至る以前にパルス信号４ａの立ち上がりエッジを検出したときに周期急変信号３６ａを出力するものである。この他の構成は第８，第９，第１０，第１３の実施例と同様であり、周期急変信号３６ａは第２のセレクタ２６に伝えられ、周期急変信号３６ａが'Ｌ'から'Ｈ'になると正弦波駆動から矩形波駆動に切り替わる構成となっている。
【０１６２】
図２５はモータ３に急に外乱が作用する等して、パルス信号４ａの周期が急に長くなった時の動作を示すものである。パルス信号４ａの立ち上がりエッジを検出すると、周期カウンタ３３が出力する周期カウントデータ３３ａを周期データラッチ３４に保持させて、周期カウンタ３３をリセットする。許容周期範囲設定手段３５はこの周期データラッチ３４の保持するデータに基づいて周期上限値３５ａを設定する。例えば、周期データラッチ３４の保持するデータに予め設定しておいた値を加算あるいは、乗算する等して周期上限値３５ａを設定する。パルス信号４ａの新しい立ち上がりエッジを検出する毎にこの動作を繰り返し行う。エッジｅ１９からエッジｅ２０までの期間では、周期カウントデータ３３ａは周期上限値３５ａより小さな値をとっているが、次のエッジｅ２０からエッジｅ２１までの期間は周期が急に長くなったため、ｐ２のタイミングで周期カウントデータ３３ａが周期上限値３５ａを超え、これにより、周期急変信号３６ａが'Ｌ'から'Ｈ'に変化している。周期急変信号３６ａは第２のセレクタ２６に伝えられ、周期急変信号３６ａが'Ｌ'から'Ｈ'になると、インバータ回路１５は正弦波駆動から矩形波駆動に動作が切り替わる。
【０１６３】
図２６は図２５とは逆に、パルス信号４ａの周期が急に短くなった時の動作を示すものである。許容周期範囲設定手段３５は周期上限値３５ａを設定すると同時に、周期データラッチ３４の保持するデータに基づき周期下限値３５ｂも設定する。例えば、周期データラッチ３４の保持するデータから予め設定しておいた値を減算あるいは、除算する等して周期上限値３５ａを設定する。エッジｅ２２からエッジｅ２３までの期間では、エッジｅ２３が来る前に周期カウントデータ３３ａは周期下限値３５ｂを超えるが、次のエッジｅ２３からエッジｅ２４までの期間は周期が急に短くなったため、エッジｅ２４が来た時点で周期カウントデータ３３ａは周期下限値３５ｂに達しておらず、これにより、周期急変信号３６ａが'Ｌ'から'Ｈ'に変化している。このとき、パルス信号４ａの周期が急に長くなった場合と同様に、インバータ回路１５は正弦波駆動から矩形波駆動に動作が切り替わる。
【０１６４】
これまでの実施例で既に説明したとおり、アドレスカウンタ９のカウント速度は、パルス信号４ａのエッジ間の周期に基づいて作成している。よって、パルス信号４ａの周期が急に大きく変動すると、アドレスＡｕに生じる誤差は当然大きくなる。本第１４の実施例は、パルス信号４ａの周期が急に大きく変化したことを検出することで、アドレスＡｕに生じる誤差が過大となることを予測し、正弦波駆動から矩形波駆動に切り替えて回転を維持するものである。周期急変信号３６ａが'Ｈ'となって、矩形波駆動に切り替わると、この一定時間経過後に周期急変検出手段３６は周期急変信号３６ａを'Ｌ'に戻し、正弦波駆動への復帰を行う。
【０１６５】
以上のように本実施例によれば、周期カウンタ３３が計測したパルス信号４ａの周期データに基づき、許容周期範囲設定手段３５が次回計測される周期データの許容範囲として周期上限値３５ａと周期下限値３５ｂを設定し、周期カウントデータ３３ａが周期上限値３５ａを超過した場合、もしくは、周期下限値３５ｂに至る以前にパルス信号４ａの立ち上がりエッジを検出した場合に周期急変信号３６ａを出力し、インバータ回路１５が矩形波通電処理に動作を切り替えるため、モータ３に急に外乱トルクが加わる等した場合でも安定した回転を維持することができるものである。
【０１６６】
（実施例１５）
図２７は第１５の実施例を表すブロック図である。図２７において、駆動モード切替制御手段４４は、駆動モード切替信号４５とロータ位置検出手段４の出力パルス信号４ａ，４ｂ，４ｃを入力として処理を行い、第２のセレクタ２６に駆動モード切替信号４７ａを、また正弦波駆動手段２５にアドレスプリセット信号４８ａを出力するものであり、内部にパルス信号４ａ，４ｂ，４ｃのエッジを検出する第２のエッジ検出手段４６と駆動モード切替信号４７ａを作成する切替タイミング制御手段４７とアドレスプリセット信号４８ａを作成するアドレスプリセット制御手段４８とを包含する。この他の構成は第１１の実施例で示した図２０とほぼ同様であり、図２０における論理積手段３０の出力信号が本図２７の駆動モード切替信号４５に相当する。この駆動モード切替信号４５を作成する構成要素については省略している。
【０１６７】
この構成において、起動時または位相誤差過大発生時において矩形波通電処理を実施している状態から、通常の波形データメモリ１２の内容に従い通電する正弦波駆動処理に移行するため、駆動モード切替信号４５が変化すると、駆動モード切替制御手段４４はこの信号をすぐに第２のセレクタ２６に伝えるのではなく、内部の切替タイミング制御手段４７が第２のエッジ検出手段４６からのエッジ検出信号４６ａが得られるまで遅延処理を行うことにより、パルス信号４ａ，４ｂ，４ｃのエッジタイミングで第２のセレクタ２６に伝える。このとき同時に、アドレスプリセット制御手段４８が、このエッジに対応した基準アドレス値Ａｒｅｆをアドレスプリセット信号４８ａとして正弦波駆動手段２５に出力し、この基準アドレス値Ａｒｅｆが正弦波駆動手段２５内部のアドレスカウンタ９にプリセットされる。そして、第２のセレクタ２６が駆動モードを切り替え矩形波駆動から正弦波駆動に移行する。すなわち、駆動モード切替信号４５が正弦波駆動を指令するとパルス信号４ａ，４ｂ，４ｃのエッジを検出するまで待った後に、このエッジに対応した基準アドレス値Ａｒｅｆを正弦波駆動手段２５内のアドレスカウンタ９にプリセットし、正弦波駆動に切り替わる。駆動モード切替制御手段４４が以上の動作を行うのは、矩形波駆動から正弦波駆動に移行する際であり、逆に、正弦波駆動から矩形波駆動に移行する際には駆動モード切替信号４５はそのままのタイミングで第２のセレクタ２６に伝えられ、アドレスプリセット信号４８ａは出力されない。したがって、駆動モード切替信号４５が矩形波駆動を指令すると直ちに矩形波駆動に切り替わる。
【０１６８】
図２８は矩形波駆動から正弦波駆動に切り替わる際の動作を示すタイムチャートである。パルス信号４ａ，４ｂ，４ｃの状態に基づいて矩形波駆動を行っている時に、タイミングｐ１０１にて駆動モード切替信号４５が'Ｌ'から'Ｈ'に変化し正弦波駆動を指令する。すると、前述した起動モード切替制御手段４４の作用によりパルス信号４ａ，４ｂ，４ｃのいずれかのエッジ、すなわち、本図ではパルス信号４ａのエッジが得られたタイミングｐ１０２で駆動モード切替信号４７ａが'Ｌ'から'Ｈ'に変化し正弦波駆動に切り替わる。このとき同時に基準アドレス値Ａｒｅｆが正弦波駆動手段２５内のアドレスカウンタ９にプリセットされるので、この切り替え時点においてアドレスＡｕに誤差は無く、アドレスＡｕは正しいロータ位置を示す。
【０１６９】
以上で説明した本実施例の構成をとらず、任意のタイミングで矩形波から正弦波に切り替えた際には切り替え時点でのアドレスＡｕに大きな誤差が生じる場合がある。これは、負荷トルクの変動や外乱トルク等により、パルス信号４ａ，４ｂ，４ｃのエッジとエッジの間の期間においては、必ずしもアドレスカウンタ９の出力するアドレスＡｕが正しいロータ位置を示しているとは限らないためである。また、特にソフトウェアで構成した場合等において処理時間を削減する等の目的で、第１の矩形波駆動手段２４と正弦波駆動手段２５は、いずれか一方しか動作を行わない場合がある。このような場合では、矩形波駆動時には正弦波駆動手段２５は動作が停止しているため、アドレスＡｕは正しいロータ位置を示していない。よって、矩形波駆動に切り替える時に、現在のパルス信号４ａ，４ｂ，４ｃの状態から大まかなロータ位置を示すアドレス値を求め、これをアドレスカウンタ９にプリセットしてから切り替えることになる。このような場合では、切り替え時のアドレス誤差はさらに大きな値となる。アドレスＡｕに大きな誤差が生じている状態で矩形波から正弦波に切り替えると、切り替え時点で十分な駆動トルクが得られず回転数に変動をきたす場合があり、安定した切り替え動作を行うことができない。これに対し本実施例の構成であれば、切り替え時に基準アドレス値Ａｒｅｆをプリセットするため、アドレスＡｕに誤差は生じない。したがって、最大トルクが得られ円滑な切り替えが可能となる。
【０１７０】
なお、起動時、位相誤差過大時だけに限定するのではなく、一時的に高い出力を得たい等の理由により任意のタイミングで矩形波から正弦波、逆に正弦波から矩形波に駆動を切り替えたい場合などでも本実施例の構成は有効である。
【０１７１】
（実施例１６）
パルス発生器４Ａとしては、例えばホール素子を用いてモータ３のロータの磁極位置を検出する構成が一般的であるが、こうしたものの場合には機械的なホール素子の取り付け精度あるいは素子の特性等によって、パルス発生器４Ａの出力パルス信号４ａのエッジが示すロータ磁極位置にはバラツキが生じ、モータ３の出力トルク、効率に個体差が出る場合がある。この問題を解決するのが本第１６の実施例である。
【０１７２】
本第１６の実施例では、パルス発生器４Ａの出力パルス信号４ａのエッジが示すロータ磁極位置に相当する基準アドレス値Ａｒｅｆは、理想的なパルス信号４ａ０のエッジが示すロータ磁極位置に相当する理想基準アドレス値Ａｒｅｆ０に、任意に変更可能なるオフセットアドレス値Ａｏｆｓを加算して作成する構成としている。すなわち、基準アドレス値Ａｒｅｆは、Ａｒｅｆ＝Ａｒｅｆ０＋Ａｏｆｓの関係式で表される。オフセットアドレス値Ａｏｆｓが任意に変更可能としているので、結果的に基準アドレス値Ａｒｅｆは任意に変更可能なるものとなる。
【０１７３】
図２９は第１６の実施例の動作を示すタイムチャートである。理想的なパルス信号４ａ０の立ち上がりエッジに対応する理想基準アドレス値Ａｒｅｆ０が００Ｈである場合を表している。理想的なパルス信号４ａ０に対して、実際のパルス信号４ａはｔｄの遅れを生じている。このため、エッジｅ２６に対応する基準アドレス値Ａｒｅｆを、理想基準アドレス値Ａｒｅｆ０にオフセットアドレス値Ａｏｆｓを加えたもの、すなわち、オフセットアドレス値Ａｏｆｓとすることで、アドレスＡｕが正しくロータ磁極位置を示すようになっている。エッジｅ２５に対するエッジｅ２６の遅れｔｄは、パルス発生器４Ａの機械的な取り付け精度等に起因するものであるから、バラツキが生じる。したがって、モータ３毎にオフセットアドレス値Ａｏｆｓを適切な値に設定することにより、最大の出力トルク及び効率が得られるようになる。
【０１７４】
以上のように本実施例によれば、基準アドレス値Ａｒｅｆを理想基準アドレス値Ａｒｅｆ０と、任意に変更可能なるオフセットアドレス値Ａｏｆｓとを用い、Ａｒｅｆ＝Ａｒｅｆ０＋Ａｏｆｓの関係式で作成することで、基準アドレス値Ａｒｅｆを任意に設定変更可能とし、これにより、パルス発生器４Ａの機械的な取り付け精度等に起因するパルス信号４ａのエッジタイミング誤差を打ち消し、モータ３を最大の出力トルク及び効率で駆動することができるものである。
【０１７５】
なお、オフセットアドレス値ＡｏｆｓはＥＥＰＲＯＭ、フラッシュメモリ等のように、書き換え可能でかつ電源停止時も記憶内容を保持するものに記憶する構成としても良い。オフセットアドレス値Ａｏｆｓをモータ３に合わせて一度最適な値に設定すれば、電源投入毎に再度設定する必要を無くすことができる。
【０１７６】
（実施例１７）
モータ３は誘導性負荷であるためインバータ回路１５が電流制御を行わない構成とした場合には、相出力指令値Ｖｕ，Ｖｖ，Ｖｗに対してモータ３の相電流には位相遅れが生じる。モータ３の回転数が高いほど周波数が高くなるので、この位相遅れは大きな値となり、回転数の上昇につれて十分な出力トルクが得られなくなってしまう。この問題を解決するのが本第１７の実施例である。
【０１７７】
本第１７の実施例では、基準アドレス値Ａｒｅｆは、理想的なパルス信号４ａ０のエッジに対応する理想基準アドレス値Ａｒｅｆ０に、任意に変更可能なるオフセットアドレス値Ａｏｆｓと、回転周波数検出手段８が出力する回転周波数信号Ｆｓｅｎに基づいて決定する可変アドレス値Ａｖａｒとを加算して作成する構成としている。すなわち、基準アドレス値Ａｒｅｆは、Ａｒｅｆ＝Ａｒｅｆ０＋Ａｏｆｓ＋Ａｖａｒの関係式で表される。前述した第１６の実施例と異なるのは、この関係式の右辺第３項に可変アドレス値Ａｖａｒが存在する点である。
【０１７８】
オフセットアドレス値Ａｏｆｓは第１６の実施例で述べたとおり、パルス発生器４Ａの機械的な取り付け精度等に起因するパルス信号４ａのエッジタイミング誤差を打ち消すものであり、モータ３の駆動中は変化しないが、可変アドレス値Ａｖａｒは回転周波数信号Ｆｓｅｎに基づいて動的に変化する。図３０は回転周波数信号Ｆｓｅｎと可変アドレス値Ａｖａｒの関係の一例を表したグラフである。このグラフが示す関係により、モータ３の回転数が上昇すると基準アドレス値Ａｒｅｆは大きな値となり、インバータ回路１５への電圧指令値となる相出力指令値Ｖｕ，Ｖｖ，Ｖｗの位相は進む。したがって、モータ３に印加する電圧の位相は進むが、電流の位相はこれより遅れて適切な位相関係となり、所望の出力トルクが得られる。
【０１７９】
モータ３は誘起電圧と電流の位相が一致したときに出力トルク、効率共に最大値が得られる。この位相関係が得られるように、モータ３に印加する電圧の位相を基準アドレス値Ａｒｅｆを変化させることによって適切に設定するのであって、回転周波数信号Ｆｓｅｎと可変アドレス値Ａｖａｒの関係は図３０で示した直線的なグラフに限定されるものではなく、曲線関係であって構わない。また、モータ３の電流の位相遅れ量は、回転数だけに依存して変化するものでは無く、例えば電流の大きさによっても変化する。したがって、電流検出器を設けて、電流の大きさも考慮して可変アドレス値Ａｖａｒを設定するのが、より望ましい構成である。
【０１８０】
以上のように本実施例によれば、基準アドレス値Ａｒｅｆを理想基準アドレス値Ａｒｅｆ０と、任意に変更可能なるオフセットアドレス値Ａｏｆｓと、回転周波数信号Ｆｓｅｎ、または、モータ３の電流値に基づいて決定する可変アドレス値Ａｖａｒとを用い、Ａｒｅｆ＝Ａｒｅｆ０＋Ａｏｆｓ＋Ａｖａｒの関係式で作成することにより、前述した第１６の実施例の効果に加えて、モータ３の電流位相の遅れを打ち消す位相進め処理を容易に行うことができ、所望の出力トルクを得ることができる。
【０１８１】
また、本実施例の構成をとれば、基準アドレス値Ａｒｅｆを操作することでモータ３の駆動中に電流位相を自在に変化させることができるので、極めて容易に出力トルクを制御できる。したがって、単に効率を高める目的にとどまらず、例えば、回転周波数信号Ｆｓｅｎと可変アドレス値Ａｖａｒの関係を変更することにより、ある回転数より高い領域では位相をずらせて出力トルクを減少させ、回生電力の発生を防止することもできる。モータ３の用途がファン駆動でなおかつ室外に設置されるものの場合には、強風などを受けて通電中にモータ３の回転方向と同じ方向の強い外力が作用することがあるが、このときモータ３に印加する電圧より誘起電圧の方が上回ると回生電力が発生する。一般的な構成であるインバータ回路１５に電力供給する直流電源が交流電源を整流平滑したコンデンサインプット型の場合などでは、モータ３から回生電力が返るとエネルギが蓄積して電圧が上昇し、構成部品の耐圧を超えてしまうなどの問題が生じる。このため、回生電力の発生を防止することは重要な課題であったが、本実施例の構成をとれば容易に回避することができる。電流の位相をずらすと効率が低下しモータ３は発熱するが、回生電力は発生しない。この場合のモータ３の発熱は、強風を受けて十分に冷却されるので問題とならない。このように、本実施例はモータ３の駆動中に電流位相の変更を容易に行えるため、効率向上目的に限定されない利用用途の多いものである。
【０１８２】
なお、回転周波数検出手段８を備えない構成とする場合は、周波数指令Ｆｒｅｆに基づ
いて可変アドレス値Ａｖａｒを決定する構成でも良い。通常状態では回転周波数Ｆｓｅｎと周波数指令Ｆｒｅｆに大きな差はないので、代用することができる。
【０１８３】
（実施例１８）
以上に説明した実施例の中で、構成要素に回転周波数検出手段８を備えるものでは、ロータの着磁精度、パルス発生器４Ａの特性及び機械的な取り付け精度等に起因して、モータ３が一定回転数でムラ無く回転していても出力パルス信号４ａの周期に揺らぎが生じ回転周波数信号Ｆｓｅｎに誤差が生じることがある。この問題を解決するのが本第１８の実施例である。
【０１８４】
図３１は本第１８の実施例のブロック図を示すものである。図３１において、パルス発生器４Ａと第１のエッジ検出手段１０と周期カウンタ３３は、すでに説明したものと同様である。第１の周期データメモリ３７は周期カウンタ３３の周期カウントデータ３３ａを、第１のエッジ検出手段１０の出力タイミング毎に読み込み記憶するものであり、第２の周期データメモリ３８は第１の周期データメモリ３７の記憶するデータを、第１のエッジ検出手段１０の出力タイミング毎に読み込み記憶するものである。１回転周期データ演算手段３９は第１の周期データメモリ３７が記憶するデータと第２の周期データメモリ３８が記憶するデータを加算して、これを回転周波数検出手段８に伝えるものである。なお、図示していないが、例としてモータ３の極数は４極としている。この他の構成はすでに説明した実施例と同様である。
【０１８５】
第１のエッジ検出手段１０がパルス信号４ａの立ち上がりエッジを検出すると、第１の周期データメモリ３７のデータを第２の周期データメモリ３８に移動し、同時に周期カウンタ３３が測定したパルス信号４ａのエッジ間の周期データを、第１の周期データメモリ３７に記憶する。よって、最も新しいパルス信号４ａのエッジ間の周期データを第１の周期データメモリ３７が、その１つ前のエッジ間の周期データを第２の周期データメモリ３８がそれぞれ記憶することになる。１回転周期データ演算手段３９は第１の周期データメモリ３７のデータと第２の周期データメモリ３８のデータを加算して出力する。モータ３の極数が４極の場合にはモータ３が１回転したときパルス信号４ａは２周期出力される。したがって、１回転周期データ演算手段３９の出力するデータはモータ３の１回転に相当する最新の周期データを示すものとなる。回転周波数検出手段８はこのモータ３の１回転に相当する周期データに基づいて回転周波数Ｆｓｅｎを作成し出力する。
【０１８６】
図３２はこの動作を示すタイムチャートである。図３２において、Ｓｎ１，Ｓｎ２，Ｓｎ３は１回転周期データ演算手段３９の出力する周期データを表したものである。この周期データはパルス信号４ａのその時点における最新のエッジ間周期データと、この１つ前の周期データを加算したものであり、例えばＳｎ１は、Ｓｎ１＝Ｔｎ０＋Ｔｎ１の関係式で表される。
【０１８７】
モータ３が一定回転数でムラ無く回転していてもロータの着磁精度，パルス発生器４Ａの特性及び機械的な取り付け精度等が原因で、パルス信号４ａのエッジ間周期は一定にはならない。例えば、エッジ間周期Ｔｎ０とＴｎ１とは等しくならない。しかし、エッジｅｎ０とエッジｅｎ２、また、エッジｅｎ１とエッジｅｎ３のようにパルス信号４ａの１つおきの立ち上がりエッジは、モータ３が４極なのでロータの同じ磁極変化点をパルス発生器４Ａが検出して得られたものであるから、エッジｅｎ０からエッジｅｎ２までの周期であるＳｎ１や、エッジｅｎ１からエッジｅｎ３までの周期であるＳｎ２のように、モータ３の１回転に相当する周期は一定となる。この１回転に相当する周期に基づいて回転周波数Ｆｓｅｎを作成し制御を行うので、ロータの着磁精度やパルス発生器４Ａの特性に影響されることなく、安定した動作を行うことができる。
【０１８８】
以上のように本実施例によれば、第１の周期データメモリ３７と第２の周期データメモリ３８がそれぞれ記憶した最新の周期データと１つ前の周期データを１回転周期データ演算手段３９が加算し、この加算して得られたモータ３の１回転に相当する周期に基づいて回転周波数Ｆｓｅｎを作成し制御を行う。このためロータの着磁精度やパルス発生器４Ａの特性及び機械的な取り付け精度等に影響されること無く、高い精度で回転周波数Ｆｓｅｎが得られ、安定した正弦波駆動を行うことができるものである。
【０１８９】
なお、説明を理解し易くするため１個のパルス発生器の出力パルス信号４ａにて説明したが、これは当然複数備えた構成でも良く、この場合でも同様にモータ３の１回転分の周期において得られるエッジ数の周期データメモリを備えて、この周期データメモリの内容を加算して１回転に相当する周期を作成する構成とすれば良い。検出するエッジの数が増す分、回転周波数Ｆｓｅｎの更新周期が短くなり、より早く回転数の変化が検出されるので制御特性を向上することができる。
【０１９０】
（実施例１９）
以上に示した実施例ではブラシレスモータの駆動装置の構成について述べたが、アドレスカウンタ９の出力アドレスＡｕが現在のロータ位置を表すものであることから、これまでの実施例に示したブラシレスモータの駆動装置の構成主要部をロータ位置検出装置として見ることができ、駆動の目的以外にも幅広く応用することができる。さらに、パルス発生器４Ａをロータの磁極位置を検出するのではなく、ロータのある特定の部位を検出するものとすれば、ブラシレスモータのみならず例えばロータに磁石を有さないリラクタンスモータ、インダクションモータ等にも幅広く使用することができる。すなわち、一般のモータのロータ位置検出装置として広く応用することができる。
【０１９１】
図３３はこのようなモータのロータ位置検出装置としての一実施例を示すものであり、ロータが所定の位置にある時に所定の制御処理を行うのに用いた例を表したものである。図３３（ａ）は、前述した第４の実施例の構成の一部を用いた構成例を示しており、構成要素は既に第４の実施例で説明したものと同様である。但し、パルス発生器４Ａはロータのある特定の部位を検出するものとしている。例えば、モータ３がブラシレスモータの場合にはこれまでの実施例で説明したのと同様に、ロータの磁極位置を検出するホール素子等がこれに利用でき、また、モータ３がリラクタンスモータである場合にはロータの磁気抵抗の変化を利用して検出するものが利用できる。あるいは、モータ３にエンコーダを取り付けることにより構成することも可能である。
【０１９２】
この構成により、アドレスカウンタ９の出力アドレスＡｕは既に説明した実施例と同様に、ロータ位置を示すように動作する。そして、図３３（ｂ）のフローチャートに示した動作を周期的に繰り返し行うことにより、アドレスＡｕの値がＣである時、すなわちロータ位置がこのアドレス値Ｃに対応した位置にあるときに処理Ｒを行うように動作する。この処理Ｒの内容は任意である。つまり、アドレスカウンタ９の出力アドレスＡｕからロータ位置が検出でき、このことを利用してモータ３の駆動処理だけでなく任意の処理を行うことができる。本実施例のロータ位置検出装置は、簡単な構成のパルス発生器４Ａを用いながら構成の大半をソフトウェアで実現できるため低コスト、かつ、高精度である等、これまでに述べた実施例におけるブラシレスモータの駆動装置が持つ効果とほぼ同様の効果を有する。
【０１９３】
なお、図３３（ａ）では、第４の実施例の一部を用いた構成としているが、第１、第２、第３、第５、第６の実施例の一部を用い、そのアドレスカウンタ９の出力アドレスＡｕを取り出す構成であっても当然構わない。それぞれのブラシレスモータの駆動装置の構成が有する特徴的な効果は、ロータ位置検出装置の構成としてもそのまま現れる。
【０１９４】
また、第７の実施例で説明した周波数指令補正手段４２を設ければ、モータ３の速度が変化している際にもロータ位置を正しく検出することができ、検出安定性を高めることができる。
【０１９５】
また、第１１の実施例、第１３の実施例で説明した位相誤差過大検出手段２８、および第１４の実施例で説明した周期急変検出手段３６を設け、これらの出力で例えばフラグをセットするようにすれば、このフラグを見て現在のアドレスＡｕがロータ位置を正しく示しているか否かの確認をすることができる。よって、フラグがセットされていれば処理内容を変更する構成とすれば、検出誤差に起因して処理が不安定になることを防止することができる。
【０１９６】
また、第１６の実施例、第１７の実施例で説明したように、基準アドレス値Ａｒｅｆは任意に設定変更可能なる値としたり、あるいは任意に設定変更可能なる値と、モータ３の回転数、もしくは電流値に基づき駆動中に動的に変化する値との和とすれば、パルス発生器４Ａの機械的な取り付け精度等に起因するパルス信号４ａのエッジタイミング誤差を打ち消し、位置検出精度の向上を図ることができる。また、ロータ位置検出値をモータの駆動処理に用いる場合には、位相調整処理を容易に行うことができる。
【０１９７】
また、第１８の実施例で説明したように、回転周波数検出手段８を有する構成とした場合には１回転周期データ演算手段３９を設け、回転周波数検出手段８は１回転周期データに基づき回転周波数Ｆｓｅｎを作成する構成とすれば、パルス発生器４Ａの特性及び機械的な取り付け精度等に影響されること無く、高い精度で回転周波数Ｆｓｅｎが得られ、ロータ位置検出精度を向上させることができる。
【０１９８】
【発明の効果】
以上に示した実施例から明らかなようにように、請求項１記載の発明によれば、ロータ位置検出手段の信号出力時に、そのロータ位置に相当する基準アドレス値と現在のアドレス値との差に制御ゲインを乗じる演算に基づいて出力信号に応じて前記アドレスカウンタのカウント速度を調整することにより、前記アドレスカウンタの出力するアドレスがロータ位置に追従し、この高い分解能を有するアドレスカウンタの出力するアドレスを用いて、波形データメモリに書き込んだ任意の波形でモータを駆動することができるため、騒音，振動の低減を図ることができる。
【０１９９】
また、請求項２記載の発明によれば、第１の出力周波数調整手段が基準アドレス値から現在のアドレス値を減算した差分と制御ゲインとの積に、回転周波数を加算した結果を周波数指令として出力し、この周波数指令でもってアドレスカウンタがカウント動作するため、アドレスを急変させること無く正しいロータ磁極位置を示すように修正していくことができる。これにより、相出力指令値が滑らかになり出力トルクの乱れが少なくなって、騒音，振動の低減を図ることができる。
【０２００】
また、請求項３記載の発明によれば、第２の出力周波数調整手段が基準アドレス値から現在のアドレス値を減算した差分と制御ゲインとの積に、現在の周波数指令を加算した結果を新たな周波数指令として出力し、この周波数指令でもってアドレスカウンタがカウント動作するため、アドレスを急変させること無く正しいロータ磁極位置を示すように修正していくことができる。これにより、相出力指令値が滑らかになり出力トルクの乱れが少なくなって、騒音，振動の低減を図ることができるものである。また、構成要素に回転周波数検出手段を必要としないため構成を簡単にすることができると共に、回転周波数検出時の検出誤差による制御の不安定要素を排除することができる。
【０２０１】
また、請求項４記載の発明によれば、第３の周波数調整手段が基準アドレス値から現在
のアドレス値を減算した差分と回転周波数と制御ゲインとの積に、回転周波数を加算した結果を周波数指令として出力し、この周波数指令でもってアドレスカウンタがカウント動作するため、基準アドレス値から現在のアドレス値を減算した差分に応じて回転周波数を加減する操作量が回転周波数に比例し、モータの回転数の大きさに関わらず同じ位相追従性を示す安定した制御を行うことができる。
【０２０２】
また、請求項５記載の発明によれば、第４の周波数調整手段が基準アドレス値から現在のアドレス値を減算した差分と現在の周波数指令値と制御ゲインとの積に、現在の周波数指令値を加算した結果を新たな周波数指令として出力し、この周波数指令でもってアドレスカウンタがカウント動作するため、基準アドレス値から現在のアドレス値を減算した差分に応じて現在の周波数指令値を加減する操作量が現在の周波数指令値に比例し、モータの回転数の大きさに関わらず同じ位相追従性を示す安定した制御を行うことができる。
【０２０３】
また、請求項６記載の発明によれば、第５の周波数調整手段がパルス発生器の出力信号のエッジを検出する毎に、アドレス誤差と波形の単位周期に相当する単位アドレス長との和を分子とし、かつ前記単位アドレス長から前記アドレス誤差を減算した値と前回のアドレス誤差とを加算した値をもって分母とした分数値と、制御ゲインと、現在の周波数指令とを乗算した値を新たな周波数指令として出力し、この周波数指令値に比例した速度でアドレスカウンタがカウント動作するため、周波数の調整に際して前回のアドレス誤差も考慮することにより、構成要素に回転周波数検出手段を必要とせず、かつ、回転周波数の大きさ及び前回のアドレス誤差量に関わらず安定したアドレス誤差修正を行うことができる。
【０２０４】
また、請求項７記載の発明によれば、モータの加速度に基づく値を周波数指令値に加算して周波数指令値を補正する周波数指令補正手段を備えることにより、モータの速度が変化した場合でもその変化に応じて周波数指令値が補正されるため、安定したアドレス誤差修正を行うことができる。
【０２０５】
また、請求項８記載の発明によれば、モータを起動する際に、時間の経過に伴い徐々に上昇する周波数値をアドレスカウンタに指令する構成としたことにより、安定した起動を行うことができ、加えて、請求項９記載の発明のように、モータを起動する際の通電開始時に周波数がゼロの直流通電期間を設けた場合には、ロータの磁極位置が特定の位置に定まり、停止時のロータ磁極位置に関わらず安定した起動を行うことができる。
【０２０６】
また、請求項１０記載の発明によれば、位相誤差過大検出手段が基準アドレス値から現在のアドレス値を減算した差分の絶対値が、予め設定した値を超えた場合にこれを検出し位相誤差過大信号を出力し、このとき矩形波通電処理を行うことにより、モータに急に外乱トルクが加わる等して、アドレスが正しいロータ磁極位置を示さなくなっても回転を維持することができる。
【０２０７】
また、請求項１１記載の発明によれば、位相誤差過大検出手段が基準アドレス値から現在のアドレス値を減算した差分の絶対値が、予め設定した値を超えた場合にこれを検出して位相誤差過大信号を出力し、ロータ磁極位置検出回路がモータの誘起電圧からロータの磁極位置を検出した信号に基づき矩形波通電処理を行うことにより、モータに急に外乱トルクが加わる等して、アドレスが正しいロータ磁極位置を示さなくなっても、回転を維持することができる。さらに、パルス発生器の数を１個で構成できるため、パルス発生器の出力信号線の本数が減りコストを低減できる。
【０２０８】
また、請求項１２記載の発明によれば、位相誤差過大検出手段がアドレスから基準アドレス値を減算したアドレス差分が予め設定した値を超えた場合に、これを検出して位相誤
差過大信号を出力し矩形波通電処理に切り替えるため、モータに急に外乱トルクが加わる等した場合でも安定した回転を維持することができる。
【０２０９】
また、請求項１３記載の発明によれば、周期カウンタが計測した周期データに基づき、許容周期範囲設定手段が次回計測される周期データの許容範囲を設定し、周期カウンタのカウント値が許容範囲を超過した場合、もしくは、許容範囲に至る以前にパルス発生器の出力信号のエッジを検出した場合に、周期急変信号を出力し矩形波通電処理に動作を切り替えるため、モータに急に外乱トルクが加わる等した場合でも安定した回転を維持することができる。
【０２１０】
また、請求項１４記載の発明によれば、基準アドレス値を任意に設定変更可能としたことにより、機械的な取り付け精度等に起因するパルス発生器の出力信号のエッジタイミング誤差を打ち消し、モータを最大の出力トルク及び効率で駆動することができる。さらにこれに加えて、請求項１８記載の発明のように、基準アドレス値を任意に設定変更可能なる値と、モータの回転数、もしくは電流値に基づき駆動中に動的に変化する値との和とすれば、モータの電流位相の遅れを打ち消す位相進め処理を容易に行うことができ、広い速度範囲および負荷範囲で所望の出力トルクを得ることができる。
【０２１１】
また、請求項１６記載の発明によれば、周期カウンタが計測した過去の周期データを記憶する複数の周期データメモリの内容を読み出し、新旧順にモータの１回転に相当する数量の周期データを加算した周期データを作成し、この１回転に相当する周期データに基づいて回転周波数を作成し制御を行うため、ロータの着磁精度やパルス発生器の特性及び機械的な取り付け精度等に影響されること無く高い精度で回転周波数が得られ、安定した駆動を行うことができる。
【０２１２】
また、請求項１７から請求項２９記載の発明によれば、請求項１から請求項１６記載のブラシレスモータの駆動装置における構成の主要部を用い、モータのロータ位置検出装置として構成したことにより、分解能の低いロータ位置検出手段を用いて低コストでありながらもロータ位置を高分解能で検出することができ、しかも、ブラシレスモータのみならず例えばリラクタンスモータ、インダクションモータ等、極めて広範囲のモータに適用することができる。
【０２１３】
また、すべての請求項の発明において、パルス発生器としてホール素子等を用いた簡単な構成のものが使用でき、また、ハードウェア的に説明した構成要素でも大半はソフトウェアで容易に構成できるため、安価に提供することができる。さらに、駆動波形を正弦波状のみならず波形データメモリに書き込んだ任意の波形で、しかも位相を含めて極めて微細に制御してモータを駆動することができるため、単に低騒音化だけでなく高効率化を図る目的にも使用できる等、応用範囲の広いものである。
【０２１４】
なお、実施例中の説明で理解し易くするために、パルス信号４ａの立ち上がりエッジとアドレスＡｕの００Ｈと相出力波形データＤｕのゼロクロス点のタイミングを一致させているが、言うまでもなく相互の位相関係は任意である。また、モータの相数と極数は３相４極を例に挙げて説明したが、これに限定されずに任意の相数と極数のモータに適用することが可能である。
【図面の簡単な説明】
【図１】  本発明のブラシレスモータの駆動装置における第１の実施例を示すブロック図
【図２】  第１の実施例における動作を示すタイムチャート
【図３】  第１の実施例における動作説明図
【図４】  第１の実施例における動作を示すタイムチャート
【図５】  第２の実施例におけるブロック図
【図６】  第２の実施例における動作を示すタイムチャート
【図７】  第３の実施例におけるブロック図
【図８】  第３の実施例における動作を示すタイムチャート
【図９】  第４の実施例におけるブロック図
【図１０】  第４の実施例における動作を示すタイムチャート
【図１１】  第４の実施例における動作を示すタイムチャート
【図１２】  第５の実施例におけるブロック図
【図１３】  第６の実施例におけるブロック図
【図１４】  第６の実施例における動作を示すタイムチャート
【図１５】  第７の実施例におけるブロック図
【図１６】  第８の実施例におけるブロック図
【図１７】  第８の実施例における動作説明図
【図１８】  第９の実施例における動作説明図
【図１９】  第１０の実施例におけるブロック図
【図２０】  第１１の実施例におけるブロック図
【図２１】  第１１の実施例における動作を示すタイムチャート
【図２２】  第１２の実施例におけるブロック図
【図２３】  第１３の実施例における動作を示すタイムチャート
【図２４】  第１４の実施例におけるブロック図
【図２５】  第１４の実施例における動作を示すタイムチャート
【図２６】  第１４の実施例における動作を示すタイムチャート
【図２７】  第１５の実施例におけるブロック図
【図２８】  第１５の実施例における動作を示すタイムチャート
【図２９】  第１６の実施例における動作を示すタイムチャート
【図３０】  第１７の実施例における動作を説明するグラフ
【図３１】  第１８の実施例におけるブロック図
【図３２】  第１８の実施例における動作説明図
【図３３】  第１９の実施例におけるブロック図
【図３４】  従来のブラシレスモータの駆動装置におけるブロック図
【図３５】  従来のブラシレスモータの駆動装置における動作を示すタイムチャート
【符号の説明】
３  モータ
４  ロータ位置検出手段
４Ａ，４Ｂ，４Ｃ  パルス発生器
８  回転周波数検出手段
９  アドレスカウンタ
１０  第１のエッジ検出手段
１１  アドレス修正手段
１２  波形データメモリ
１３  相出力指令作成手段
１５  インバータ回路
１７  第１の周波数調整手段
１９  第２の周波数調整手段
２０  第３の周波数調整手段
２１  第４の周波数調整手段
２２  周波数上昇手段
２４  第１の矩形波駆動手段
２８  位相誤差過大検出手段
３１  ロータ磁極位置検出回路
３２  第２の矩形波駆動手段
３３  周期カウンタ
３５  許容周期範囲設定手段
３６  周期急変検出手段
３７  第１の周期データメモリ
３８  第２の周期データメモリ
３９  １回転周期データ演算手段
４０  第５の周波数調整手段
４２  周波数指令補正手段
４４  駆動モード切替制御手段
【図１】
0003700305.tif 000002
【図２】
0003700305.tif 000003
【図３】
0003700305.tif 000004
【図４】
0003700305.tif 000005
【図５】
0003700305.tif 000006
【図６】
0003700305.tif 000007
【図７】
0003700305.tif 000008
【図８】
0003700305.tif 000009
【図９】
0003700305.tif 000010
【図１０】
0003700305.tif 000011
【図１１】
0003700305.tif 000012
【図１２】
0003700305.tif 000013
【図１３】
0003700305.tif 000014
【図１４】
0003700305.tif 000015
【図１５】
0003700305.tif 000016
【図１６】
0003700305.tif 000017
【図１７】
0003700305.tif 000018
【図１８】
0003700305.tif 000019
【図１９】
0003700305.tif 000020
【図２０】
0003700305.tif 000021
【図２１】
0003700305.tif 000022
【図２２】
0003700305.tif 000023
【図２３】
0003700305.tif 000024
【図２４】
0003700305.tif 000025
【図２５】
0003700305.tif 000026
【図２６】
0003700305.tif 000027
【図２７】
0003700305.tif 000028
【図２８】
0003700305.tif 000029
【図２９】
0003700305.tif 000030
【図３０】
0003700305.tif 000031
【図３１】
0003700305.tif 000032
【図３２】
0003700305.tif 000033
【図３３】
0003700305.tif 000034
【図３４】
0003700305.tif 000035
【図３５】
0003700305.tif 000036