(57)【特許請求の範囲】
【請求項１】
モータの回転速度に対応した周波数の速度パルスを検出する速度検出手段と、
前記速度検出手段により検出された速度パルスに基づいて、トルク指令データを生成する生成手段と、
前記生成手段により生成されたトルク指令データに応じてＰＷＭ指令信号を生成し、前記モータの駆動を制御するモータ駆動制御手段と、
第１の基準クロックを出力する第１の出力手段と、
第２の基準クロックを出力する第２の出力手段とを備え、
前記生成手段は、
速度誤差データを検出する速度誤差検出手段と、
位相誤差データを検出する位相誤差検出手段と、
前記速度誤差検出手段で検出された速度誤差データと前記位相誤差検出手段で検出された位相誤差データとを加算してトルク指令データを出力する加算手段とを有し、
前記速度誤差検出手段は、
前記第１の出力手段から出力された第１の基準クロックをカウントする第１のカウンタと、
前記第１のカウンタのカウント値を前記速度パルスでラッチする第１のラッチ回路と、
速度誤差検出範囲に関する設定を行う第１の設定部とを有し、
前記第１のラッチ回路でラッチされたカウント値と前記第１の設定部の設定内容とに基づいて前記速度誤差データを検出し、
前記位相誤差検出手段は、
前記第２の出力手段から出力された第２の基準クロックをカウントする第２のカウンタと、
前記第２のカウンタのカウント値を前記速度パルスでラッチする第２のラッチ回路と、
位相誤差検出範囲に関する設定を行う第２の設定部とを有し、
前記第２のラッチ回路でラッチされたカウント値と前記第２の設定部の設定内容とに基づいて前記位相誤差データを検出する、モータ制御回路。
【請求項２】
前記速度誤差検出手段は、
前記第１の基準クロックを第１の所定の範囲でカウントし、前記速度パルスの立ち上がり又は立ち下がりのタイミングでラッチしたカウント値と、予め設定された速度検出用カウント値から所定の第１の値を減じた第１の基準カウント値と、を比較して前記速度誤差データを検出するとともに、前記速度検出用カウント値から前記第１の値を減じた値を基準とする前記第１の設定部により設定された範囲で前記速度誤差データを出力し、
前記速度パルスの立ち上がり又は立ち下がりのタイミングで、前記第１の基準クロックのカウントのリセット及び再カウントの開始を行う、請求項１に記載のモータ制御回路。
【請求項３】
前記速度誤差検出手段は、前記第１の基準クロックのカウントが前記第１の基準カウント値に達するまでの期間に前記速度パルスが入力されない場合に、前記第１の基準クロックのカウントを停止する、請求項２に記載のモータ制御回路。
【請求項４】
前記第１のカウンタのカウント数は、前記第１の値の２倍より大きい、請求項２又は３に記載のモータ制御回路。
【請求項５】
前記位相誤差検出手段は、
前記第２の基準クロックを第２の所定の範囲でカウントし、前記速度パルスの立ち上がり又は立ち下がりのタイミングでラッチしたカウント値と、予め設定された位相検出用カウント値と、を比較して前記位相誤差データを検出するとともに、前記位相検出用カウント値から所定の第２の値を減じた値を基準とする前記第２の設定部により設定された範囲で符号付きの前記位相誤差データを出力し、
前記第２の基準クロックのカウント値が位相検出用の第２の基準カウント値に達すると、前記第２の基準クロックのカウントのリセット及び再カウントの開始を行う、請求項１から４のいずれかに記載のモータ制御回路。
【請求項６】
前記位相誤差検出手段は、前記位相検出用カウント値に相当する周期よりも前記速度パルスの周期が長い場合又は短い場合に、前記第２の基準クロックのカウントを停止する、請求項５に記載のモータ制御回路。
【請求項７】
前記第２のカウンタのカウント数は、前記第２の値の２倍よりも大きい、請求項５又は６に記載のモータ制御回路。
【請求項８】
前記位相誤差検出手段は、第１の期間内に前記速度パルスが入力されない第１の場合には、前記第２の基準クロックのカウントを停止し、
前記第１の期間は、前記第２の基準クロックのカウントが開始されてから前記第２の基準クロックのカウント値が前記第２の基準カウント値に達することで前記第２の基準クロックのカウントがリセットされることが２回発生する期間である、請求項５から７のいずれかに記載のモータ制御回路。
【請求項９】
前記位相誤差検出手段は、前記第１の場合には、第２の基準クロックのカウントを停止するとともに、前記加算手段が出力するトルク指令データを最大値とする、請求項８に記載のモータ制御回路。
【請求項１０】
前記位相誤差検出手段は、前記速度パルスが２回入力されない期間に、前記第２の基準クロックのカウントが開始されてから前記第２の基準クロックのカウント値が前記第２の基準カウント値に達することで前記第２の基準クロックのカウントがリセットされることが１回も発生しない第２の場合には、前記第２の基準クロックのカウントを停止する、請求項５から９のいずれかに記載のモータ制御回路。
【請求項１１】
前記位相誤差検出手段は、前記第２の場合には、第２の基準クロックのカウントを停止するとともに、前記加算手段が出力するトルク指令データを最小値とする、請求項１０に記載のモータ制御回路。
【請求項１２】
前記第１の出力手段は、前記第１の基準クロックの周波数を調整可能に構成されており、
前記第１の基準クロックの周波数が調整されることで、前記速度誤差検出手段を用いた速度系制御のゲインと範囲とが設定される、請求項１から１１のいずれかに記載のモータ制御回路。
【請求項１３】
前記第２の出力手段は、前記第２の基準クロックの周波数を調整可能に構成されており、
前記第２の基準クロックの周波数が調整されることで、前記位相誤差検出手段を用いた位相系制御のゲインと範囲とが設定される、請求項１から１２のいずれかに記載のモータ制御回路。
【請求項１４】
前記モータ駆動制御手段は、前記第１の基準クロック及び前記第２の基準クロックとは独立した、ＰＷＭ制御用の第３の基準クロックに基づいて、前記モータの駆動制御を行う、請求項１から１３のいずれかに記載のモータ制御回路。
【請求項１５】
前記モータ駆動制御手段は、
前記加算手段から出力されたトルク指令データに応じて前記ＰＷＭ指令信号を生成するＰＷＭ信号生成回路と、
前記ＰＷＭ信号生成回路で生成されたＰＷＭ指令信号に応じて、モータを駆動するモータ駆動回路とを有する、請求項１から１４のいずれかに記載のモータ制御回路。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、モータ制御回路に関し、特に、モータの回転駆動制御において速度制御ゲインと位相制御ゲインとの設定を行うモータ制御回路に関する。
【背景技術】
【０００２】
モータの回転速度を一定とするように制御するモータ制御回路としては、例えば、パルスの偏差を検出し、それに基づいてモータの駆動電力を制御するものがある。このようなモータ制御回路は、基準パルス発生回路と、偏差検出回路と、パルス幅変調回路とを有する。
【０００３】
モータ制御回路には、例えば、モータに設けられたパルスエンコーダが発生する、モータの回転速度に対応した周波数の速度パルスが入力される。基準パルス発生回路は、モータの基準回転速度に対応した周波数の基準パルスを発生する。偏差検出パルスは、速度パルスと基準パルスとの偏差を検出する。パルス幅変調回路（ＰＷＭ回路）は、各パルスの偏差に対応するパルス幅の駆動パルスを発生する。モータへの駆動電力は、パルス幅変調回路の出力に応じて出力されたり停止されたりする。
【０００４】
下記特許文献１には、速度偏差ＰＷＭ駆動信号の基準クロックと位相偏差ＰＷＭ駆動信号の基準クロックの周波数をそれぞれ変更して、速度偏差ＰＷＭ駆動信号又は位相偏差ＰＷＭ駆動信号のデューティを変更することにより、モータのＰＷＭ駆動ゲインの調整を行うモータ制御回路が開示されている。
【０００５】
下記特許文献２には、パルス幅変調回路を含むモータの制御回路において、速度パルスと基準パルスとの偏差に対応するパルス幅の、パルス幅変調された駆動信号を発生し、モータの回転速度を制御することが開示されている。このモータの制御回路は、デジタル回路で構成できるものである。
【０００６】
下記特許文献３には、モータの速度制御装置において、水晶発振器の出力のように安定な周波数を速度基準として用いることで回転数安定度を高めること、及び速度制御ループの中に低域補償回路を挿入して負荷安定度を高めることなどが開示されている。
【０００７】
下記特許文献４には、モータ制御回路に関して、ソフトウェア処理による乗除算処理の課題と、乗除算処理をハードウェアで行う方法とが開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００８−２５９３２１号公報
【特許文献２】特開平５−２３６７８０号公報
【特許文献３】特公昭６３−１０６６８号公報
【特許文献４】特開平７−６７３７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところで、上記特許文献２又は特許文献３に示すようなモータ制御回路においては、モータの回転数Ｎは次式により表される。ここで、Ｇはゲインであり、モータが１回転する毎にＢ個の速度パルスが出力されるとする。次式からわかるように、モータの回転制御を行うためにゲインＧを調整すると、モータの回転数Ｎも変化してしまう。
【００１０】
回転数Ｎ＝６０＊ｆ／（Ｇ＊Ｂ）
【００１１】
モータの速度を制御するため、特許文献１に示すモータ制御回路では、ゲイン調整と同時に基準クロックが変更（調整）される。特許文献１に示すモータ制御回路では、速度偏差ＰＷＭ信号の基準クロックと位相偏差ＰＷＭ信号の基準クロックとを変化させて、ＰＷＭデューティを変更してＰＷＭ駆動ゲインを調整できる。このようなモータ制御回路の動作について、以下に図９を参照して説明する。
【００１２】
図９は、従来のモータ制御回路における速度偏差とＰＷＭ駆動信号のデューティとの関係を示すグラフである。
【００１３】
図９において、横軸は速度偏差を示し、縦軸はＰＷＭ駆動信号（速度偏差ＰＷＭ駆動信号）のデューティを示す。横軸について、図９において右方向に速度偏差が増加する方向は、モータの回転速度が遅くなる方向に対応している。横軸と縦軸との交点は、速度偏差がゼロである状態、すなわち回転速度が設定回転数に一致している状態を示す。また、横軸と縦軸との交点において、デューティは５０％である。Ｘ−Ｙ座標上に描かれた直線の傾斜は、ＰＷＭ駆動のゲインを表している。直線の傾斜が大きいほど、速度偏差の変化に対してＰＷＭ駆動信号のデューティの変化が大きくなる。すなわち、直線の傾斜が大きいほど、ゲインが大きくなる。
【００１４】
パルス幅変調回路は、速度偏差について、カウンタで基準クロックをカウントする。そして、速度判別信号に応じて、カウント中の期間について、ＰＷＭ基準信号の付加又は減算を行う。これにより、デューティが変化する速度偏差ＰＷＭ駆動信号が生成される。ここで、基準クロックの周波数を下げると、ＰＷＭ基準信号に付加されるカウント中の時間が長くなるので、速度偏差ＰＷＭ駆動信号のデューティが増大する。すなわち、基準クロックの周波数が下がると、速度偏差とＰＷＭ駆動信号のデューティとの関係が、図９においてＡ５で示される関係から、Ａ６で示される関係に近くなる。基準クロックの周波数が下がると、周波数が下がる前後で同じ速度偏差である場合、速度偏差ＰＷＭ駆動信号のデューティがアップする。逆に、基準クロックの周波数を上げると、カウント中の時間が短くなるので、デューティが減少する。すなわち、基準クロックの周波数が上がると、速度偏差とＰＷＭ駆動信号のデューティとの関係が、図９においてＡ５で示される関係から、Ａ７で示される関係に近くなる。基準クロックの周波数が上がると、周波数が上がる前後で同じ速度偏差である場合、速度偏差ＰＷＭ駆動信号のデューティが減少する。すなわち、基準クロックが調整されることで、ＰＷＭ駆動信号が調整される。なお、位相偏差によるＰＷＭデューティのゲインを個別に設定することが同様に可能である。
【００１５】
このように、従来のモータ制御回路としては、速度偏差によるＰＷＭデューティのゲインと位相偏差によるＰＷＭデューティのゲインを個別に設定することが可能であり、ゲイン設定を基準クロックの周波数により設定することができるものがある。
【００１６】
しかしながら、上記のような特許文献１に開示されている方式には、パルス幅変調回路は、速度偏差について、固定のカウント数のカウンタで基準クロックをカウントするため、ＰＷＭデューティによるモータの制御レンジが狭くなるという問題がある。すなわち、基準クロックの周波数を高くすると、ＰＷＭ駆動信号の上限が低くなり、ＰＷＭデューティが１００％までの幅広い制御レンジを得ることができなくなる。例えば、速度偏差と速度偏差ＰＷＭ駆動信号のデューティとの関係について、図９にＡ５で示される状態と、それより基準クロック周波数が高められたＡ７で示される状態とを比較する。このとき、Ａ５で示される関係においては、デューティの上限はおよそ１００％である。しかしながら、これと比較して、Ａ７で示される関係においては、デューティの上限は、１００％よりは小さいＹａ（％）になる。このように、基準クロックの周波数が高くなると、デューティ比のレンジが狭くなり、モータの制御レンジが狭くなる。
【００１７】
ここで、デジタル乗算器を用いて、誤差データと制御ゲイン乗数とに応じてゲインを制御する方法がある。すなわち、デジタル乗算器を用いて、ＰＷＭデューティ比に影響を与えないようにゲイン調整を行う方法もある。例えば、特許文献４には、ソフトウェア処理による乗除算処理の課題と、乗除算をハードウェアで行う方法が記載されている。
【００１８】
図１０は、従来のデジタル乗算器を用いたゲイン制御を説明する図である。
【００１９】
図１０において、乗算器８１５には、速度誤差データ（偏差データ）８１０及び制御ゲイン定数８２０が入力される。乗算器８１５は、入力されたデータに基づいて処理を行い、ゲインを制御するための制御指令データ８１７を出力する。また、位相についてもこれと同様に、乗算器８２５は、入力された位相誤差データ（偏差データ）８３０及び制御ゲイン定数８４０に基づいて、制御指令データ８２７を出力する。出力された制御指令データ８１７，８２７に基づいて、ＰＷＭデューティカウント用の基準クロックに影響を与えずに駆動ゲインの調整が行われる。
【００２０】
しかしながら、デジタル乗算器は、回路が複雑であって、ゲート数が多いものである。デジタル乗算器には、演算処理スピードが比較的遅いというデメリットがある。すなわち、デジタル乗算器を用いる場合、モータ制御回路を用いる装置の小型化や、回転駆動制御の精度の面で、課題が残る。特許文献４には、乗除算にかかるハードウェアの構成や規模の課題に関しては、何ら記載されていない。
【００２１】
この発明はそのような問題点を解決するためになされたものであり、簡素なデジタル回路を用いて構成され、広範な制御レンジでゲインを調整可能なモータ制御回路を提供することを目的としている。
【課題を解決するための手段】
【００２２】
上記目的を達成するためこの発明のある局面に従うと、モータ制御回路は、モータの回転速度に対応した周波数の速度パルスを検出する速度検出手段と、速度検出手段により検出された速度パルスに基づいて、トルク指令データを生成する生成手段と、生成手段により生成されたトルク指令データに応じてＰＷＭ指令信号を生成し、モータの駆動を制御するモータ駆動制御手段と、第１の基準クロックを出力する第１の出力手段と、第２の基準クロックを出力する第２の出力手段とを備え、生成手段は、速度誤差データを検出する速度誤差検出手段と、位相誤差データを検出する位相誤差検出手段と、速度誤差検出手段で検出された速度誤差データと位相誤差検出手段で検出された位相誤差データとを加算してトルク指令データを出力する加算手段とを有し、速度誤差検出手段は、第１の出力手段から出力された第１の基準クロックをカウントする第１のカウンタと、第１のカウンタのカウント値を速度パルスでラッチする第１のラッチ回路と、速度誤差検出範囲に関する設定を行う第１の設定部とを有し、第１のラッチ回路でラッチされたカウント値と第１の設定部の設定内容とに基づいて速度誤差データを検出し、位相誤差検出手段は、第２の出力手段から出力された第２の基準クロックをカウントする第２のカウンタと、第２のカウンタのカウント値を速度パルスでラッチする第２のラッチ回路と、位相誤差検出範囲に関する設定を行う第２の設定部とを有し、第２のラッチ回路でラッチされたカウント値と第２の設定部の設定内容とに基づいて位相誤差データを検出する。
【００２３】
好ましくは速度誤差検出手段は、第１の基準クロックを第１の所定の範囲でカウントし、速度パルスの立ち上がり又は立ち下がりのタイミングでラッチしたカウント値と、予め設定された速度検出用カウント値から所定の第１の値を減じた第１の基準カウント値と、を比較して速度誤差データを検出するとともに、速度検出用カウント値から第１の値を減じた値を基準とする第１の設定部により設定された範囲で速度誤差データを出力し、速度パルスの立ち上がり又は立ち下がりのタイミングで、第１の基準クロックのカウントのリセット及び再カウントの開始を行う。
【００２４】
好ましくは速度誤差検出手段は、第１の基準クロックのカウントが第１の基準カウント値に達するまでの期間に速度パルスが入力されない場合に、第１の基準クロックのカウントを停止する。
【００２５】
好ましくは第１のカウンタのカウント数は、第１の値の２倍より大きい。
【００２６】
好ましくは位相誤差検出手段は、第２の基準クロックを第２の所定の範囲でカウントし、速度パルスの立ち上がり又は立ち下がりのタイミングでラッチしたカウント値と、予め設定された位相検出用カウント値と、を比較して位相誤差データを検出するとともに、位相検出用カウント値から所定の第２の値を減じた値を基準とする第２の設定部により設定された範囲で符号付きの位相誤差データを出力し、第２の基準クロックのカウント値が位相検出用の第２の基準カウント値に達すると、第２の基準クロックのカウントのリセット及び再カウントの開始を行う。
【００２７】
好ましくは位相誤差検出手段は、位相検出用カウント値に相当する周期よりも速度パルスの周期が長い場合又は短い場合に、第２の基準クロックのカウントを停止する。
【００２８】
好ましくは第２のカウンタのカウント数は、第２の値の２倍よりも大きい。
【００２９】
好ましくは位相誤差検出手段は、第１の期間内に速度パルスが入力されない第１の場合には、第２の基準クロックのカウントを停止し、第１の期間は、第２の基準クロックのカウントが開始されてから第２の基準クロックのカウント値が第２の基準カウント値に達することで第２の基準クロックのカウントがリセットされることが２回発生する期間である。
【００３０】
好ましくは位相誤差検出手段は、第１の場合には、第２の基準クロックのカウントを停止するとともに、加算手段が出力するトルク指令データを最大値とする。
【００３１】
好ましくは位相誤差検出手段は、速度パルスが２回入力されない期間に、第２の基準クロックのカウントが開始されてから第２の基準クロックのカウント値が第２の基準カウント値に達することで第２の基準クロックのカウントがリセットされることが１回も発生しない第２の場合には、第２の基準クロックのカウントを停止する。
【００３２】
好ましくは位相誤差検出手段は、第２の場合には、第２の基準クロックのカウントを停止するとともに、加算手段が出力するトルク指令データを最小値とする。
【００３３】
好ましくは第１の出力手段は、第１の基準クロックの周波数を調整可能に構成されており、第１の基準クロックの周波数が調整されることで、速度誤差検出手段を用いた速度系制御のゲインと範囲とが設定される。
【００３４】
好ましくは第２の出力手段は、第２の基準クロックの周波数を調整可能に構成されており、第２の基準クロックの周波数が調整されることで、位相誤差検出手段を用いた位相系制御のゲインと範囲とが設定される。
【００３５】
好ましくはモータ駆動制御手段は、第１の基準クロック及び第２の基準クロックとは独立した、ＰＷＭ制御用の第３の基準クロックに基づいて、モータの駆動制御を行う。
【００３６】
好ましくはモータ駆動制御手段は、加算手段から出力されたトルク指令データに応じてＰＷＭ指令信号を生成するＰＷＭ信号生成回路と、ＰＷＭ信号生成回路で生成されたＰＷＭ指令信号に応じて、モータを駆動するモータ駆動回路とを有する。
【発明の効果】
【００３７】
これらの発明に従うと、速度誤差検出手段及び位相誤差検出手段が、それぞれ、ラッチ回路と設定部の設定内容とに基づいて、速度誤差データ及び位相誤差データを検出し、それらを加算して出力されたトルク指令データに応じて、モータ駆動制御部の制御が行われる。したがって、簡素なデジタル回路を用いて構成され、広範な制御レンジでゲインを調整可能なモータ制御回路を提供することができる。
【図面の簡単な説明】
【００３８】
【図１】本発明の第１の実施の形態におけるモータ制御回路の構成を示す図である。
【図２】速度誤差検出部の動作を示すタイムチャートである。
【図３】位相誤差検出部の動作を示すタイムチャートである。
【図４】基準クロックの周波数と制御ゲイン及び制御範囲との関係を説明する図である。
【図５】第１の実施の形態における効果を説明する図である。
【図６】第２の実施の形態におけるモータ制御回路の位相誤差検出部の一部の構成を示す図である。
【図７】ＦＧ周期がカウンタ周期より長い第１の場合における位相誤差検出部の動作を示すタイムチャートである。
【図８】ＦＧ周期がカウンタ周期より短い第２の場合における位相誤差検出部の動作を示すタイムチャートである。
【図９】従来のモータ制御回路における速度偏差とＰＷＭ駆動信号のデューティとの関係を示すグラフである。
【図１０】従来のデジタル乗算器を用いたゲイン制御を説明する図である。
【発明を実施するための形態】
【００３９】
以下、本発明の実施の形態におけるモータ制御回路について説明する。
【００４０】
［第１の実施の形態］
【００４１】
図１は、本発明の第１の実施の形態におけるモータ制御回路の構成を示す図である。
【００４２】
［モータ制御回路１の構成］
【００４３】
図１を参照して、モータ制御回路１は、モータ１００を回転させる制御を行う。モータ制御回路１は、速度検出部（速度検出手段の一例；図１においてＰＥと示している。）２０と、トルク指令データ生成部（生成手段の一例；以下、単に生成部と呼ぶことがある。）３０と、モータ駆動制御部（モータ駆動制御手段の一例）９０とを備えている。
【００４４】
速度検出部２０は、モータ１００の回転速度に対応した周波数の、ＦＧ信号（速度パルスの一例）を検出する。ＦＧ信号は、生成部３０に送られる。
【００４５】
生成部３０は、速度検出部２０により検出されたＦＧ信号に基づいて、トルク指令データを生成する。生成されたトルク指令データは、モータ駆動制御部９０に入力される。
【００４６】
モータ駆動制御部９０は、生成部３０により生成されたトルク指令データに応じて、ＰＷＭ指令信号を生成し、モータ１００を駆動させるとともに、モータ１００の駆動制御を行う。
【００４７】
また、モータ制御回路１は、第１の基準クロックＣＬＫ１を出力する第１の出力部（第１の出力手段の一例；図１において第１の基準クロックと示している。）１１と、第２の基準クロックＣＬＫ２を出力する第２の出力部（第２の出力手段の一例；図１において第２の基準クロックと示している。）１２と、第３の基準クロックＣＬＫ３を出力する第３の出力部（第３の出力手段の一例；図１において第３の基準クロックと示している。）１３とを備えている。第１の基準クロックＣＬＫ１及び第２の基準クロックＣＬＫ２は、生成部３０に入力される。他方、第３の基準クロックＣＬＫ３は、モータ駆動制御部９０に入力される。第３の基準クロックＣＬＫ３は、ＰＷＭ制御用の基準クロックである。
【００４８】
生成部３０は、速度誤差検出部（速度誤差検出手段の一例）４０と、位相誤差検出部（位相誤差検出手段の一例）６０と、加算回路（加算手段の一例）８０とを有している。速度誤差検出部４０は、ＦＧ信号及び第１の基準クロックＣＬＫ１に基づいて、速度誤差データを検出する。位相誤差検出部６０は、ＦＧ信号及び第２の基準クロックＣＬＫ２に基づいて、位相誤差データを検出する。速度誤差データは、速度誤差検出部４０から加算回路８０に送られる。位相誤差データは、位相誤差検出部６０から加算回路８０に送られる。加算回路８０は、入力された速度誤差データと位相誤差データとを加算し、トルク指令データを生成して出力する。すなわち、生成部３０は、トルク指令データを出力する。トルク指令データは、モータ駆動制御部９０に送られる。
【００４９】
モータ駆動制御部９０は、ＰＷＭ信号生成回路９１と、モータ駆動回路９２とを有している。加算回路８０から出力されたトルク指令データは、ＰＷＭ信号生成回路９１に入力される。また、第３の基準クロックＣＬＫ３は、ＰＷＭ信号生成回路９１に入力される。ＰＷＭ信号生成回路９１は、トルク指令データと第３の基準クロックＣＬＫ３とに応じて、ＰＷＭ指令信号を生成する。ＰＷＭ指令信号は、モータ駆動回路９２に送られる。モータ駆動回路９２は、入力されたＰＷＭ指令信号に応じて、モータ１００に駆動電力を与え、モータ１００を駆動する。すなわち、モータ１００は、モータ駆動制御部９０より、第３の基準クロックＣＬＫ３の周波数で、トルク指令データに基づくデューティ比の駆動電力が与えられて駆動される。
【００５０】
速度誤差検出部４０は、速度検出用カウンタ（速度検出用ＮＳｂｉｔカウンタ；第１のカウンタの一例）４１と、第１のレジスタ４３とを有している。第１のレジスタ４３には、速度検出ラッチ回路（第１のラッチ回路の一例）４５、減算部４７，４９、速度検出用値設定部（図１において速度検出用ＳＤｂｉｔ値と示している。）５１、速度検出用の回転数カウント値設定部（図１において速度検出用設定回転数カウント値と示している。）５３（以下、単にカウント値設定部５３と呼ぶことがある。）、加算部５５、及び比較部５７が設けられている。
【００５１】
速度検出用カウンタ４１には、第１の出力部１１から出力された第１の基準クロックＣＬＫ１が入力される。速度検出用カウンタ４１は、第１の基準クロックＣＬＫ１をカウントする。カウント出力は、速度検出ラッチ回路４５と比較部５７とに送られる。
【００５２】
速度検出ラッチ回路４５には、カウント出力と、ＦＧ信号とが送られる。速度検出ラッチ回路４５は、速度検出用カウンタ４１から入力されたカウント値をＦＧ信号でラッチする。速度検出ラッチ回路４５は、ラッチしたカウント値を減算部４７に送る。
【００５３】
速度検出用値設定部５１と、カウント値設定部５３とは、速度誤差検出部４０における速度誤差検出範囲を設定する第１の設定部を構成する。速度検出用値設定部５１は、速度検出用の設定値（第１の値の一例；以下、ＳＤｂｉｔと称する。）を、減算部４９及び加算部５５のそれぞれに出力する。カウント値設定部５３は、速度検出用カウント値（速度検出用設定回転数カウント値）を、減算部４９及び加算部５５のそれぞれに出力する。ＳＤｂｉｔ及び速度検出用カウント値は、それぞれ、予め設定された値である。
【００５４】
減算部４９では、入力されたＳＤｂｉｔと速度検出用カウント値とで減算処理を行い、減算部４７に出力する。減算部４７では、速度検出ラッチ回路４５でラッチされたカウント値と減算部４９から送られた値とで減算処理を行い、速度誤差データを出力する。すなわち、速度誤差データは、第１の設定部の設定内容と、速度検出ラッチ回路４５でラッチされた値とに基づいて検出される。なお、このとき、速度誤差データは、符号がない値として出力される。
【００５５】
加算部５５では、入力されたＳＤｂｉｔと速度検出用カウント値とが加算され、比較部５７に出力される。比較部５７は、加算部５５から出力された値とカウント出力とが等しければ、速度検出用カウンタ４１にカウント停止信号を出力するように構成されている。
【００５６】
速度検出用カウンタ４１には、第１の基準クロックＣＬＫ１の他に、ＦＧ信号と、比較部５７からのカウント停止信号とが入力される。速度検出用カウンタ４１は、カウント停止信号が入力されると、それに応じてカウントを停止する。速度検出用カウンタ４１は、ＦＧ信号が入力されると、カウントをリセットし、再カウントを開始する。
【００５７】
位相誤差検出部６０は、位相検出用カウンタ（位相検出用ＮＰｂｉｔカウンタ；第２のカウンタの一例）６１と、第２のレジスタ６３とを有している。第２のレジスタ６３には、位相検出ラッチ回路（第２のラッチ回路の一例）６５、減算部６７，６９、位相検出用値設定部（図１において位相検出用ＰＤｂｉｔ値と示している。）７１、位相検出用の回転数カウント値設定部（図１において位相検出用設定回転数カウント値と示している。）７３（以下、単にカウント値設定部７３と呼ぶことがある。）、及び比較部７７が設けられている。
【００５８】
位相検出用カウンタ６１は、例えば、自走カウンタ（フリーランカウンタ）である。位相検出用カウンタ６１には、第２の出力部１２から出力された第２の基準クロックＣＬＫ２が入力される。位相検出用カウンタ６１は、第２の基準クロックＣＬＫ２をカウントする。カウント出力は、位相検出ラッチ回路６５と比較部７７とに送られる。
【００５９】
位相検出ラッチ回路６５には、カウント出力と、ＦＧ信号とが送られる。位相検出ラッチ回路６５は、位相検出用カウンタ６１から入力されたカウント値をＦＧ信号でラッチする。位相検出ラッチ回路６５は、ラッチしたカウント値を減算部６７に送る。
【００６０】
位相検出用値設定部７１と、カウント値設定部７３とは、位相誤差検出部６０における位相誤差検出範囲を設定する第２の設定部を構成する。位相検出用値設定部７１は、位相検出用の設定値（第２の値の一例；以下、ＰＤｂｉｔと称する。）を、減算部６９に出力する。カウント値設定部７３は、位相検出用カウント値（位相検出用設定回転数カウント値）を、減算部６９及び比較部７７のそれぞれに出力する。ＰＤｂｉｔ及び位相検出用カウント値は、それぞれ、予め設定された値である。なお、本実施の形態では、位相検出用カウント値である位相検出用設定回転数カウント値は、第２の基準カウント値と同一の値となる。
【００６１】
減算部６９では、入力されたＰＤｂｉｔと位相検出用カウント値とで減算処理を行い、減算部６７に出力する。減算部６７では位相検出ラッチ回路６５でラッチされたカウント値と減算部６９から送られた値とで減算処理を行い、位相誤差データを出力する。すなわち、位相誤差データは、第２の設定部の設定内容と、位相検出ラッチ回路６５でラッチされた値とに基づいて検出される。なお、このとき、位相誤差データは、符号がある値として出力される。
【００６２】
比較部７７は、カウント値設定部７３から出力された位相検出用カウント値とカウント出力とが等しければ、位相検出用カウンタ６１をリセットさせる信号を出力するように構成されている。位相検出用カウンタ６１は、比較部７７からの信号が入力されると、カウントをリセットし、再カウントを開始する。
【００６３】
ここで、第１の出力部１１は、第１の基準クロックＣＬＫ１の周波数を調整可能に構成されている。第２の出力部１２は、第２の基準クロックＣＬＫ２の周波数を調整可能に構成されている。第３の出力部１３は、第３の基準クロックＣＬＫ３を、第１の基準クロックＣＬＫ１及び第２の基準クロックＣＬＫ２とは独立して出力させる。
【００６４】
第１の出力部１１、第２の出力部１２、及び第３の出力部１３は、例えば以下のように構成されていることで、それぞれ基準クロックを出力可能である。すなわち、第１の出力部１１及び第２の出力部１２のそれぞれは、分周器（図示せず）と、その分周器の設定を行う分周設定部（図示せず）とを備えている。第１の出力部１１の分周器及び第２の出力部１２の分周器には、それぞれ、図示しない発振器から出力された所定の基準クロックが入力される。ここで、所定の基準クロックは、第１の基準クロックＣＬＫ１及び第２の基準クロックＣＬＫ２よりも高い周波数のものである。第１の出力部１１及び第２の出力部１２は、分周設定部による設定に基づいて分周器が所定の基準クロックを分周して出力することで、それぞれ周波数が調整された第１の基準クロックＣＬＫ１及び第２の基準クロックＣＬＫ２を出力する。すなわち、１つの発振器で２つの基準クロックＣＬＫ１，ＣＬＫ２を出力できる。
【００６５】
第３の出力部１３は、例えば、第１の出力部１１及び第２の出力部１２の発振器とは異なる発振器を用いて、第３の基準クロックＣＬＫ３を出力する。そのため、第１の基準クロックＣＬＫ１の周波数又は第２の基準クロックＣＬＫ２の周波数が調整されたとしても、第３の基準クロックＣＬＫ３の周波数には影響がない。第１の基準クロックＣＬＫ１又は第２の基準クロックＣＬＫ２について周波数の調整が行われても、ＰＷＭ指令信号の周波数にはその影響は及ばない。換言すると、モータ駆動制御部９０は、第１の基準クロックＣＬＫ１及び第２の基準クロックＣＬＫ２とは独立した、ＰＷＭ制御用の第３の基準クロックＣＬＫ３に基づいて、モータ１００の駆動制御を行う。
【００６６】
本実施の形態において、速度誤差検出部４０について、モータ１００の設定回転数に応じて、速度検出用カウント値と第１の基準クロックＣＬＫ１の周波数とが設定されている。速度誤差検出部４０は、モータ１００の速度に応じて出力されるＦＧ信号の周期を、速度誤差データとして出力する。
【００６７】
［速度誤差検出部４０の動作］
【００６８】
本実施の形態において、速度誤差検出部４０は、以下のようにして動作する。
【００６９】
まず、速度検出用カウンタ４１で第１の基準クロックＣＬＫ１がカウントされる。速度検出ラッチ回路４５において、カウント出力は、ＦＧ信号の立ち上がり又は立ち下がりのタイミングでラッチされる。ここで、速度検出用カウンタ４１のカウント数としては、設定回転数のカウント値にＳＤｂｉｔを加えたカウント数が設定されている。すなわち、第１の基準クロックＣＬＫ１は、予め設定された速度検出用カウント値にＳＤｂｉｔを加算した所定の範囲（第１の所定の範囲の一例）でカウントされる。
【００７０】
第１のレジスタ４３において、速度検出ラッチ回路４５から出力されたカウント値と、予め設定された速度検出用カウント値からＳＤｂｉｔを減算した第１の基準カウント値とが比較され、速度誤差データが検出される。速度誤差データは、後述するように、速度検出用カウント値からＳＤｂｉｔを減じた値を基準とする所定の範囲で出力される。速度誤差データは、符号無しのデータとして得られる。
【００７１】
速度検出用カウンタ４１では、ＦＧ信号の立ち上がり又は立ち下がりのタイミングで、第１の基準クロックＣＬＫ１のカウントのリセット及び再カウントの開始が行われる。これにより、ＦＧ信号のタイミングに応じて、速度誤差データが出力される。
【００７２】
速度誤差検出部４０は、第１の基準クロックＣＬＫ１のカウントが第１の基準カウント値に達するまでの期間にＦＧ信号が入力されない場合に、第１の基準クロックＣＬＫ１のカウントを停止する。
【００７３】
図２は、速度誤差検出部４０の動作を示すタイムチャートである。
【００７４】
図２において、タイムチャートには、上段から順に、モータの回転数（Ｎｓｐｅｅｄ）が設定回転数よりも大きい場合のＦＧ信号の推移、モータの回転数が設定回転数と等しいときのＦＧ信号の推移、モータの回転数が設定回転数よりも小さい場合のＦＧ信号の推移、及びＦＧ信号の立ち上がりがあったときの速度誤差データの推移が示されている。
【００７５】
図２の左端の時刻ｔ０においてＦＧ信号が立ち上がり、このとき第１の基準クロックＣＬＫ１のカウントがリセットされる。モータの回転数が設定回転数と等しい（Ｎｓｐｅｅｄ＝設定回転数）とき、次のＦＧ信号は、時刻ｔ０から速度検出用カウント値だけカウントした後の時刻ｔ２に立ち上がる。他方、モータの回転数が設定回転数よりも大きい（Ｎｓｐｅｅｄ＞設定回転数）ときには、次のＦＧ信号は、時刻ｔ２よりも早い時刻ｔ２ａに立ち上がる。また、モータの回転数が設定回転数よりも小さい（Ｎｓｐｅｅｄ＜設定回転数）ときには、次のＦＧ信号は、時刻ｔ２よりも遅い時刻ｔ２ｂに立ち上がる。
【００７６】
本実施の形態において、速度誤差データは、設定回転数カウント値からＳＤｂｉｔだけ減算した値をゼロとし、２ＳＤｂｉｔまでの値を有する。ここで、ＳＤｂｉｔは、速度検出用カウンタ４１のカウント数ＮＳｂｉｔがＳＤｂｉｔの２倍よりも多くなる関係（ＮＳｂｉｔ＞２＊ＳＤｂｉｔ）を満たすように設定されている。すなわち、ＳＤｂｉｔは、速度検出用カウンタ４１のカウント数ＮＳｂｉｔの半分よりも小さい値に設定されている。
【００７７】
図２に示すように、速度誤差データは、設定回転数カウント値に対応する時刻ｔ２よりＳＤｂｉｔ分だけ早い時刻ｔ１から、時刻ｔ２よりＳＤｂｉｔ分だけ遅い時刻ｔ３まで（この期間をＤレンジ（区間）と呼ぶことがあり、その時間は、設定回転数カウント値に対応する時刻を中心とした２ＳＤｂｉｔ分の時間である。）に、ＦＧ信号の立ち上がりがあった場合には、そのタイミングに応じて出力される。時刻ｔ１より早いタイミングすなわちＤレンジの到来よりも早いタイミングでＦＧ信号の立ち上がりが発生したとき、速度誤差データは、ゼロに固定される。他方、時刻ｔ２より遅いタイミングすなわちＤレンジが終了した後にＦＧ信号の立ち上がりが発生したとき、速度誤差データは、最大値である２ＳＤｂｉｔに固定される。すなわち、第１の基準クロックＣＬＫ１のカウントが第１の基準カウント値に達する時刻ｔ２までの期間にＦＧ信号が入力されない場合には、第１の基準クロックＣＬＫ１のカウントを停止されることにより、速度誤差データは、最大値である２ＳＤｂｉｔに固定される。これにより、モータ１００の回転数にかかわらず、速度誤差データの値は、ＦＧ信号がＤレンジにおいて立ち上がった場合の速度誤差データの値と同範囲に収まることが保証されている。
【００７８】
［位相誤差検出部６０の動作］
【００７９】
本実施の形態において、位相誤差検出部６０は、以下のようにして動作する。
【００８０】
まず、位相検出用カウンタ６１で第２の基準クロックＣＬＫ２がカウントされる。位相検出ラッチ回路６５において、カウント出力は、ＦＧ信号の立ち上がり又は立ち下がりのタイミングでラッチされる。ここで、位相検出用カウンタ６１のカウント数としては、設定回転数のカウント値（位相検出用カウント値）と同じ値が設定されている。すなわち、第２の基準クロックＣＬＫ２は、予め設定された速度検出用カウント値に基づく所定の範囲（第２の所定の範囲の一例）でカウントされる。
【００８１】
第２のレジスタ６３において、位相検出ラッチ回路６５から出力されたカウント値と、予め設定された位相検出用カウント値とが比較され、位相誤差データが検出される。位相検出データは、後述するように、位相検出用カウント値からＰＤｂｉｔを減じた値を基準とする所定の範囲で、符号付きのデータとして出力される。
【００８２】
第２の基準クロックＣＬＫ２のカウント値が位相検出用カウント値に達すると、比較部７７から位相検出用カウンタ６１に信号が送られる。位相検出用カウンタ６１は、その信号に基づいて、第２の基準クロックＣＬＫ２のカウントのリセットを行い、再カウントを開始する。
【００８３】
図３は、位相誤差検出部６０の動作を示すタイムチャートである。
【００８４】
図３において、タイムチャートには、上段から順に、モータの位相が進んでいる場合のＦＧ信号の推移、モータの位相が位相中心値であるときのＦＧ信号の推移、モータの位相が遅れている場合のＦＧ信号の推移、及びＦＧ信号の立ち上がりがあったときの位相誤差データの推移が示されている。
【００８５】
図３の左端の時刻ｔ１０において、後述するＤレンジが終了するとき、すなわち位相検出用カウンタ６１のカウント出力が位相検出用カウント値と等しくなったとき、第２の基準クロックＣＬＫ２のカウントがリセットされる。カウントがリセットされると、位相検出用カウンタ６１は、カウントを再度開始する。
【００８６】
ここで、本実施の形態において、位相検出用カウント値は、モータ１００の設定回転数に対応するように設定されており、かつ、位相検出用カウント値とＰＤｂｉｔとは、モータの位相が位相中心値であるときに位相誤差データがゼロになるように設定されている。位相誤差データは、設定回転数に対応する位相検出用カウント値からＰＤｂｉｔ減算した値をゼロとして、そこからプラスマイナスＰＤｂｉｔの区間で符号付きデータとして出力される。すなわち、位相検出用カウント値から２ＰＤｂｉｔ減算した値が−ＰＤｂｉｔとなり、位相検出用カウント値が＋ＰＤｂｉｔとなる。ここで、ＰＤｂｉｔは、位相検出用カウンタ６１のカウント数ＮＰｂｉｔがＰＤｂｉｔの２倍よりも多くなる関係（ＮＰｂｉｔ＞２＊ＰＤｂｉｔ）を満たすように設定されている。すなわち、ＰＤｂｉｔは、位相検出用カウンタ６のカウント数ＮＰｂｉｔの半分よりも小さい値に設定されている。
【００８７】
モータの位相が位相中心値と等しいとき、次のＦＧ信号は、時刻ｔ１０から、位相検出用カウント値からＰＤｂｉｔを減じた値だけカウントした後の時刻ｔ１２に立ち上がる。他方、モータの位相が進んでいる（ＡＤ）ときには、次のＦＧ信号は、時刻ｔ１２よりも早い時刻ｔ１２ａに立ち上がる。また、モータの位相が遅れている（ＤＥ）ときには、次のＦＧ信号は、時刻ｔ１２よりも遅い時刻ｔ１２ｂに立ち上がる。
【００８８】
図３に示すように、位相誤差データは、設定回転数カウント値からＰＤｂｉｔを減じた値に対応する時刻ｔ１２を中心（０）として、そこからプラスマイナスＰＤｂｉｔのレンジ（Ｄレンジと呼ぶことがある。）で検出される。すなわち、Ｄレンジは、時刻ｔ１２よりＰＤｂｉｔだけ早い時刻ｔ１１（−ＰＤｂｉｔ）から、時刻ｔ１２よりＰＤｂｉｔだけ遅い時刻ｔ１３（＋ＰＤｂｉｔ）までの区間である。
【００８９】
時刻ｔ１１より早いタイミングすなわちＤレンジの到来よりも早いタイミングでＦＧ信号の立ち上がりが発生したとき、位相誤差データは、ゼロに固定される。換言すると、時刻ｔ１２より遅いタイミングすなわちＤレンジが終了した後にＦＧ信号の立ち上がりが発生したとき、位相誤差データは、ゼロに固定される。これにより、モータ１００の位相にかかわらず、位相誤差データの値は、ＦＧ信号がＤレンジにおいて立ち上がった場合の位相誤差データの値と同範囲に収まることが保証されている。
【００９０】
［基準クロック周波数による制御ゲイン及び制御範囲の設定］
【００９１】
モータ制御回路１が上記のように構成されているので、本実施の形態では、速度検出用の基準クロックの周波数と位相検出用の基準クロックの周波数とを調整することによって、モータ１００の制御ゲインの設定と制御範囲の設定とを行うことができる。
【００９２】
図４は、基準クロックの周波数と制御ゲイン及び制御範囲との関係を説明する図である。
【００９３】
図４では、基準クロックの周波数が高い場合（上方）の基準クロックのパルス波形（Ａ１）及びそのカウントの推移（Ａ２）と、基準クロックの周波数が低い場合（下方）の基準クロックのパルス波形（Ｂ１）及びそのカウントの推移（Ｂ２）とが比較されている。図４において、時刻ｔ０を基準タイミングとして、その基準タイミングよりもカウント数がプラスマイナス４となる範囲について、周波数が高い場合の範囲Ｗ１と低い場合の範囲Ｗ２とを示している。
【００９４】
図４を参照して、基準クロックの周波数が高い場合、基準クロックの周波数が低い場合と比較して、基準クロックの所定時間内におけるパルス数は比較的多く、カウント数が短時間で増加する。すなわち、周波数が高い場合の範囲Ｗ１と周波数が低い場合の範囲Ｗ２とを比較すると、周波数が高い場合の範囲Ｗ１は、周波数が低い場合の範囲Ｗ２よりも狭い。したがって、基準クロックの周波数が高い場合と低い場合とを比較すると、基準クロックの周波数が高い場合には、制御ゲインが高く、また、制御範囲Ｗ１が狭いといえる。他方、基準クロックの周波数が低い場合には、制御ゲインが低くなり、また、制御範囲Ｗ２が広いといえる。
【００９５】
本実施の形態においては、第１の基準クロックＣＬＫ１の周波数が調整されることで、速度誤差検出部４０を用いた速度系制御のゲインと範囲とが設定される。また、第２の基準クロックＣＬＫ２の周波数が調整されることで、位相誤差検出部６０を用いた位相系制御のゲインと範囲とが設定される。
【００９６】
なお、周波数の調整は、出力部１１，１２の分周設定部による分周設定を調整して行うことができ、所定の周波数の基準クロックが任意に分周されることで、周波数が調整された基準クロックが作成される。すなわち、第１の出力部１１において、分周設定（速度ゲイン設定）を調整することで、第１の基準クロックＣＬＫ１の周波数を調整できる。これにより第１の基準クロックＣＬＫ１が調整されると、速度誤差検出部４０から出力される速度誤差が変化し、速度系制御のゲインと範囲とが設定される。また、第２の出力部１２において、分周設定（位相ゲイン設定）を調整することで、第２の基準クロックＣＬＫ２の周波数を調整できる。これにより第２の基準クロックＣＬＫ２が調整されると、位相誤差検出部６０から出力される位相誤差が変化し、位相系制御のゲインと範囲とが設定される。
【００９７】
［第１の実施の形態における効果］
【００９８】
第１の実施の形態では、第１の基準クロックＣＬＫ１の周波数及び第２の基準クロックＣＬＫ２の周波数が調整されて、モータ１００の駆動ゲインの調整が可能である。すなわち、ＰＷＭデューティカウント用にＰＷＭ信号生成回路９１に入力される第３の基準クロックＣＬＫ３の周波数が維持された状態（固定された状態）で、駆動ゲインの調整が可能である。
【００９９】
図５は、第１の実施の形態における効果を説明する図である。
【０１００】
図５において、横軸は速度偏差を示し、縦軸は速度検出用カウンタ４１のカウント数を示す。横軸について、図５において右方向に速度偏差が増加する方向は、モータの回転速度が遅くなる方向に対応している。横軸と縦軸との交点は、速度偏差がゼロである状態、すなわち回転速度が設定回転数に一致している状態を示す。Ｘ−Ｙ座標上に描かれた直線の傾斜は、ＰＷＭ駆動の制御ゲインを表している。直線の傾斜が大きいほど、速度偏差の変化に対して速度検出用カウンタ４１のカウント数の変化が大きくなる。すなわち、直線の傾斜が大きいほど、制御ゲインが大きくなる。
【０１０１】
上記のように、速度系の制御ゲインは、第１の基準クロックＣＬＫ１の周波数の調整により設定できる。速度誤差とデューティ比との関係が図５に直線Ａ０で示す関係であるときを基準として、ＰＷＭ１の基準クロックＣＬＫ１の周波数がアップすると、速度誤差とデューティ比との関係が図５に直線Ａ１で示す関係に変化する。このとき、あるデューティ比Ｙに対応する速度誤差は、第１の基準クロックＣＬＫ１の周波数のアップ前後で、Ｓ０からＳ０より小さいＳ１へと変化する。他方、第１の基準クロックＣＬＫ１の周波数がダウンすると、速度誤差とデューティ比との関係が図５に直線Ａ２で示す関係に変化する。このとき、あるデューティ比Ｙに対応する速度誤差は、第１の基準クロックＣＬＫ１の周波数のダウン前後で、Ｓ０からＳ０より大きいＳ２へと変化する。すなわち、第１の基準クロックＣＬＫ１の周波数がアップすると、駆動制御ゲイン（速度ゲイン）がアップし、第１の基準クロックＣＬＫ１の周波数がダウンすると、駆動制御ゲインがダウンする。
【０１０２】
このように、第１の実施の形態では、第３の基準クロックＣＬＫ３の周波数を固定することにより、ＰＷＭデューティ１００％までの制御レンジを確保したままで、速度系の制御ゲインを調整可能である。また、位相系の制御ゲインに関しても、速度系の制御ゲインと同様の効果を得られる。すなわち、位相系の制御ゲインも、第２の基準クロックＣＬＫ２の周波数を第３の基準クロックＣＬＫ３の周波数とは独立して、第３の基準クロックＣＬＫ３の周波数を固定したままで調整することにより、調整可能である。したがって、ＰＷＭデューティ１００％までの制御レンジを確保したままで、位相系の制御ゲインを調整可能である。
【０１０３】
したがって、速度検出用カウンタ２１の第１の基準クロックＣＬＫ１の周波数と位相検出用カウンタ６１の第２の基準クロックＣＬＫ２の周波数とを、ＰＷＭデューティカウント用の第３の基準クロックＣＬＫ３には影響を与えずに変化させることができるので、モータ制御回路１は、広範な制御レンジを確保した状態で、モータ１００の全体の制御ゲインを調整可能である。
【０１０４】
また、モータ制御回路１は、デジタル乗算器などのデジタルゲート数が大きくなる回路を用いることなく、簡素なデジタル回路で構成されている。したがって、モータ制御回路１の製造コストを低く抑えることができる。モータ制御回路１は、外付けのアナログ部品も用いず、ＩＣ化できる回路である。
【０１０５】
［第２の実施の形態］
【０１０６】
第２の実施の形態におけるモータ制御回路の基本的な構成は、第１の実施の形態におけるそれと同じであるためここでの説明を繰り返さない。第２の実施の形態においては、位相誤差検出部の構成が第１の実施の形態のそれとは異なる。第２の実施の形態にかかるモータ制御回路は、第１のモータ制御回路にかかるモータ制御回路において、その位相誤差検出部を以下に説明する位相誤差検出部と入れ替えたものである。
【０１０７】
図６は、第２の実施の形態におけるモータ制御回路１の位相誤差検出部２６０の一部の構成を示す図である。
【０１０８】
図６を参照して、位相誤差検出部（位相誤差検出手段の一例）２６０は、位相検出用カウンタ（位相検出用Ｎｂｉｔカウンタ）６１、カウント値設定部（位相検出用設定回転数カウント値）７３、比較部７７を有している。また、位相誤差検出部２６０は、比較部２６３，２６９，２７１，２７３と、第１のＦＧ周期検出用カウンタ２６５と、第２のＦＧ周期検出用カウンタ２６７と、ＯＲ部２７５とを有している。なお、図６に示さないが、位相誤差検出部２６０は、さらに、図１に示される第１の実施の形態の位相誤差検出部６０と同様に、位相検出ラッチ回路６５、減算部６７，６９、及び位相検出用値設定部（位相検出用ＰＤｂｉｔ値）７１を有している。すなわち、図６には、位相誤差検出部２６０の一部の構成が示されている。
【０１０９】
第２の出力部（図６において第２の基準クロックと示している。）からの第２の基準クロックＣＬＫ２は、位相検出用カウンタ６１に入力される。速度検出部（図２においてＦＧ信号と示している。）２０からのＦＧ信号は、第１のＦＧ周期検出用カウンタ２６５と、第２のＦＧ周期検出用カウンタ２６７とに入力される。また、ＦＧ信号は、第１の実施の形態と同様に、位相検出ラッチ回路６５に入力され、位相検出ラッチ回路６５ではＦＧ信号に応じてカウント出力をラッチする。
【０１１０】
第１のＦＧ周期検出用カウンタ２６５は、ＦＧ信号をカウントし、比較部２６９に出力する。第１のＦＧ周期検出用カウンタ２６５には、比較部７７からの信号が入力される。第１のＦＧ周期検出用カウンタ２６５は、比較部７７からの信号が入力されたとき、カウント値をリセットし、再度カウントを開始する。第１のＦＧ周期検出用カウンタ２６５は、「短いＦＧ周期」について、下記のように検出するために設けられている。
【０１１１】
第２のＦＧ周期検出用カウンタ２６７には、比較部７７からの信号が入力される。第２のＦＧ周期検出用カウンタ２６７は、比較部７７からの信号をカウントし、比較部２７１に出力する。第２のＦＧ周期検出用カウンタ２６７は、ＦＧ信号が入力されたとき、カウント値をリセットし、再度カウントを開始する。第２のＦＧ周期検出用カウンタ２６７は、「長いＦＧ周期」について、下記のように検出するために設けられている。
【０１１２】
比較部２７３は、比較部２６９，２７１に、値を出力する。第２の実施の形態では、比較部２７３は、「２」を出力する。比較部２６９，２７１は、それぞれ、第１のＦＧ周期検出用カウンタ２６５又は第２のＦＧ周期検出用カウンタ２６７から入力されたカウント値と、比較部２７３から入力された値とを比較して、両者が一致するとき、信号を出力する。
【０１１３】
ＯＲ部２７５には、比較部２６９，２７１のそれぞれからの信号が入力される。ＯＲ部２７５は、比較部２６９，２７１のいずれかから信号が入力されたとき、位相検出用カウンタ６１にカウント停止信号を出力する。
【０１１４】
位相検出用カウンタ６１には、比較部７７からの信号の他に、ＯＲ部２７５からのカウント停止信号が入力される。位相検出用カウンタ６１は、比較部７７からの信号が入力されると、第２の基準クロックＣＬＫ２のカウントをリセットする。位相検出用カウンタ６１は、ＯＲ部２７５からカウント停止信号が入力されると、第２の基準クロックＣＬＫ２のカウントを停止する。
【０１１５】
位相検出用カウンタ６１は、このように位相誤差検出部２６０が構成されていることにより、設定回転数のカウント値である位相検出用カウント値に相当する周期（以下、カウンタ周期と称することがある）とＦＧ信号の周期（以下、ＦＧ周期と称することがある）とが異なるときは、カウントを停止する。すなわち、ＦＧ周期がカウンタ周期より長い第１の場合、又はＦＧ周期がカウンタ周期よりも短い第２の場合において、位相検出用カウンタ６１のカウントは停止される。
【０１１６】
ＦＧ周期がカウンタ周期よりも長い第１の場合においては、位相検出用カウンタ６１のリセットが２回発生するまでの期間（第１の期間の一例）にＦＧ信号がこないとき、そのままカウントを継続すれば、それ以降の位相誤差データが最大値から最小値に反転してしまう。第２の実施の形態において、第１の場合において、位相検出用カウンタ６１のリセットが２回発生するまでにＦＧ信号がこないとき、すなわち第２のＦＧ周期検出用カウンタ２６７で位相検出用カウンタ６１がリセットされたことが２回カウントされるとき、位相検出用カウンタ６１が停止される。換言すると、第１の場合には、位相検出用カウンタ６１による第２の基準クロックＣＬＫ２のカウントが開始されてから、そのカウント値が位相検出用カウント値に達して第２の基準クロックＣＬＫ２のカウントがリセットされるまでの手順が２回実施される期間にＦＧ信号が到来しないとき、位相検出用カウンタ６１のカウントが停止される。また、このとき、カウント値が維持されることにより、位相誤差データが最大値に保持される。これにより、加算回路８０が出力するトルク指令データが最大値になり、モータ１００を加速させる制御が行われ、モータ１００の回転数を確実に設定回転数に近づけることができる。
【０１１７】
図７は、ＦＧ周期がカウンタ周期より長い第１の場合における位相誤差検出部２６０の動作を示すタイムチャートである。
【０１１８】
上記動作の一例について、図７を参照して説明する。すなわち、第１の場合には、ＦＧ周期（例えば、時刻ｔ２６から時刻ｔ２７まで）がカウンタ周期（例えば、時刻ｔ２６ａから時刻ｔ２７ａまで）よりも長いので、時刻ｔ２１から時刻ｔ２７まで継続して、ＦＧ信号が到来するたびに、位相誤差が順次大きくなっていく。しかしながら、時刻ｔ２６後の時刻ｔ２６ａにおいてカウンタ値がリセットされてから、時刻ｔ２７以前の時刻ｔ２７ａにおいて再度カウンタ値がリセットされるため（２回目のリセットが発生するため）、カウントが継続される場合、時刻ｔ２７以降は、それ以前よりも位相誤差が小さくなってしまう。第２の実施の形態においては、時刻ｔ２６にＦＧ信号が到来してから、時刻ｔ２７ａにおいて位相検出用カウンタ６１のカウントが再度位相検出用カウント値に達したとき、カウント停止信号がＯＲ部２７５から位相検出用カウンタ６１に送られ、カウントが停止される。このとき、カウント値は、位相誤差データが最大値に保持されるように維持される。したがって、この場合、時刻ｔ２７以降の時刻ｔ２８，ｔ２９，…に出力される位相誤差データは、図７において太い破線で示されるように、最大値に保持される。
【０１１９】
ＦＧ周期がカウンタ周期よりも短い第２の場合においては、ＦＧ信号が２回発生するまでの期間（第２の期間の一例）に位相検出用カウンタ６１のリセットが発生しないとき、そのままカウントを継続すれば、それ以降の位相誤差データが最小値から最大値に反転してしまう。第２の実施の形態において、第２の場合において、ＦＧ信号が２回発生するまでに位相検出用カウンタ６１のリセットが発生しないとき、すなわち第１のＦＧ周期検出用カウンタ２６５においてＦＧ信号が２回カウントされるとき、位相検出用カウンタ６１が停止される。換言すると、第２の場合には、ＦＧ信号が２回連続して入力されるまでの期間に、位相検出用カウンタ６１による第２の基準クロックＣＬＫ２のカウントが開始されてから、そのカウント値が位相検出用カウント値に達して第２の基準クロックＣＬＫ２のカウントがリセットされるまでの手順が１回も実施されていないとき、位相検出用カウンタ６１のカウントが停止される。また、このとき、カウント値が維持されることにより、位相誤差データが最小値に保持される。これにより、加算回路８０が出力するトルク指令データが最小値になり、モータ１００を減速させる制御が行われ、モータ１００の回転数を確実に設定回転数に近づけることができる。
【０１２０】
図８は、ＦＧ周期がカウンタ周期より短い第２の場合における位相誤差検出部２６０の動作を示すタイムチャートである。
【０１２１】
上記動作の一例について、図８を参照して説明する。すなわち、第２の場合には、ＦＧ周期（例えば、時刻ｔ２４から時刻ｔ２５まで）がカウンタ周期（例えば、時刻ｔ２４ａから時刻ｔ２５ａまで）よりも短いので、時刻ｔ２１から時刻ｔ２５まで継続して、ＦＧ信号が到来するたびに、位相誤差が順次小さくなっていく。しかしながら、ＦＧ信号が到来する時刻ｔ２４より前の時刻ｔ２４ａにおいてカウンタ値がリセットされてから、再度カウンタ値がリセットされるのは、次にＦＧ信号が到来する時刻ｔ２５より後の時刻ｔ２５ａになるため、その間に２回のＦＧ信号が到来することになる。このとき、カウントが継続される場合、時刻ｔ２５以降は、それ以前よりも位相誤差が大きくなってしまう。第２の実施の形態においては、時刻ｔ２４ａに位相検出用カウンタ６１のカウントが位相検出用カウント値に達してカウンタ値がリセットされてから、時刻ｔ２５において２回目のＦＧ信号が到来したとき、カウント停止信号がＯＲ部２７５から位相検出用カウンタ６１に送られ、カウントが停止される。このとき、カウント値は、位相誤差データが最小値に保持されるように維持される。したがって、この場合、時刻ｔ２５以降の時刻ｔ２６，ｔ２７，…に出力される位相誤差データは、図８において太い破線で示されるように、最小値に保持される。
【０１２２】
［第２の実施の形態における効果］
【０１２３】
第２の実施の形態では、モータ制御回路１は、第１の基準クロックＣＬＫ１の周波数及び第２の基準クロックＣＬＫ２の周波数に関し、上述の第１の実施の形態と略同様に動作するので、第１の実施の形態と同様の効果を得ることができる。
【０１２４】
ここで、位相検出用カウンタ６１は、自走式のカウンタであるため製造コストが比較的低いものであるが、リセットされなければカウントを続行する場合があるなどのデメリットを有している。しかしながら、第２の実施の形態では、所定の場合に位相検出用カウンタ６１のカウントが停止されるので、このようなデメリットを解消できる。例えば、ＦＧ周期が短いことを検出するために速度誤差データがＳＤｂｉｔより小さく、位相誤差データがＰＤｂｉｔ／２以上のデータ変化を起こすような、位相ロックから外れる状態が発生したときなどに、位相検出用カウンタ６１を停止させることができる。
【０１２５】
［その他］
【０１２６】
比較部や加算部などの配置は上記に限られるものではなく、モータ制御回路としては、上記実施の形態におけるモータ制御回路と同様に動作可能なデジタル回路を有するものであればよい。
【０１２７】
第１の出力部、第２の出力部、及び第３の出力部のそれぞれが、１つの発振器から出力される所定の基準クロックに基づいて、第１〜３の基準クロックを出力可能に構成されていてもよい。この場合、発振器の数をより減らすことができる。第１の出力部と第３の出力部と、又は第２の出力部と第３の出力部とが、発振器を他方の出力部と共用して、基準クロックを出力可能に構成されていてもよい。また、第１の出力部、第２の出力部、及び第３の出力部は、それぞれ、互いに異なる発振器から出力される基準クロックに基づいて、第１〜３の基準クロックを出力可能に構成されていてもよい。第３の基準クロックが第１の基準クロック又は第２の基準クロック或いは第１の基準クロックと第２の基準クロックの両者の影響を受けないように構成されていればよい。
【０１２８】
上記の実施の形態では、位相検出用カウント値と第２の基準カウント値とは同一の値であるが、これらは互いに異なってもよい。すなわち、位相誤差検出部において位相検出用カウンタに信号を出力する比較部には、位相検出用カウント値とは別の第２の基準カウント値が入力されてもよい。例えば、位相誤差検出部にカウント値設定部とは異なるカウント値出力部を設け、カウント値設定部が減算部に位相検出用カウント値を出力し、カウント値出力部が第２の基準カウント値を比較部に出力するようにしてもよい。
【０１２９】
第２の実施の形態において、位相検出用カウンタのカウントが停止されるとき、位相誤差データとしては、所定値が出力されるようにしてもよい。例えば、所定値として、ゼロを出力するようにしてもよい。また、位相検出用カウンタのカウントが停止されるとき、位相誤差データとしては、直前に出力されているデータが継続して出力されるようにしてもよい。
【０１３０】
第２の実施の形態において、上記第１の場合及び第２の場合には、位相検出用カウンタのカウントの停止が行われるだけで、位相誤差データを最大値又は最小値にさせる制御が行われなくてもよい。また、第１のＦＧ周期検出用カウンタ及びそのカウント値が入力される比較部と、第２のＦＧ周期検出用カウンタ及びそのカウント値が入力される比較部とのいずれかが設けられていなくてもよい。このようにモータ制御回路が構成されていても、上記第１の場合及び第２の場合のいずれか一方の場合において、位相検出用カウンタを停止させることができる。
【０１３１】
上記実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１３２】
１  モータ制御回路
１１  第１の出力部（第１の出力手段の一例）
１２  第２の出力部（第２の出力手段の一例）
１３  第３の出力部（第３の出力手段の一例）
２０  速度検出部（速度検出手段の一例）
３０  トルク指令データ生成部（生成手段の一例）
４０  速度誤差検出部（速度誤差検出手段の一例）
４１  速度検出用カウンタ（第１のカウンタの一例）
４５  速度検出ラッチ回路（第１のラッチ回路の一例）
５１  速度検出用値設定部（第１の設定部の一例）
５３  カウント値設定部（第１の設定部の一例）
６０，２６０  位相誤差検出部（位相誤差検出手段の一例）
６１  位相検出用カウンタ（第２のカウンタの一例）
６５  位相検出ラッチ回路（第２のラッチ回路の一例）
７１  位相検出用値設定部（第２の設定部の一例）
７３  カウント値設定部（第２の設定部の一例）
８０  加算回路（加算手段の一例）
９０  モータ駆動制御部（モータ駆動制御手段の一例）
９１  ＰＷＭ信号生成回路
９２  モータ駆動回路
１００  モータ
ＣＬＫ１  第１の基準クロック
ＣＬＫ２  第２の基準クロック
ＣＬＫ３  第３の基準クロック
ＰＤｂｉｔ  第２の値の一例
ＳＤｂｉｔ  第１の値の一例
【図１】
0005727758.tif 000002
【図２】
0005727758.tif 000003
【図３】
0005727758.tif 000004
【図４】
0005727758.tif 000005
【図５】
0005727758.tif 000006
【図６】
0005727758.tif 000007
【図７】
0005727758.tif 000008
【図８】
0005727758.tif 000009
【図９】
0005727758.tif 000010
【図１０】
0005727758.tif 000011