(57)【要約】【課題】モータ速度制御装置において、回路規模や処理負荷の増加を軽減しつつ、目標回転速度に依存しないゲインでのフィードバック制御を実現する。【解決手段】モータの回転速度ωに反比例してパルス周期τＰが変化するパルス信号に基づきωを制御する。計数クロック生成回路４０は、目標回転速度ωＴに比例して計数クロックのクロック周波数ＦＣを変化させる。パルス周期測定部３８は、現在のωでのτＰにて計数クロックをカウントして測定計数値Ｃを求める。フィードバックフィルタ４４は、Ｃと、ωＴに対応した目標計数値ＣＮとの差をエラー信号Ｖｅとして入力され、エラー信号Ｖｅを補償するための指令信号を生成する。フィードバックフィルタ４４は、ωＴに比例する倍率で指令信号をスケーリングする。【選択図】図１
2010172118.tif 000002
【特許請求の範囲】
【請求項１】
モータの回転速度に反比例してパルス周期が変化するパルス信号に基づき前記回転速度を制御するモータ速度制御装置において、
前記モータの目標回転速度に応じてクロック周波数を変化させ、前記目標回転速度での前記パルス周期内のカウント値が前記目標回転速度に依存しない一定の目標計数値となる計数クロックを生成する計数クロック生成部と、
フィードバック制御により前記回転速度を前記目標回転速度に近づけるフィードバック制御部と、
を有し、
前記フィードバック制御部は、
現在の前記回転速度での前記パルス周期にて前記計数クロックをカウントして測定計数値を求めるパルス周期測定部と、
前記測定計数値と前記目標計数値との差に応じた誤差信号を生成する誤差信号生成部と、
前記誤差信号に基づいて、前記回転速度を前記目標回転速度に調節するための補償指令信号を生成する補償指令信号生成部と、
を有し、
前記補償指令信号生成部は、前記目標回転速度に比例する倍率で前記補償指令信号をスケーリングすること、
を特徴とするモータ速度制御装置。
【請求項２】
請求項１に記載のモータ速度制御装置において、
前記目標回転速度に応じて定まる目標指令信号を生成し、フィードフォワード制御により前記回転速度を前記目標回転速度にするフィードフォワード制御部と、
前記目標指令信号と前記補償指令信号とを合成した合成信号を生成し、当該合成信号に基づいて前記モータの駆動を制御する駆動制御部と、
を有し、
前記フィードフォワード制御部は、
前記目標回転速度に応じて設定される目標設定値を記憶する記憶部と、
前記目標設定値に基づいて前記目標指令信号を生成する目標指令信号生成部と、
を有し、
前記補償指令信号生成部は、前記記憶部が記憶する前記目標設定値の絶対値を前記倍率として用いること、
を特徴とするモータ速度制御装置。
【請求項３】
請求項２に記載のモータ速度制御装置において、
前記記憶部は、前記目標回転速度をその設定上限値で除した相対値を記憶し、
前記目標指令信号生成部は、前記相対値に応じた信号に前記設定上限値を乗じて出力する乗算器を有すること、
を特徴とするモータ速度制御装置。
【請求項４】
請求項２又は請求項３に記載のモータ速度制御装置において、
現在の前記回転速度が前記目標回転速度に対して所定の範囲内であるか否かを判定し、当該範囲外では前記フィードフォワード制御部及び前記フィードバック制御部のうち前記フィードフォワード制御部のみを動作させ、一方、前記範囲内では双方を動作させる動作切換部を有すること、を特徴とするモータ速度制御装置。
【請求項５】
請求項２から請求項４のいずれか１つに記載のモータ速度制御装置において、
起動時又は前記目標設定値の変更時には前記フィードフォワード制御部及び前記フィードバック制御部のうち前記フィードフォワード制御部のみを動作させ、前記回転速度が前記目標回転速度に対して所定の範囲内となった場合に、前記フィードバック制御部の動作を開始させる動作切換部を有すること、を特徴とするモータ速度制御装置。
【請求項６】
請求項４又は請求項５に記載のモータ速度制御装置において、
前記補償指令信号生成部は、前記誤差信号から比例制御、積分制御及び微分制御の組み合わせにより前記補償指令信号を生成すること、を特徴とするモータ速度制御装置。
【請求項７】
請求項４から請求項６いずれか１つに記載のモータ速度制御装置において、
前記フィードバック制御部は、その動作停止時に、前記補償指令信号生成部のそれまでの演算結果を初期状態にリセットすること、を特徴とするモータ速度制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータの回転速度にパルス周期が反比例するパルス信号に基づいて回転速度を制御するモータ速度制御装置に関する。
【背景技術】
【０００２】
モータの回転速度ωに応じて周期が変化するパルス信号ＰＩをモータモジュールから得てモータの速度制御を行うことができる。モータ速度制御装置は、当該パルス信号に現れるパルスの周期τＰを計測し、その周期からモータの回転速度ωを検出して、回転速度ωが目標値ωＴとなるようにフィードバック制御を行う。
【０００３】
パルス周期τＰは所定周波数ＦＣの基準クロックＣＬＫのカウント値Ｃで計測される。パルス信号ＰＩの周波数をＦＰとすると、カウント値Ｃは次式で与えられる。
Ｃ＝ＦＣ／ＦＰ
【０００４】
周波数ＦＰの単位量当たりのカウント値Ｃの重み（Ｃ/ＦＰ）をαとすると、
α＝ＦＣ／ＦＰ２
となる。
【０００５】
この重みαは、入力されるパルス信号ＰＩのパルス周期τＰをカウント値Ｃで計測する際の周波数ＦＰに対するカウント値Ｃのゲインである。この式は、αがＦＰの２乗に反比例して大きく変化することを示している。例えば、ＦＰが１００倍変化すると、αは１００００倍変化する。そのため、カウント値Ｃの現在値と目標値との差に比例するエラー信号Ｖｅを用いて、モータの回転速度ωに対するフィードバック制御を行う場合、目標回転速度ωＴが変わると、当該ωＴに対応する周波数ＦＰの変化によりエラー信号Ｖｅの生成ゲインが大きく変化し、ひいてはフィードバックループゲインも大きく変化する。
【０００６】
例えば、カメラのズーム機構を駆動するモータの速度は、手振れの速さや被写体の動きに応じて変化する。その際、追随すべき動きが速いほどαが小さくなり、フィードバック制御の追随性が低下する不都合が生じる。
【０００７】
このように、パルス周期τＰに基づく従来のモータ速度制御は取り扱いにくい側面を有する。この点、カウント値Ｃの逆数を算出し、これに適当な係数を乗じて、カウント値Ｃを周波数ＦＰに応じた信号に変換すれば、フィードバック制御におけるエラー信号Ｖｅは周波数ＦＰの１次関数となる。この場合、フィードバックループゲインは目標回転速度ωＴに依らない一定値となる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平１０−１７４４７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
カウント値Ｃを周波数ＦＰに応じた信号に変換する演算を行うために、別途、ロジック回路を設けると回路規模が大きくなり、一方、マイクロプロセッサを用いて当該演算を行う場合、処理負荷が増加するという問題があった。特に、逆数を求める除算において当該問題が大きい。
【００１０】
本発明は、上記問題点を解決するためになされたものであり、目標回転速度ωＴに依存しないゲインでフィードバック制御され、かつ、カウント値Ｃから周波数信号への換算を不要として回路規模や処理負荷の増加の問題が軽減されるモータ速度制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明に係るモータ速度制御装置は、モータの回転速度に反比例してパルス周期が変化するパルス信号に基づき前記回転速度を制御するものであって、前記モータの目標回転速度に応じてクロック周波数を変化させ、前記目標回転速度での前記パルス周期内のカウント値が前記目標回転速度に依存しない一定の目標計数値となる計数クロックを生成する計数クロック生成部と、フィードバック制御により前記回転速度を前記目標回転速度に近づけるフィードバック制御部と、を有し、前記フィードバック制御部が、現在の前記回転速度での前記パルス周期にて前記計数クロックをカウントして測定計数値を求めるパルス周期測定部と、前記測定計数値と前記目標計数値との差に応じた誤差信号を生成する誤差信号生成部と、前記誤差信号に基づいて、前記回転速度を前記目標回転速度に調節するための補償指令信号を生成する補償指令信号生成部と、を有し、前記補償指令信号生成部が、前記目標回転速度に比例する倍率で前記補償指令信号をスケーリングするものである。
【発明の効果】
【００１２】
本発明によれば、計数クロックの周波数が目標回転速度ωＴに応じて変えられ、目標回転速度におけるパルス周期τＰ内の計数クロックの計数値ＣＮが目標回転速度に依存しない一定値となる。これにより、パルス信号ＰＩの周波数ＦＰの単位量当たりの計数値ＣＮの重みβは、β＝ＣＮ/ＦＰとなる。フィードバック制御部では、この重みβを有する計数値ＣＮに基づいて生成される誤差信号（エラー信号Ｖｅ）から補償指令信号を生成する。その際、補償指令信号は目標回転速度に比例する倍率Ｋｒでスケーリングされる。この倍率Ｋｒは周波数ＦＰに比例し、フィードバック制御部でのゲインは重みβと倍率Ｋｒとの積に応じた値となり、目標回転速度ωＴに依存しない一定値となる。また、この構成における処理では、除算を追加する必要がないので、回路規模や処理負荷の増加が軽減される。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態であるモータ速度制御装置の機能的構成を説明するための概略のブロック図である。
【図２】本発明の実施形態であるモータ速度制御装置の駆動目標レジスタ、フィードフォワードフィルタ、フィードバックフィルタ及び合成回路のブロック線図である。
【図３】本発明の実施形態であるモータ速度制御装置のパルス周期計測方法を説明する信号波形図である。
【図４】本発明の実施形態であるモータ速度制御装置による逆転暴走状態の判定動作を説明するフロー図である。
【図５】本発明の実施形態であるモータ速度制御装置による正常状態への復旧動作を説明するフロー図である。
【図６】復旧動作を説明するための回転速度とパルス周期との関係を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態（以下実施形態という）について、図面に基づいて説明する。
【００１５】
［装置の構成］
図１は、実施形態であるモータ速度制御装置２０の機能的構成を説明するための概略のブロック図である。モータ速度制御装置２０は、ＭＰＵ（Micro Processing Unit）２２から制御目標値等のパラメータを設定されて動作し、モータ駆動回路２４へのＰＷＭ（Pulse Width Modulation）信号を生成する。モータ駆動回路２４は、Ｈブリッジ回路を有し、モータ駆動回路２４からのＰＷＭ信号をＨブリッジ回路にてモータモジュール２６への駆動信号に変換する。モータモジュール２６は、ＤＣモータ、駆動対象機構、及びエンコーダを含む。駆動対象機構は、例えば、カメラのズーム機構である。ＤＣモータは、モータ駆動回路２４からの駆動信号の電圧に基本的に比例した回転数で回転し、電圧の極性に応じて回転方向を切り換えることができる。エンコーダはＤＣモータの回転量を、直接に又は駆動対象機構の駆動量から間接的に検出する。エンコーダは、ＤＣモータの所定の回転角度毎にパルスを生成し、これがパルス信号ＰＩとしてモータ速度制御装置２０に入力される。
【００１６】
モータ速度制御装置２０は、駆動目標レジスタ３０、目標計数値レジスタ３２、制御レジスタ３４、フィードフォワードフィルタ３６、パルス周期測定部３８、計数クロック生成回路４０、比較回路４２、フィードバックフィルタ４４、合成回路４６、ＰＷＭ信号発生回路４８、及びバス５０を有する。図２は、このモータ速度制御装置２０のうち、駆動目標レジスタ３０、フィードフォワードフィルタ３６、フィードバックフィルタ４４及び合成回路４６のブロック線図である。
【００１７】
駆動目標レジスタ３０及びフィードフォワードフィルタ３６は、目標回転速度ωＴに応じて定まる目標指令信号を生成し、フィードフォワード制御によりモータの回転速度を目標回転速度にするフィードフォワード制御部を構成する。
【００１８】
駆動目標レジスタ３０は、モータの目標回転速度ωＴに応じて設定される目標設定値Ｋｒを記憶する。目標設定値Ｋｒとして、目標回転速度ωＴの大きさに比例する絶対値に、目標回転速度ωＴの向き（回転方向）に対応した符号を付した値が設定される。目標設定値ＫｒはＭＰＵ２２によって駆動目標レジスタ３０に格納される。
【００１９】
フィードフォワードフィルタ３６は、駆動目標レジスタ３０に格納された目標設定値Ｋｒに基づいて目標指令信号を生成する。図２に示すように、フィードフォワードフィルタ３６は、制御対象であるモータに応じた伝達関数を有するフィルタ６０と、乗算器６２とを有する。駆動目標レジスタ３０から読み出された目標設定値Ｋｒはフィルタ６０を介して乗算器６２に入力される。モータ速度制御装置２０において目標回転速度ωＴは可変設定することができるが、乗算器６２の乗算係数（ゲイン）Ｋｓはその可変設定される目標回転速度ωＴに依存しない固定値とされる。乗算器６２は、目標設定値Ｋｒに応じたフィルタ６０の出力信号にＫｓを乗じて目標指令信号を生成する。
【００２０】
Ｋｓは、目標回転速度ωＴについて予め設定される調節可能範囲の上限値ωＭＡＸに定めることができる。この場合、目標設定値Ｋｒとして、目標回転速度ωＴを設定上限値ωＭＡＸで除した相対値を設定する。
【００２１】
目標計数値レジスタ３２、パルス周期測定部３８及びフィードバックフィルタ４４は、フィードバック制御部を構成し、現在の回転速度ωと目標回転速度ωＴとの差に応じたエラー信号Ｖｅを生成し、このエラー信号Ｖｅに基づいて補償指令信号を生成して、回転速度ωを目標回転速度ωＴに近づけるフィードバック制御を行う。
【００２２】
パルス周期測定部３８は、モータモジュール２６からのパルス信号ＰＩを入力され、パルス信号ＰＩに現れるパルスを検知する。当該パルスは基本的にモータの回転に応じて生成され、そのパルス周期τＰはモータの回転速度ωに反比例して変化する。パルス周期測定部３８は、このパルス周期τＰを計数クロック（基準クロック）ＣＬＫで計測する。すなわち、パルス周期測定部３８は、現在の回転速度ωでのパルス周期τＰにて計数クロックＣＬＫをカウントして、パルス周期τＰに相当する測定計数値Ｃを求める。
【００２３】
計数クロック生成回路４０は、所定の周波数を有したマスタークロックを分周して計数クロックＣＬＫを生成し、パルス周期測定部３８へ供給する。計数クロック生成回路４０は、モータの目標回転速度ωＴに応じて計数クロックＣＬＫの周波数ＦＣを変化させ、目標回転速度ωＴに対応するパルス周期τＰでのパルス周期測定部３８によるカウント値Ｃが目標回転速度ωＴに依存しない一定の目標計数値ＣＮとなるようにする。例えば、計数クロック生成回路４０は、駆動目標レジスタ３０が記憶する目標設定値Ｋｒを用い、目標設定値Ｋｒに比例させて周波数ＦＣを変えることで、目標計数値ＣＮを一定に保つことができる。
【００２４】
目標計数値レジスタ３２は、目標計数値ＣＮを設定される。比較回路４２は、パルス周期測定部３８から出力される測定計数値Ｃと目標計数値レジスタ３２が記憶する目標計数値ＣＮとの差（Ｃ−ＣＮ）を求め、当該差に応じたエラー信号Ｖｅを生成する。
【００２５】
フィードバックフィルタ４４は、エラー信号Ｖｅに基づいて、回転速度ωを目標回転速度ωＴに調節するための補償指令信号を生成する。図２に示すように、フィードバックフィルタ４４は、ＰＩＤフィルタ６４と、乗算器６６とを有する。比較回路４２からのエラー信号ＶｅはＰＩＤフィルタ６４に入力される。ＰＩＤフィルタ６４は、エラー信号Ｖｅに対して、Ｐ操作、Ｉ操作及びＤ操作を並列に行い、それらの処理結果を加算合成して出力する。
【００２６】
乗算器６６は、ＰＩＤフィルタ６４の出力に係数（倍率）を乗じて出力する。この乗算器６６の出力信号がフィードバックフィルタ４４から補償指令信号として出力される。
【００２７】
ここで、乗算器６６の倍率は、目標回転速度ωＴに比例する値に設定される。これにより、補償指令信号は目標回転速度ωＴに応じた倍率でスケーリングされる。本実施形態では、上述のように目標設定値Ｋｒを上限値ωＭＡＸに対する目標回転速度ωＴの相対値で定義し、乗算器６６の倍率は、駆動目標レジスタ３０に記憶されている目標設定値Ｋｒに設定される。すなわち、ＭＰＵ２２から駆動目標レジスタ３０に目標設定値Ｋｒが設定されると、その絶対値が自動的に乗算器６６の倍率として利用されることになり、別途、倍率を設定する必要がない。
【００２８】
合成回路４６及びＰＷＭ信号発生回路４８はモータの駆動を制御する駆動制御部を構成する。合成回路４６は、フィードフォワードフィルタ３６から出力される目標指令信号と、フィードバックフィルタ４４から出力される補償指令信号とを加算して合成信号を生成する。ＰＷＭ信号発生回路４８は、デューティ比が合成信号の値に応じて変化するＰＷＭ信号を生成し、モータ駆動回路２４へ出力する。
【００２９】
なお、制御レジスタ３４に格納するパラメータをＭＰＵ２２から書き換え、当該パラメータを介してモータ速度制御装置２０の各部の動作や処理内容を制御することができる。
【００３０】
上述のように、モータ速度制御装置２０は、計数クロックＣＬＫの周波数ＦＣを目標回転速度ωＴに応じて変化させ、パルス周期τＰ内の目標計数値を目標回転速度ωＴに依存しない一定値ＣＮに維持する。これにより、パルス信号ＰＩの周波数ＦＰの単位量当たりの計数値ＣＮの重みβは、β＝ＣＮ/ＦＰとなる。フィードバックフィルタ４４には、この重みβを有する計数値ＣＮに基づいて生成されるエラー信号Ｖｅが入力される。さらにモータ速度制御装置２０は、フィードバックフィルタ４４の乗算器６６にて目標回転速度ωＴに比例する倍率を乗じて、補償指令信号をスケーリングする。この倍率は周波数ＦＰに比例するので、モータ速度制御装置２０でのフィードバック制御のゲインは重みβと乗算器６６の倍率との積に応じた値となり、目標回転速度ωＴに依存しない一定値となる。
【００３１】
一方、目標設定値Ｋｒを上限値ωＭＡＸに対する目標回転速度ωＴの相対値ではなく、例えば、目標回転速度ωＴそのものとすることもできる。その場合には、上述の構成では乗算器６２でのゲインを１に設定すればよく、また乗算器６２自体を省略した構成とすることもできる。
【００３２】
上述の構成では、目標回転速度ωＴが変更された場合に、乗算器６６の倍率は駆動目標レジスタ３０の内容で自動的に設定される。一方、目標回転速度ωＴが変更されても目標計数値ＣＮは変わらないので、目標計数値レジスタ３２の内容は変更する必要がない。
【００３３】
ちなみに、パルス周期τＰ内の目標計数値を一定に保たない従来の構成でも、乗算器６６のみを設け、その倍率をＦＰの２乗で変化させればフィードバック制御のゲインをωＴに依存しない一定値とすることができる。しかし、倍率と共に、乗算器６６でのデジタル演算の負荷は増大する。倍率をＦＰの２乗で変化させると、例えば、ＦＰが１００倍変化する場合には倍率は１００００倍変化させなければならない。これは、乗算器６６を固定小数点デジタル演算器で構成する場合、演算桁数が１４ビット変化することを想定しなければならないことを意味し、処理負荷や回路規模の増加が大きくなり得る。一方、本実施形態の構成では、ＦＰが１００倍変化する場合の演算桁数の変動幅は７ビットとなり、負担が比較的少ない。
【００３４】
また、ＰＩＤフィルタ６４等のデジタルフィルタの処理は基本的に加算と乗算とで構成できる。本実施形態ではフィードバックフィルタ４４に追加されるのは乗算器６６であり、除算は追加不要である。そのため、上記デジタルフィルタの演算を行うＡＬＵ（Arithmetic Logic Unit）を共用して乗算器６６の乗算処理を実現することができる。これにより、乗算器６６を別途回路として追加することを避け、回路規模の縮小を図ることが可能である。
【００３５】
また、乗算器６６をＰＩＤフィルタ６４の前や、ＰＩＤフィルタ６４内のＰ，Ｉ，Ｄ各操作それぞれに配置することもできる。
【００３６】
［目標回転速度ωＴの切り換え時の動作］
次に、モータ速度制御装置２０の動作について説明する。モータ速度制御装置２０はフィードフォワードフィルタ３６を含むフィードフォワード制御手段と、フィードバックフィルタ４４を含むフィードバック制御手段とを備え、これらは基本的に並列して動作する。定常状態では、フィードフォワード制御は回転速度ωのうち主として直流レベルを目標回転速度ωＴに保つ役割を担い、フィードバック制御は直流レベルに重畳する比較的小さな振幅の交流成分の収束に主導的役割を果たす。
【００３７】
モータ速度制御装置２０は、モータの回転開始時や、その他の目標回転速度ωＴの切り換え時の過渡応答をさらに向上させるために、目標回転速度ωＴの切り換え時にフィードバック制御を一時的に停止させることができる。
【００３８】
この動作では、現在の回転速度ωが目標回転速度ωＴに対して所定の範囲ＲΔ内であるか否かを判定し、範囲ＲΔ外ではフィードフォワード制御手段及びフィードバック制御手段のうちフィードフォワード制御手段のみを動作させ、一方、範囲ＲΔ内では双方を動作させる。
【００３９】
例えば、所定の閾値Δωを設定して、|ω−ωＴ|≦Δωならば範囲ＲΔ内であり、|ω−ωＴ|＞Δωならば範囲ＲΔ外であると定義することができる。
【００４０】
範囲ＲΔ内であるか否かは例えば、エラー信号Ｖｅに基づいて判定することができる。そこで、フィードバックフィルタ４４に、エラー信号Ｖｅに基づく当該判定を行ってＰＩＤフィルタ６４の動作を停止させたり再開させる、動作切換機能を持たせることができる。
【００４１】
動作切換の一つの方法は、上述のように、回転速度の偏差|ω−ωＴ|と閾値Δωとの比較結果に応じて、フィードバック制御のオン／オフを切り換えるというものである。この方法では、目標回転速度ωＴが変更されても、偏差が閾値Δω以下であればフィードバック制御は停止されず、一方、目標回転速度ωＴが変更されなくても、偏差が閾値Δωより大きくなればフィードバック制御が停止される。他の方法としては、目標回転速度ωＴが変更されれば、偏差の大きさに無関係に一旦、フィードバック制御を停止させ、偏差が閾値以下になったことを検知するとフィードバック制御を再開するという方法も可能である。
【００４２】
この動作により、目標回転速度ωＴの切り換え時等にて生じる大きな偏差がフィードバックフィルタ４４における演算結果に残りにくくなり、回転速度ωが目標回転速度ωＴを行き過ぎるオーバーシュートが除去又は低減され得る。また、この観点から、フィードバックフィルタ４４は、その動作停止時に、それまでの演算結果を初期状態にリセットすることが好適である。
【００４３】
なお、本実施形態では、回転速度ωはパルス周期τＰにおける計数クロックＣＬＫのカウント値で表される。よって、範囲ＲΔ内であるか否かは、具体的には、測定計数値Ｃと目標計数値ＣＮとの差（Ｃ−ＣＮ）に基づいて判定される。例えば、所定の閾値ΔＣを設定して、|Ｃ−ＣＮ|≦ΔＣならば範囲ＲΔ内であり、|Ｃ−ＣＮ|＞ΔＣならば範囲ＲΔ外であると定義することができる。
【００４４】
［パルス周期τＰの測定］
パルス周期測定部３８は、回転速度ωを把握するために、計数クロックＣＬＫをカウントしてパルス周期τＰを測定する。したがって、パルス信号ＰＩにおけるパルスのエッジの検出精度が低いと、モータの速度制御の精度も落ちる。そのため、パルス端で生じ得るチャタリング等のノイズの影響を軽減することが求められる。
【００４５】
図３は、モータ速度制御装置２０のパルス周期計測方法を説明する信号波形図である。図３において、横軸が時間軸であり、計数クロックＣＬＫ，パルス信号ＰＩ、ＰＩにおけるパルスの立ち下がり（後端）検出信号ＴＥ、立ち下がり周期カウント値ＮＴ、パルスの立ち上がり（前端）検出信号ＬＥ、立ち上がり周期カウント値ＮＬ、及びパルス周期τＰに関するカウント値Ｃを縦方向にそれぞれの時間軸を揃えて並べて示している。
【００４６】
図３に示す例では、モータ速度制御装置２０は、モータモジュール２６からモータ速度制御装置２０に入力されたパルス信号ＰＩに現れる目的パルスに関し、Ｌレベルの状態からＨレベルの状態へ遷移するパルス端に基づいてパルス周期τＰを計測する。
【００４７】
パルス周期測定部３８はパルス信号ＰＩを、計数クロック生成回路４０から供給される計数クロックＣＬＫの例えば、立ち上がりのタイミングでサンプリングする（状態検知ステップ）。なお、図３において、波形４はパルス信号ＰＩのパルス２の前後のエッジにて生じるチャタリングを表している。
【００４８】
パルス周期測定部３８は、サンプリング値がＬレベルからＨレベルに変化すると、パルス周期τＰの計測を開始し得る。具体的には、パルス周期測定部３８は、サンプリング値のＬレベルからＨレベルへの変化をパルス信号ＰＩの立ち上がりとして検知し、立ち上がり検出信号ＬＥにパルス７０を発生させる。パルス７０の幅は計数クロックＣＬＫの１周期τＣＬＫとする。パルス周期測定部３８は、パルス７０が立ち上がると、後述する例外処理を行う場合を除き、パルス周期τＰを計時する立ち上がり周期カウンタの現時点でのカウント値ＮＬを測定計数値Ｃとして出力する（パルス周期τＰの計測完了）。そして、パルス周期測定部３８は、次の計数クロックＣＬＫの周期から新たなパルス周期τＰの計測に入る（時刻Ｔ1）。すなわち、パルス周期測定部３８は、時刻Ｔ1にてカウント値ＮＬを０にリセットした後、計数クロックＣＬＫに同期してカウント値ＮＬを１ずつインクリメントし始める。
【００４９】
パルス周期測定部３８は、サンプリング値がＨレベルからＬレベルに変化すると、所定の抑止期間Ｐｄの計時を開始する（抑止期間計時ステップ）。具体的には、パルス周期測定部３８は、サンプリング値のＨレベルからＬレベルへの変化をパルス信号ＰＩの立ち下がりとして検知し、立ち下がり検出信号ＴＥにパルス７２を発生させる。パルス７２の幅はτＣＬＫとする。パルス周期測定部３８は、パルス７２が立ち上がると、それまでの立ち下がり周期カウンタの計数を停止し、次の計数クロックＣＬＫの周期から新たな抑止期間Ｐｄの計時に入る（時刻Ｔ1）。すなわち、パルス周期測定部３８は、パルス７２の立ち下がりにてカウント値ＮＴを０にリセットした後、計数クロックＣＬＫに同期してカウント値ＮＴを１ずつインクリメントし始める。
【００５０】
パルス信号ＰＩのＬレベルからＨレベルへの変化は、チャタリング等のノイズが存在しない場合には、パルス周期τＰの計測対象である目的パルスの立ち上がりと解される。よって、パルス７０が発生した場合には上述のように、それまでのパルス周期τＰの計測を完了し、次のパルス周期τＰの計測を開始することができる。しかし、チャタリング等のノイズが存在する場合には、パルス信号ＰＩのＬレベルからＨレベルへの変化はチャタリング等のノイズパルスの立ち上がり時にも起こり、パルス周期測定部３８はこれを検知してパルス７０を発生し得る。
【００５１】
ノイズは、目的パルスの途中にてパルス信号ＰＩの立ち下がり及びそれに続く立ち上がりを生じ得る。このパルス信号ＰＩの変動は、目的パルスの本来のＨレベル持続期間に比べて、基本的に十分に短い期間内に起こる。よって、パルス周期測定部３８は、立ち上がり検出信号ＬＥにパルス７０が発生した場合の例外処理として、先行する立ち下がりに基づくパルス７２からパルス７０までの経過時間が所定の抑止期間未満である場合には、そのパルス信号ＰＩの変動はノイズによるものであると判断して、現在既に行っているパルス周期τＰの計測を継続する。
【００５２】
立ち下がり周期カウンタのカウント値ＮＴにより計時される上述の抑止期間Ｐｄは、この判断に用いるためのものであり、目的パルス端にて生じるチャタリングの周期の想定値に応じて設定される。
【００５３】
図３に示す例では、抑止期間Ｐｄは、計数クロックＣＬＫの２クロックに設定されている。パルス周期測定部３８は、パルス７０発生時におけるカウント値ＮＴが“２”未満であれば、カウント値ＮＬのインクリメントを継続し（例えば、時刻Ｔ2，Ｔ3，Ｔ4）、一方、パルス７０発生時におけるカウント値ＮＴが“２”以上であれば、その時点のカウント値ＮＬをパルス周期τＰを表す測定計数値Ｃとして出力すると共に、立ち上がり周期カウンタをリセットして次のパルス周期τＰの計測を開始する（例えば、時刻Ｔ5）。
【００５４】
従来方法でのパルス信号ＰＩに現れる目的パルスのエッジの検出位置は、チャタリングが収まった後のタイミングになる。そのため、チャタリングの持続期間のばらつきによって、パルス周期の計測値がばらつき、また、パルス周期τＰの検出に遅延が生じる。
【００５５】
これに対し、モータ速度制御装置２０におけるパルス周期τＰの測定方法によれば、上述のように、チャタリングが収まる前のパルス信号ＰＩの立ち上がりからパルス周期τＰの計測を始める一方、チャタリングのように短い周期でパルスが途切れる場合には、パルス周期τＰの計測を継続させる。これにより、チャタリングを目的パルスとして誤検出することが抑制される。また、当該測定方法によれば、パルスの先端部分のチャタリング期間のばらつきの影響を受けないパルス周期計測が可能である。よって、パルス周期τＰを精度良く測定できる。さらに、パルス周期τＰの検出までの遅延が少なくなるので、モータ速度制御の安定性等が向上し得る。
【００５６】
基本的にチャタリングの周期はパルス信号ＰＩでのパルス周期τＰに比例する。すなわち、抑止期間Ｐｄもパルス周期τＰに比例させることが好適である。ここで、モータ速度制御装置２０は、目標回転速度ωＴに応じて計数クロックＣＬＫの周波数ＦＣを変化させるので、パルス周期τＰに比例して変化する抑止期間Ｐｄは、計数クロックＣＬＫのクロック数で表すと回転速度ωに依存しない一定値となる。すなわち、パルス信号ＰＩの立ち上がり時（パルス７０の発生時）に抑止期間Ｐｄの経過の有無の判断に用いる立ち下がり周期カウンタのカウント値ＮＴの閾値（図３の例では“２”）は、回転速度ωに依存しない一定値とすることができる。
【００５７】
［逆転暴走への対策］
モータモジュール２６からモータ速度制御装置２０に入力されるパルス信号ＰＩは１相だけであるので、モータ速度制御装置２０は回転速度の向きを判別できない。モータ速度制御装置２０はモータの逆転暴走を生じる可能性がある。しかし、モータ速度制御装置２０は、逆転暴走状態になった場合には、それを検知して正常状態に復旧させることができる。モータ速度制御装置２０は、逆転暴走状態を判定する逆転暴走判定部（図示せず）と、正常状態への復旧を行う復旧処理部（図示せず）とを備える。これら逆転暴走判定部及び復旧処理部は例えば、パルス周期測定部３８、計数クロック生成回路４０、フィードバックフィルタ４４、ＰＷＭ信号発生回路４８、制御レジスタ３４などのモータ速度制御装置２０の各部がバス５０を介して連係動作することにより実現することができる。また、逆転暴走判定部及び復旧処理部として、図１に示していない独立した回路ブロックを設け、モータ速度制御装置２０の各部を統合的に制御してもよい。この統合的な制御はＭＰＵ２２によって実現することもでき、その場合には、ＭＰＵ２２は本発明に係るモータ速度制御装置の一部を構成する。
【００５８】
逆転暴走判定部は、合成回路４６で生成される合成信号を監視対象信号とする。逆転暴走判定部は、監視対象信号の回転速度ωに対する調節向きが目標回転速度ωＴの向きとは逆で、かつ監視対象信号の強度が所定の閾値を超えた状態が所定期間継続した場合に、モータが目標回転速度ωＴとは逆向きに暴走している逆転暴走状態であると判定する。逆転暴走判定部が逆転暴走状態を検知すると、復旧処理部が回転速度ωを逆転暴走状態から目標回転速度ωＴへ向けて復旧させる。なお、逆転暴走状態では、目標指令信号に比べて補償指令信号が支配的になっているので、合成信号の代わりに補償指令信号を監視対象信号とすることもできる。
【００５９】
図４は、逆転暴走状態の判定動作を説明するフロー図である。モータ速度制御装置２０は、逆転暴走状態を検知しない場合、通常の制御での動作を行う（Ｓ５）。逆転暴走判定部は通常制御での動作中、逆転暴走の発生の有無を監視する（Ｓ１０〜Ｓ２５）。
【００６０】
目標回転速度ωＴの向きは、駆動目標レジスタ３０に設定される目標設定値Ｋｒの符号から把握することができる。一方、監視対象信号の回転速度ωに対する調節向きは、合成信号の符号から把握することができる。したがって、監視対象信号の回転速度ωに対する調節向きが目標回転速度ωＴの向きとは逆であるか否かは、目標設定値Ｋｒの符号が合成信号の符号と相違するか否かにより判定できる（Ｓ１０）。符号が同じであれば、モータは逆転暴走ではないと判断され、通常制御Ｓ５を継続する。
【００６１】
一方、符号が相違する場合には、監視対象信号の強度、すなわち絶対値が所定の閾値Ｖｒを超えているかが判定される（Ｓ１５）。合成信号の絶対値が閾値Ｖｒ以下であれば、モータは逆転暴走ではないと判断され、通常制御Ｓ５を継続する。閾値Ｖｒは例えば、モータ駆動回路２４により生成される駆動信号を飽和させる程度の比較的大きな値に設定することができる。
【００６２】
合成信号の絶対値が閾値Ｖｒを超えている場合は、監視タイマーに対する操作が行われる（Ｓ２０）。この監視タイマー操作Ｓ２０では、監視タイマーが停止状態であれば起動され、既に起動されていれば監視タイマー値がインクリメントされる。
【００６３】
逆転暴走判定部は監視タイマー値が所定の値Ｔｒを超えたか否かを判定する（Ｓ２５）。監視タイマー値がＴｒ以下の間は、通常制御Ｓ５が継続される。その間に、処理Ｓ１０，Ｓ１５にて逆転暴走ではないと判定されれば、監視タイマーは停止され、リセットされる（Ｓ３０）。一方、監視タイマー値がＴｒを超えると、逆転暴走状態であると判断され（Ｓ３５）、正常状態への復旧動作が開始される。
【００６４】
図５は、正常状態への復旧動作を説明するフロー図である。また、図６は、復旧動作を説明する模式図であり、回転速度ωとパルス周期τＰとの関係を示す図である。図６において横軸が回転速度ω、縦軸がパルス周期τＰである。
【００６５】
逆転暴走状態を検出すると、モータ速度制御装置２０はモータの回転を制動する制動制御に移行する（Ｓ５０）。制動制御として、例えば、モータ駆動回路２４が回転を停止させる方向に最大の駆動力をモータに発生させるように、ＰＷＭ信号発生回路４８がＰＷＭ信号のデューティ比を設定する。なお、制動制御は、他の方法であってもよく、例えば、モータの端子間を強制的に短絡させて停止させる短絡ブレーキを用いることもできる。
【００６６】
ここで、上述したように、目標回転速度ωＴを含んだ所定の範囲ＲΔ内でのみフィードバック制御を行って、範囲ＲΔ外ではフィードフォワード制御のみを行う場合には、制動制御は、範囲ＲΔの下限及び上限のうち目標回転速度ωＴよりも絶対値が小さい低速側限界ωＬより絶対値が小さい範囲内に設定される制動終了速度ωＢＳにて終了する。例えば、図６に示すωＴ＞０の場合には、範囲ＲΔの下限がωＬとなる。
【００６７】
回転速度ωが制動終了速度ωＢＳに達したか否かは、パルス周期測定部３８が計測する測定計数値Ｃに基づいて判定できる。逆転暴走状態が検知されると、計数クロックＣＬＫの周波数ＦＣを、目標回転速度ωＴに対応した値から制動終了速度ωＢＳに対応した値に変更する（Ｓ５５）。これにより、制動終了速度ωＢＳでの測定計数値Ｃは目標計数値レジスタ３２に格納される目標計数値ＣＮに一致し、そのときのエラー信号Ｖｅは０となる。
【００６８】
例えば、目標回転速度ωＴとは符号が逆の範囲内にωＢＳを設定する場合、逆転暴走状態から制動をかけると、ωがωＢＳに達するまで、すなわち|ω|＞|ωＢＳ|である範囲ではＣ−ＣＮ＜０であり、ω＝ωＢＳにてＣ−ＣＮ＝０となり、ωがωＢＳを超えてさらに停止状態に近づいて|ω|＜|ωＢＳ|となるとＣ−ＣＮ＞０となる。よって、エラー信号Ｖｅの符号を監視し、Ｖｅ＞０となったら回転速度ωが制動終了速度ωＢＳを超えたと判断することができる（Ｓ６０）。
【００６９】
また、回転速度ωが制動終了速度ωＢＳに達したか否かは、目標回転速度ωＴ（若しくは制動終了速度ωＢＳ）の符号及びフィードバックフィルタ４４から出力される補償指令信号の符号から判定することもできる。
【００７０】
制動終了速度ωＢＳに達すると、通常制御に復帰する（Ｓ６５）。通常制御への復帰処理Ｓ６５では、計数クロックＣＬＫの周波数ＦＣが、目標回転速度ωＴに対応した値に戻される。モータはωがωＬに達するまではフィードフォワード制御により加速される。ωがωＬに達するとフィードフォワード制御に加えてフィードバック制御が開始され、ωが目標回転速度ωＴに維持される正常状態が回復する。なお、ωＢＳを目標回転速度ωＴとは逆符号に設定した場合、通常制御へ復帰した時点では、モータはまだ目標回転速度ωＴとは反対の方向に回転しているが、フィードフォワード制御によりさらに減速し、さらにはω＝０を通過して目標回転速度ωＴと同じ方向に回転を始める。そして、ω＝ωＬに達すると、上述のようにフィードバック制御が開始される。
【００７１】
なお、フィードバック制御を行う範囲ＲΔを設定しない場合、すなわち、通常制御では常にフィードフォワード制御とフィードバック制御とが並列して行われる場合には、再び逆転暴走状態に向かわない回転速度ωまで制動制御を継続する必要がある。
【００７２】
ここで、目標回転速度ωＴとは向きが逆で大きさが同じである速度（−ωＴ）は、フィードバック制御によって、逆転暴走へ向かうか、目標回転速度ωＴに向かうかの分水嶺となる境界速度である。そこで、範囲ＲΔを設定しない場合には、制動制御を境界速度（−ωＴ）より絶対値の小さい所定の制動終了速度ωＢＳに達するまで継続し、|ωＢＳ|＞|ω|となった時点でフィードフォワード制御手段とフィードバック制御手段とを用いた元の通常制御に復帰させる。
【００７３】
このように範囲ＲΔを設定しない制御では、制動終了速度ωＢＳは基本的に境界速度（−ωＴ）より絶対値の小さい値に設定される。
【符号の説明】
【００７４】
２０  モータ速度制御装置、２２  ＭＰＵ、２４  モータ駆動回路、２６  モータモジュール、３０  駆動目標レジスタ、３２  目標計数値レジスタ、３４  制御レジスタ、３６  フィードフォワードフィルタ、３８  パルス周期測定部、４０  計数クロック生成回路、４２  比較回路、４４  フィードバックフィルタ、４６  合成回路、４８  ＰＷＭ信号発生回路、５０  バス、６０  フィルタ、６２，６６  乗算器、６４  ＰＩＤフィルタ。
【図１】
2010172118.tif 000003
【図２】
2010172118.tif 000004
【図３】
2010172118.tif 000005
【図４】
2010172118.tif 000006
【図５】
2010172118.tif 000007
【図６】
2010172118.tif 000008