(57)【要約】【課題】フィードバック制御モードにおいて、高速まで加速することができ、かつ誤動作を防止するモータ制御装置を提供すること。【解決手段】ロータと、前記ロータの回転位置を検出する複数の位置検出部と、を備えたモータと、前記複数の位置検出部のうち、いずれか１つの位置検出部の出力に基づいて遅延角を設定する制御手段を有し、前記制御手段は、目標遅延角と現在の遅延角の差である遅延角変化量に基づいて、前記複数の位置検出部からいずれか１つの位置検出部を選択し、該選択された位置検出部の出力を用いて遅延角を設定する。【選択図】図３
2015033191.tif 000002
【特許請求の範囲】
【請求項１】
ロータと、前記ロータの回転位置を検出する複数の位置検出部と、を備えたモータと、
前記複数の位置検出部のうち、いずれか１つの位置検出部の出力に基づいて遅延角を設定する制御手段を有し、
前記制御手段は、目標遅延角と現在の遅延角の差である遅延角変化量に基づいて、前記複数の位置検出部からいずれか１つの位置検出部を選択し、該選択された位置検出部の出力を用いて遅延角を設定することを特徴とするモータ制御装置。
【請求項２】
前記複数の位置検出部は、前記ロータの周方向に所定の間隔で配置されていることを特徴とする請求項１に記載のモータ制御装置。
【請求項３】
前記モータを加速制御する際に、前記現在の遅延角が前記遅延角変化量より小さい場合、
前記制御手段は、前記現在の遅延角を設定する際に用いられた位置検出部とは異なる位置検出部の出力により、前記目標遅延角を設定することを特徴とする請求項１または２に記載のモータ制御装置。
【請求項４】
前記モータを加速制御する際に、前記現在の遅延角が前記遅延角変化量より小さい場合、
前記制御手段は、前記現在の遅延角を設定する際に用いられた位置検出部の出力により設定可能な遅延角を設定した後、前記現在の遅延角を設定する際に用いられた位置検出部とは異なる位置検出部の出力により、前記目標遅延角を設定することを特徴とする請求項１または２に記載のモータ制御装置。
【請求項５】
前記モータを減速制御する際に、前記現在の遅延角に前記遅延角変化量を加算した値が、前記現在の遅延角を設定する際に用いられた位置検出部の出力の半周期に対応する電気角より大きい場合、
前記制御手段は、前記現在の遅延角を設定する際に用いられた位置検出部とは異なる位置検出部の出力により、前記目標遅延角を設定することを特徴とする請求項１または２に記載のモータ制御装置。
【請求項６】
前記モータは、オープンループ制御されるモードと、前記第１および第２の位置検出部を用いて制御されるフィードバック制御モードのいずれかによって制御され、
前記制御手段は、前記モータがフィードバック制御モードにより制御されているときに、前記位置検出部の出力を用いて遅延角を設定することを特徴とする請求項１乃至５のいずれか１項に記載のモータ制御装置。
【請求項７】
請求項１乃至６のいずれか１項に記載のモータ制御装置を有することを特徴とするレンズ装置。
【請求項８】
請求項７に記載のレンズ装置と、
前記レンズ装置を着脱可能な撮像装置と、を有することを特徴とするカメラシステム。
【請求項９】
ロータと、前記ロータの回転位置を検出する複数の位置検出部と、を備えたモータの制御方法であって、
前記複数の位置検出部のうち、いずれか１つの位置検出部の出力に基づいて遅延角を設定するステップと、を有し、
前記設定するステップは、目標遅延角と現在の遅延角の差である遅延角変化量に基づいて、前記複数の位置検出部からいずれか１つの位置検出部を選択し、該選択された位置検出部の出力を用いて遅延角を設定することを特徴とするモータの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御装置に関し、特にフィードバック制御モードでの駆動が可能なモータ制御装置に関する。
【背景技術】
【０００２】
ステッピングモータは小型、高トルク、高寿命といった特徴を有し、開ループ制御により容易にデジタル的な位置決め制御が可能である。このため、カメラや交換レンズ、プリンタ等の光学機器に広く用いられている。
【０００３】
しかしながら、ステッピングモータには、負荷が多いときや高速回転を行おうとしたときに、モータが脱調してしまうという問題があった。そのため、ステッピングモータに、ロータの回転位置を検出するエンコーダを取り付け、ロータの回転位置に応じてコイルへの通電状態を切り替える、いわゆるブラシレスＤＣモータと同様の動作を行わせることで、脱調を防ぐ方法が提案されている。
【０００４】
ここで、ステッピングモータの開ループ制御による駆動モードをオープンループ制御モードと呼び、ブラシレスＤＣモータと同様の制御による駆動モードをフィードバック制御モードと呼ぶ。
【０００５】
例えば、特許文献１では、ロータセンサのエッジを基準に進角を設定し、設定された値に応じて駆動信号の転流遅れを補償する制御方法が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特登録０３４２０３１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１では、あらかじめ、どのセンサのエッジでどの駆動信号が転流するかが決められているため、加速をしている場合は遅延角が０に近づき、それ以上加速することができなくなってしまう。また、この状態で無理に加速させようとすると、脱調等の誤動作を起こしてしまう可能性がある。
【０００８】
このような課題を鑑みて、本発明は、フィードバック制御モードにおいて高速まで加速することができ、かつ誤動作を防止するモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一側面としてのモータ制御装置は、ロータと、前記ロータの回転位置を検出する複数の位置検出部と、を備えたモータと、前記複数の位置検出部のうち、いずれか１つの位置検出部の出力に基づいて遅延角を設定する制御手段を有し、前記制御手段は、目標遅延角と現在の遅延角の差である遅延角変化量に基づいて、前記複数の位置検出部からいずれか１つの位置検出部を選択し、該選択された位置検出部の出力を用いて遅延角を設定することを特徴とする。
【００１０】
また、本発明の他の側面としてのモータの制御方法は、ロータと、前記ロータの回転位置を検出する複数の位置検出部と、を備えたモータの制御方法であって、前記複数の位置検出部のうち、いずれか１つの位置検出部の出力に基づいて遅延角を設定するステップと、を有し、前記設定するステップは、目標遅延角と現在の遅延角の差である遅延角変化量に基づいて、前記複数の位置検出部からいずれか１つの位置検出部を選択し、該選択された位置検出部の出力を用いて遅延角を設定することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、フィードバック制御モードにおいて高速まで加速することができ、かつ誤動作を防止するモータ制御装置を提供することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態に係るモータの斜視図である。
【図２】モータの断面図である。
【図３】モータ制御装置のブロック図である。
【図４】制御全体のシーケンスを示す図である。
【図５】オープンループ制御モードからフィードバック制御モードへの移行を表す信号波形図である。
【図６】従来のフィードバック制御モードの加速制御におけるホール素子信号の切り替えを表す信号波形図である。
【図７】実施例１のフィードバック制御モードの加速制御におけるホール素子信号の切り替えを表す信号波形図である。
【図８】実施例１のフィードバック制御モードの加速制御のフローチャートである。
【図９】従来のフィードバック制御モードの減速制御におけるホール素子信号の切り替えを表す信号波形図である。
【図１０】実施例１のフィードバック制御モードの減速制御におけるホール素子信号の切り替えを表す信号波形図である。
【図１１】実施例１のフィードバック制御モードの減速制御のフローチャートである。
【図１２】実施例２のフィードバック制御モードの加速制御におけるホール素子信号の切り替えを表す信号波形図である。
【図１３】実施例２のフィードバック制御モードの加速制御のフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施例について、図面を参照しながら詳細に説明する。各図において、同一の部材については同一の参照番号を付し、重複する説明は省略する。
【実施例１】
【００１４】
（モータの構造について）
図１は、本発明の実施形態に係るモータの斜視図である。なお、説明のため、一部の部品を破断して示している。
【００１５】
モータ１０１は、マグネット１０２を有するロータ１０３、第１のコイル１０４ａ、第２のコイル１０４ｂ、第１のヨーク１０５ａ、第２のヨーク１０５ｂおよび磁気センサ１０６を備える。このうち第１のコイル１０４ａ、第２のコイル１０４ｂ、第１のヨーク１０５ａ、第２のヨーク１０５ｂおよび磁気センサ１０６でステータを構成している。
【００１６】
マグネット１０２は、外周が周方向に多極（ｎ極）に磁化された円筒状の永久磁石である。マグネット１０２は、ロータ１０３の回転軸を中心とする回転方向に対し、磁力の強さが正弦波状に変化する磁束パターンを形成する。なお、本実施形態では、ｎ＝８に着磁されているが、この構成に限定されることはない。
【００１７】
ロータ１０３は、ステータに対して回転可能に支持され、マグネット１０２と一体に固定されている。
【００１８】
第１のコイル１０４ａおよび第２のコイル１０４ｂは、それぞれロータ１０２の回転中心を軸として、不図示のボビンに導線を多数回巻きつけて構成されている。
【００１９】
第１のヨーク１０５ａは、第１のコイル１０４ａによって励磁される磁極歯を複数有している。励磁される極を切り替えることで、ロータ１０３に与えるトルクを変化させることができる。同様に第２のヨーク１０５ｂは、第２のコイル１０４ｂによって磁極される励磁歯を複数有しており、励磁される極を切り替えることで、ロータ１０３に与えるトルクを変化させることができる。
【００２０】
磁気センサ１０６は、ホール素子などマグネット１０２の磁束を検出する非接触方式の磁気検出手段である。磁気センサ１０６は、図１では不図示の第１の感磁極（第１の位置検出部）１０６ａおよび第２の感磁極（第２の位置検出部）１０６ｂを備える。第１および第２の感磁極１０６ａ、１０６ｂは、マグネット１０２の回転に伴う磁界変化を検知することでロータ１０２の回転位置を検出する。磁気センサ１０６は、２つの出力端子を持ち、それぞれの感磁極を貫通する磁束密度に応じて電圧を出力する。感磁極が面しているマグネットがＮ極の場合は正の電圧を出力し、面しているマグネットがＳ極の場合は負の電圧を出力する。磁気センサ１０６の出力は、２値化された出力とし、Ｎ極の場合はＨｉｇｈ信号、Ｓ極の場合はＬｏｗ信号を出力する。本実施形態では、これらの値を元にデジタル制御を行う。ただし、磁気センサ１０６がアナログ出力を行うセンサであって、磁力出力を正弦波状で行う場合、その出力信号を元にアナログ制御でモータを制御するようにしてもよい。
（ホール素子信号の位相関係について）
図２は、モータ１０１を、ロータ１０３と垂直であり磁気センサ１０６の各感磁極を通る面で破断した断面図である。なお、図の簡素化のため、磁気センサ１０６と第１および第２の感磁極１０６ａ、１０６ｂ、第１のヨーク１０５ａ、第２のヨーク１０５ｂのみの位置関係を示している。
【００２１】
第２の感磁極１０６ｂからロータの回転方向θに物理角で２２．５°離れた位置に第１の感磁極１０６ａが配置される。第１の感磁極１０６ａからθ方向に６７．５°離れた位置に第２のヨーク１０５ｂの磁極歯が存在し、第２のヨーク１０５ｂからさらに同じ方向（θ方向）に２２．５°離れた位置に第１のヨーク１０５ａの磁極歯が存在する。
【００２２】
本実施形態ではマグネット１０２が８極に磁化されているため、物理的なロータ回転方向の角度２２．５°はセンサ出力の１波長を３６０°とした電気角に直すと９０°に相当する。図２には一組の第１および第２のヨーク１０５ａ、１０５ｂの磁極歯のみを例として図示したが、第１および第２のヨーク１０５ａ、１０５ｂの磁極歯は物理角で９０°ごと（電気角で３６０°ごと）にそれぞれ４つずつ存在する。
（モータ制御装置について）
図３は、モータ制御装置のブロック図であり、フィードバック制御を行うための構成を示している。
【００２３】
演算装置３０１は、信号計測処理部３０２、遅延角設定部３０３および駆動信号生成部（信号生成部）３０７を有する。
【００２４】
信号計測処理部３０２には、モータ１０１の磁気センサ１０６の２値化した信号出力が入力される。信号計測処理部３０２は、ホール素子信号の極性変化ごとにタイマカウント値を取得し、今回の値と前々回の値から周期を取得する。ただし、磁気センサ１０６の出力がアナログの場合は、モータ１０１と演算装置３０１の間に２値化回路を設けることで２値化信号を信号計測処理部３０２へ送る。
【００２５】
また、駆動信号生成部３０７から出力された駆動信号の計測もホール素子信号と同様に、駆動信号の極性変化ごとにタイマカウント値を取得し、今回の値と前々回の値から周期を取得する。
【００２６】
これら２つのホール素子信号と駆動信号のタイマカウント値から、遅延角設定部３０３で遅延角を決定する。ここでいう遅延角とは、ホール素子信号の極性変化時を基準とする駆動信号の遅延量のことをいう。遅延角は、時間データとして扱ってもよいし、電気角に換算したデータとして扱ってもよい。本実施形態では、電気角に換算したデータとして説明をしていく。
【００２７】
遅延角設定部３０３は、遅延角操作部３０４、基準信号選択部３０５および基準信号切り替え判断部３０６を有する。遅延角操作部３０４は遅延角を増減させ、基準信号選択部３０５は駆動信号を生成するための基準となるホール素子を選択する。また、基準信号切り替え判断部３０６は、基準信号として現在選択している一方のホール素子信号から他方のホール素子信号へと切り替えるか否かを判断する。
【００２８】
遅延角設定部３０３で設定した遅延角をもとに、駆動信号生成部３０７から駆動信号をモータドライバ（駆動部）３０８に送り、モータ１０１の励磁切り替えを行う。
【００２９】
なお、本実施形態に係るモータ制御装置は、カメラシステムの撮像装置に着脱可能なレンズ装置のレンズ駆動に使用されるなど種々の光学機器で使用される。
（モータの制御方法について）
モータ１０１は、オープンループ制御モードまたはフィードバック制御モードで駆動を行うことができる。
【００３０】
オープンループ制御モードで駆動とは、通常のステッピングモータの開ループ制御と同じであり、所定の時間間隔に従ってモータ１０１の各コイルに通電する極性を切り替える制御方法である。すなわち、入力された駆動パルス間隔（駆動周波数）と回転方向に従って、各コイルの通電を順次切り替えることで、ロータ１０３を所定速度で回転させることができる。また、入力された駆動パルス数に従って、ロータ１０３を所望の角度だけ回転させることができる。この駆動方式が本実施形態で行うオープンループ制御モードである。
【００３１】
フィードバック制御モードで駆動とは、入力された駆動パルス数と回転方向と、ホール素子信号と駆動信号のタイマカウント値から遅延角設定部３０３で決定する遅延角とに従って、各コイルに通電する極性を順次切り替える制御方法である。すなわち、所定の基準周波数のパルス信号を基準として駆動させるオープンループ制御モードに対し、フィードバック制御モードはホール素子が出力する信号の極性変化を基準にして駆動信号を生成する駆動モードであり、生成する駆動信号はホール素子信号に対して遅れ信号となる。本実施形態では、１つのホール素子信号に対し、１つの駆動信号を生成しているが、この形態に限られるものではない。この駆動方式が本実施例で行うフィードバック制御モードである。フィードバック制御モードでは、ロータの位置を基準としてコイルの通電切り替えを行うため、ロータの応答遅れによる脱調の発生を低減でき、高速駆動が可能となる。
（モータ駆動シーケンスについて）
図４は、制御全体のシーケンスを示す図である。具体的には、駆動開始から加速駆動、一定速での駆動、減速駆動、そして駆動停止までの全体の駆動速度、駆動モードの推移、およびホール素子信号の切り替えを示している。
【００３２】
まず、停止しているモータをオープンループ制御モードで加速駆動を開始し、所定の回転速度になったら、フィードバック制御モードに移行する。フィードバック制御モード中は、必要に応じて駆動信号を生成する基準信号となるホール素子信号を切り替えながら、目標最高速度まで到達させる。そして、目標速度を維持するように一定速で駆動後、減速駆動に移行し、加速駆動と同様、必要に応じてホール素子信号を切り替えながらオープンループ制御モード切り替え点まで減速駆動を行う。そして、再びフィードバック制御モードからオープンループ制御モードへと移行し、入力された駆動パルス数に達したら、停止させる。以上が駆動開始から停止までの全体の概略の制御フローである。
（オープンループ制御モードからフィードバック制御モードへの移行について）
駆動開始後の加速時におけるオープンループ制御モードからフィードバック制御モードへの移行について、図５を参照しながら説明する。図５は、正転方向（図２のθ方向）駆動時におけるオープンループ制御モードからフィードバック制御モードに移行時のホール素子信号と駆動信号の波形を示したものである。４つの波形は、信号計測処理部３０２へ入力されている信号である。ホール素子１０６ｂのホール素子信号をＨ１、ホール素子１０６ａのホール素子信号をＨ２、第１のコイル１０４ａの励磁切り替えに使用される駆動信号の＋側をＡ＋、第２のコイル１０４ｂの励磁切り替えに使用される駆動信号の＋側をＢ＋としている。
【００３３】
モータ１０１をオープンループ制御モードで駆動中、Ａ相駆動信号およびＢ相駆動信号の極性変化の度に、信号計測処理部３０２で２つのホール素子信号に対する遅延角を取得する。すなわち、Ａ相の立下りエッジ５０１において、ホール素子信号Ｈ１の立ち上がりエッジに対する遅延角Ｔ１とホール素子信号Ｈ２の立ち上がりエッジに対する遅延角Ｔ２を取得する。同様にＢ相の立ち上がりエッジ５０２において、ホール素子信号Ｈ２の立ち上がりエッジに対する遅延角Ｔ３と不図時のホール素子信号Ｈ１の立下りエッジに対する遅延角Ｔ４を取得している。これらの遅延角は、オープンループ制御モードやフィードバック制御モードのモードに関係なく、通電を切り替えるごと、すなわち、駆動信号の極性が変化するごとに取得され更新される。
【００３４】
本実施形態では、オープンループ制御モードからフィードバック制御モードへ移行する際に移行直前のホール素子信号Ｈ１、Ｈ２に対する遅延角の大小を比較し、小さいほうのホール素子信号を駆動信号生成の基準信号とする。また、切り替え直前の遅延角をフィードバック制御モードの初期遅延角として設定する。遅延角が小さい方のホール素子信号を基準信号として選択しているのは、遅延角が小さい方を選んだほうが、磁気センサの検出誤差による駆動信号の位相ずれの影響を抑えることができるためである。
【００３５】
図５では、遅延角Ｔ２＞遅延角Ｔ１よりホール素子信号Ｈ１をＡ相駆動信号生成のための基準信号とし、フィードバック制御モード移行後のホール素子信号Ｈ１の極性変化（図では立下り）に対して遅延角Ｔ１でＡ相が生成（図では立ち上がり）されるように設定する。同様に、ホール素子信号Ｈ２をＢ相駆動信号生成の基準信号とし、ホール素子信号Ｈ２の極性変化（図では立ち上がり）に対して遅延角Ｔ３でＢ相が生成（図では立下り）されるように設定する。このように初期遅延角の値をオープンループ制御モード時の直前の値を使用することにより、モータ１０１の個体差や磁気センサ１０６の検出ばらつきがあっても、スムーズなモード移行を実現できる。
【００３６】
なお、本実施形態ではフィードバック制御モードの初期遅延角の値としてオープンループ制御モード時の直前の遅延角を使用しているが、切り替え直前の遅延角から所定角を減算して得られた値を初期遅延角としてもよい。
【００３７】
また、本実施形態では、オープンループ制御モードで駆動中に所定周期に達したらオープンループ制御モードからフィードバック制御モードへ移行しているが、本発明はこれに限定されるものではない。
（フィードバック制御モード加速方法について）
次に、フィードバック制御モードに移行した後の加速制御について説明する。
【００３８】
フィードバック制御モードで加速する場合、遅延角操作部３０４でホール素子信号の極性変化時に対する駆動信号の遅延角から遅延角変化量ΔＴを減算した値を新たな遅延角（目標遅延角）として設定し、駆動信号を生成する。すなわち、コイルへの通電切り替え時に駆動信号の極性の切り替えタイミングを早くしていくことで加速制御を行う。本実施形態では、遅延角変化量ΔＴを時間ではなく、電気角で考える。電気角は（遅延時間÷ホール素子の周期×３６０）で求めることができる。時間ではなく電気角で考えている理由は、所定時間ずつ減算していくと、高速になるにつれて遅延角における所定時間の占める割合が大きくなり、加速が一定にできないからである。
【００３９】
例えば、Ａ相駆動信号がホール素子信号Ｈ１を基準として遅延角３０°で生成されている場合、加速を行うための所定角が１°であるとすると、次回Ａ相駆動信号は、ホール素子信号Ｈ１を基準として遅延角２９°で生成される。
【００４０】
加速するタイミングは、コイルへの通電切り替え時に毎回行ってもいいし、所定周期ごとに行ってもいいし、目標速度と現在速度との差に応じて変更してもよい。
【００４１】
しかし、加速を続けて遅延角操作を進めていくと遅延角が徐々に小さくなり、やがて遅延角は０°となる。さらに加速するには、理論上はマイナス（基準のホール素子信号Ｈ１のエッジよりも前にＡ相駆動信号を生成）の設定をしなくてはならない。マイナスになってしまうと、ホール素子信号Ｈ１を基準にＡ相の駆動信号を生成しているため、アルゴリズムが破綻し、加速制御ができなくなってしまう。この状態について図６を用いて説明する。
【００４２】
図６は、従来のフィードバック制御モードの加速制御におけるホール素子信号の切り替えを表す信号波形図である。図６では、説明の簡略化のため、Ｂ相駆動信号は省略し、Ａ相駆動信号のみ記載する。
【００４３】
ホール素子交換前では、Ａ相駆動信号はホール素子信号Ｈ１を基準に遅延角Ｔ６１だけ遅らせて生成されている。しかし、遅延角が時間換算して所定値ＴＨｍｉｎ（例えば５０μｓ）より小さくなった場合、図６（ａ）に示されるように、基準信号をホール素子信号Ｈ２に切り替え、ホール素子信号Ｈ２を基準に遅延角Ｔ６２だけ遅らせて駆動信号を生成する。ホール素子を切り替える所定値を時間換算としたのは、速度に関係なくなるべく近いホール素子を基準として駆動信号を生成するためである。駆動信号に近いホール素子を基準とする理由は、（オープンループ制御モードからフィードバック制御モードへの移行について）の項で述べた通りである。
【００４４】
モータ１０１を緩やかに加速させる場合（例えば１°ずつ）には、上述した方法でも問題ないが、急加速させたい場合（例えば１０°ずつ）に上述したホール素子交換方法では失敗してしまうことがある。
【００４５】
例えば、モータ１０１を１８００ＰＰＳ（２相駆動）で駆動しており、所定値ＴＨｍｉｎが５０μｓの場合について図６（ｂ）を用いて説明する。５０μｓは、１８００ＰＰＳでは電気角で約８°に相当する。遅延角Ｔ６３が時間換算して６０μｓの場合、所定値ＴＨｍｉｎより小さいためホール素子交換は行っていない。ここで、ホール素子信号Ｈ１の立下りタイミングで目標進角１０°の加速命令がされた場合、遅延角から１０°を減算するとマイナスの値となってしまう。遅延角操作部３０４にマイナスの値が設定されると、適切なタイミングでの駆動信号生成に失敗してしまう。そのため、モータ１０１は、急減速したり、現在の方向と逆方向に回転してしまったり、脱調してしまうことになる。
【００４６】
そこで、これらの現象を防ぐために、本実施例における加速方法について図７と図８を用いて説明する。図７は、フィードバック制御モードの加速制御におけるホール素子信号の切り替えを表す信号波形図である。図７中のＴは、時間軸を表している。図８は、フィードバック制御モードの加速制御のフローチャートである。図８の加速制御は、各ホール素子信号の極性変化ごとに行われる。
【００４７】
図７の時間ｔ２（ホール素子信号Ｈ１の立下り処理時）において、目標進角１０°の加速命令がされた場合を考える。
【００４８】
フィードバック制御モードでの加速制御を開始（Ｓ８０１、Ｓはステップの略である）し、ホール素子交換フラグが１にセットされているか判定を行う（Ｓ８０２）。ホール素子交換フラグとは、ホール素子交換の必要が生じたときに１となるフラグであり、初期値は０である。ホール素子交換フラグが１にセットされている場合はＳ８０３に進み、０にクリアされている場合はＳ８０５へ進む。今回は０にクリアされているため、Ｓ８０５に進む。
【００４９】
Ｓ８０５では、加速フラグが１にセットされているか判定を行う。加速フラグとは、遅延角を減少させて加速させるためのフラグである。本実施例では、数回に一回加速を行っているが、ホール素子の極性変化ごとに行ってもよいし、タイマー等で特定のタイミングごとに加速を行ってもよい。加速フラグが１にセットされている場合はＳ８０６に進み、０にクリアされている場合はＳ８１１に進む。時間ｔ２では、加速フラグが１にセットされているため、Ｓ８０６に進む。加速フラグが０にクリアされている場合、Ｓ８１１において、前回の遅延角を今回の遅延角に設定し、加速処理ルーチンを終了する（Ｓ８１２）。
【００５０】
Ｓ８０６では、前回遅延角と加速角１０°との比較を行う。この場合の前回遅延角とは、時間ｔ１においてホール素子信号Ｈ１がＡ相駆動信号を生成したときの遅延角Ｔ７１のことである。遅延角の方が大きければＳ８０７に進み、加速角の方が大きければＳ８０９に進む。図７では、遅延角Ｔ７１＜加速角１０°のためＳ８０９に進む。
【００５１】
Ｓ８０９では、時間ｔ１における遅延角Ｔ７１より加速角の方が大きく減算できないため、今回設定する遅延角を前回の遅延角Ｔ７１と同じ値に設定する。前回の遅延角と同じ値に設定するため、時間ｔ２では加速することができない。設定が終わるとＳ８１０に進む。
【００５２】
Ｓ８１０では、駆動信号を生成する基準ホール素子が現在のままでは要求される加速ができないため、基準となるホール素子を変更する処理を行う。変更する処理は、ホール素子交換フラグを１にセットすることで行う。ホール素子交換フラグはＡ相駆動信号、Ｂ相駆動信号のそれぞれに１つずつ持っている。フラグを１にセットしたら加速処理ルーチンを終了する（Ｓ８１２）。
【００５３】
時間ｔ３（ホール素子信号Ｈ２の立ち上がり処理時）になると、フィードバック制御モードでの加速制御を開始（Ｓ８０１）し、ホール素子交換フラグが１にセットされているか判定を行う（Ｓ８０２）。今回は、Ａ相駆動信号のホール素子交換フラグが１にセットされているため、Ｓ８０３に進む。
【００５４】
Ｓ８０３では、基準ホール素子の交換を行う。基準ホール素子の交換は、交換後のホール素子と駆動信号の前回の遅延角を、前回遅延角に設定することで行う。すなわち、前回遅延角を交換後のホール素子信号Ｈ２とＡ相駆動信号の遅延角Ｔ７２に設定する。設定が終わったら、ホール素子交換フラグを０にクリアする（Ｓ８０４）。
【００５５】
Ｓ８０５では、加速フラグが１にセットされているか判定を行う。時間ｔ２におけるホール素子信号Ｈ１の立下り処理のときから１にセットされているままなので、Ｓ８０６に進む。
【００５６】
Ｓ８０６では、前回遅延角と加速角１０°との比較を行う。前回遅延角は、Ｓ８０３でホール素子信号Ｈ２とＡ相駆動信号の遅延角Ｔ７２となっているので、Ｔ７２と加速角１０°の比較を行う。遅延角Ｔ７２は、加速角１０°より大きいため、Ｓ８０７に進む。
【００５７】
Ｓ８０７では、加速処理を行うため、前回遅延角（Ｔ７２）から加速角（１０°）を減算した値（Ｔ７２−１０°）を今回の遅延角に設定する。加速後、Ｓ８０８にて加速フラグを０にクリアし、加速処理ルーチンを終了する（Ｓ８１２）。
【００５８】
本実施例では、フィードバック制御モードで加速制御を行う場合、加速を行う前に前回の遅延角と加速角を比較し、加速角の方が大きいときは前回と同じ遅延角で駆動信号を生成し。その後、基準ホール素子を交換し、交換後に加速を行う。そのため、加速を行う場合でも、駆動信号の生成失敗を防ぐことができ、脱調等を防止することができる。このようにして、モータ１０１を目標速度まで加速することができる。
（フィードバック制御モード減速方法について）
次に、減速制御について説明する。
【００５９】
フィードバック制御モードで減速する場合、遅延角操作部３０４でホール素子信号の極性変化時に対する駆動信号の遅延角から遅延角変化量ΔＴを加算した値を新たな遅延角と設定し、駆動信号を生成する。すなわち、コイルへの通電切り替え時に駆動信号の極性の切り替えタイミングを遅くしていくことで減速制御を行う。遅延角変化量ΔＴは加速時と同様、電気角で考える。
【００６０】
例えば、Ａ相駆動信号がホール素子信号Ｈ１を基準として遅延角３０°で生成されている場合、減速を行うための所定角が１°であるとすると、次回Ａ相駆動信号は、ホール素子信号Ｈ１を基準として遅延角３１°で生成される。
【００６１】
減速するタイミングは、コイルへの通電切り替え時に毎回行ってもいいし、所定周期ごとに行ってもいいし、目標速度と現在速度との差に応じて変更してもよい。
【００６２】
しかし、減速を続けて遅延角操作を進めていくと遅延角が徐々に大きくなり、やがて駆動信号を生成している基準ホール素子より、他方のホール素子の方が、駆動信号に近くなってくる。この状態について図９を用いて説明する。
【００６３】
図９は、従来のフィードバック制御モードの減速制御におけるホール素子信号の切り替えを表す信号波形図である。図９では、説明の簡略化のため、Ｂ相駆動信号は省略し、Ａ相駆動信号のみ記載する。
【００６４】
図９（ａ）は、ホール素子信号Ｈ１を基準としてＡ相駆動信号を生成している状態である。遅延角Ｔ９１を減速するために徐々に大きくしていくと、やがて破線の状態となり、ホール素子信号Ｈ２を基準にＡ相駆動信号を生成したほうが、遅延角が小さいホール素子を選択することになり、検出誤差を小さくすることができる。そこで、加速時と同様に基準ホール素子を交換する必要が出てくる。
【００６５】
図９（ｂ）では、ホール素子交換前、Ａ相駆動信号はホール素子信号Ｈ１を基準に遅延角Ｔ９２だけ遅らせて生成されている。しかし、遅延角Ｔ９３が時間換算して所定値ＴＨｍｉｎ（例えば５０μｓ）より大きくなった場合、基準信号をホール素子信号Ｈ２に切り替え、ホール素子信号Ｈ２を基準に遅延角Ｔ９３だけ遅らせて駆動信号を生成する。
【００６６】
モータ１０１を緩やかに減速させる場合（例えば１°ずつ）には、上述した方法でも問題ないが、急減速させたい場合（例えば３０°ずつ）に上述したホール素子交換方法では失敗してしまうことがある。
【００６７】
例えば、モータ１０１を１５０００ＰＰＳ（２相駆動）で駆動しており、所定値ＴＨｍｉｎが５０μｓの場合について図９（ｃ）を用いて説明する。５０μｓは、１５０００ＰＰＳでは電気角で約６８°に相当する。遅延角Ｔ９４が時間換算して４５μｓの場合、所定値ＴＨｍｉｎより小さいためホール素子交換はおこなっていない。ここで、ホール素子信号Ｈ１の立下りタイミングで目標進角３０°の減速命令がされた場合、遅延角Ｔ９４に３０°加算してしまうと、設定遅延角が１８０°を超えてしまう。設定遅延角が１８０°を超えてしまうと、設定したタイミングでＡ相駆動信号を生成する前に、再度、ホール素子信号Ｈ１の極性変化があり、その極性変化で再び遅延角の設定を１８０°を超えた値にしてしまい、永遠にＡ相駆動信号が生成されなくなってしまう。このような現象が起こると、モータ１０１は脱調してしまう。
【００６８】
そこで、これらの現象を防ぐために、本実施例における減速方法について図１０と図１１を用いて説明する。図１０は、フィードバック制御モードの減速制御におけるホール素子信号の切り替えを表す信号波形図である。図１０中のＴは、時間軸を表している。図１１は、フィードバック制御モードの減速制御のフローチャートである。図１１の減速制御は、各ホール素子信号の極性変化ごとに行われる。
【００６９】
図１０の時間ｔ５（ホール素子信号Ｈ１の立下り処理時）において、目標進角３０°の減速命令がされた場合を考える。
【００７０】
フィードバック制御モードでの減速制御を開始（Ｓ１１０１）し、ホール素子交換フラグが１にセットされているか判定を行う（Ｓ１１０２）。ホール素子交換フラグが１にセットされている場合はＳ１１０３に進み、０にクリアされている場合はＳ１１０５に進む。今回は０にクリアされているため、Ｓ１１０５へ進む。
【００７１】
Ｓ１１０５では、減速フラグが１にセットされているか判定を行う。減速フラグとは、遅延角を増加させて減速させるためのフラグである。本実施例では、数回に一回減速を行っているが、ホール素子の極性変化ごとに行ってもよいし、タイマー等で特定のタイミングごとに行ってもよい。減速フラグが１にセットされている場合はＳ１１０６に進み、０にクリアされている場合はＳ１１１０に進む。時間ｔ５では、減速フラグが１にセットされているため、Ｓ１１０６に進む。減速フラグが０にクリアされている場合、Ｓ１１１０において、前回の遅延角を今回の遅延角に設定し、減速処理ルーチンを終了する（Ｓ８１２）。
【００７２】
Ｓ１１０６では、前回遅延角に減速角３０°を加算した値と１８０°（半周期）との比較を行う。この場合の前回遅延角とは、時間ｔ４においてホール素子信号Ｈ１がＡ相駆動信号を生成したときの遅延角Ｔ１０１のことである。（前回遅延角＋減速角）が１８０°より小さければＳ１１０７に進み、１８０°の方が大きければＳ１１０９に進む。図１０では、（遅延角Ｔ１０１＋減速角３０°）＞１８０°のためＳ１１０９に進む。
【００７３】
Ｓ１１０９では、前回の遅延角に減速角を加算すると１８０°を越えてしまい、Ａ相駆動信号を生成することができないため、今回はＡ相駆動信号生成のための設定を行わず、基準となるホール素子を変更する処理を行う。変更する処理は、ホール素子交換フラグを１にセットすることで行う。ホール素子交換フラグはＡ相駆動信号、Ｂ相駆動信号それぞれに１つずつ持っている。フラグを１にセットしたら減速処理ルーチンを終了する（Ｓ１１１１）。
【００７４】
時間ｔ６（ホール素子信号Ｈ２の立ち上がり処理時）になると、フィードバック制御モードでの減速制御を開始（Ｓ１１０１）し、ホール素子交換フラグが１にセットされているか判定を行う（Ｓ１１０２）。今回は、Ａ相駆動信号のホール素子交換フラグが１にセットされているため、Ｓ１１０３に進む。
【００７５】
Ｓ１１０３では、基準ホール素子の交換を行う。基準ホール素子の交換は、交換後のホール素子と駆動信号の前回の遅延角を、前回遅延角と設定することで行う。すなわち、前回遅延角を交換後のホール素子信号Ｈ２とＡ相駆動信号の遅延角Ｔ１０２に設定する。設定が終わったら、ホール素子交換フラグを０にクリアする（Ｓ１１０４）。
【００７６】
Ｓ１１０５では、減速フラグが１にセットされているか判定を行う。時間ｔ５におけるホール素子信号Ｈ１の立下り処理のときから１にセットされているままなので、Ｓ１１０６に進む。
【００７７】
Ｓ１１０６では、前回遅延角に減速角３０°を加算した値と１８０°との比較を行う。前回遅延角は、Ｓ１１０３でホール素子信号Ｈ２とＡ相駆動信号の遅延角Ｔ１０２となっているので、（遅延角Ｔ１０２＋減速角３０°）と１８０°の比較を行う。（遅延角Ｔ１０２＋減速角３０°）は、１８０°より小さいため、Ｓ１１０７に進む。
【００７８】
Ｓ１１０７では、減速処理を行うため、前回遅延角（Ｔ１０２）から減速角（３０°）を加算した値（Ｔ１０２＋３０°）を今回の遅延角に設定する。減速後、Ｓ１１０８にて減速フラグを０にクリアし、減速処理ルーチンを終了する（Ｓ１１１１）。
【００７９】
本実施例では、フィードバック制御モードで減速制御を行う場合、減速を行う前に前回の遅延角と減速角を加算した値を１８０°と比較し、１８０°の方が小さいときは駆動信号を生成せず、その後、基準ホール素子を交換し、交換後に減速を行う。そのため、急減速を行う場合でも、駆動信号の生成失敗を防ぐことができ、脱調等を防止することができる。このようにして、モータ１０１を目標速度まで減速することができる。
【００８０】
以上、実施例１では、フィードバック制御モードの加速時には、遅延角と加速角を比較し、加速角のほうが大きければ、今回は加速を行わず、ホール素子交換後に加速を行う。そうすることで、フィードバック制御モードにおいて高速まで加速することができ、かつ脱調等の誤動作を防止することができる。
【００８１】
また、減速時には、（遅延角＋減速角）を１８０°と比較し、１８０°の方が小さければ、今回は減速せず、ホール素子交換後に減速を行うことで、目標速度まで減速でき、かつ脱調等の誤動作を防止することができる。
【実施例２】
【００８２】
本実施例は、加速制御におけるホール素子交換時の遅延角設定方法を第１の実施例の設定方法からと変更したものである。本実施例のモータおよび構成は、第１の実施例と同様であるので、記載を省略する。
【００８３】
以下、図１２および図１３を参照して、本実施例の加速方法について説明する。図１２は、フィードバック制御モードの加速制御におけるホール素子信号の切り替えを表す信号波形図である。図１２中のＴは、時間軸を表している。図１３は、フィードバック制御モードの加速制御のフローチャートである。図１３の加速制御は、各ホール素子信号の極性変化ごとに行われる。なお、実施例１で説明した図７および図８と同じ要素については、実施例１と同符号を付して説明に代える。
【００８４】
図１２の時間ｔ８（ホール素子信号Ｈ１の立下り処理時）において、目標進角１０°の加速命令がされた場合を考える。
【００８５】
Ｓ８０６では、前回遅延角Ｔ７１と加速角１０°との比較を行う。ここでは、実施例１と同様前回遅延角Ｔ７１の方が小さい設定のため、Ｓ１３０１に進む。
【００８６】
Ｓ１３０１にて、今回の遅延角をＴｍｉｎに設定する。Ｔｍｉｎとは、設定できる遅延時間の最小値である。この値は、ホール素子の極性変化処理ルーチンに入ってから実際に遅延角を設定するまでにかかる時間を考慮し決定される値である。この値は、あらかじめ測定してわかっている値を用いてもいいし、ホール素子極性変化処理ルーチンのたびに遅延角設定までの時間をタイマーで計測し、その計測値にマージン値を加算した値としてもよい。
【００８７】
Ｓ１３０２にて、残り加速角を計算する。残り加速角とは、加速要求されている角度（＝１０°）から今回加速することができる角度を引いた値である。今回加速することができる角度は、（前回遅延角Ｔ７１の時間換算−Ｔｍｉｎ）／ホール素子信号Ｈ１の周期×３６０°で求めることができる。
【００８８】
Ｓ１３０３にて、要求加速角１０°のうち、今回の出力で限界まで加速を行うため、次回の遅延角設定時には、Ｓ１３０２で求めた残り加速角分のみ加速する。そのため、現在要求されている加速角１０°を変更する必要があるため、加速角変更要求フラグを１にセットする。
【００８９】
Ｓ８１２にて、加速処理ルーチンを終了する。
【００９０】
時間ｔ９（ホール素子信号Ｈ２の立ち上がり処理時）になると、フィードバック制御モードでの加速制御を開始する（Ｓ８０１）。
【００９１】
Ｓ８０６にて、前回遅延角がＳ８０３のホール素子交換において、Ｔ１２２に設定されているため、加速角１０°より大きくなり、Ｓ１３０４に進む。
【００９２】
Ｓ１３０４にて、加速変更フラグが１にセットされているか判定を行う。１にセットされている場合はＳ１３０５に進み、０にクリアされている場合はＳ８０７へ進む。０へクリアされているときの処理は実施例１と同じである。今回は、１にセットされているため、Ｓ１３０５に進む。
【００９３】
Ｓ１３０５にて、今回出力する遅延角の設定を行う。ここでは、時間ｔ８において加速できなかった分の加速を行うため、前回遅延角Ｔ１２２からＳ１３０２で求めた残り加速角を減算する。
【００９４】
Ｓ１３０６にて、加速角変更を終了したので、加速角変更要求フラグを０にクリアする。
【００９５】
Ｓ８１２にて、加速処理ルーチンを変更する。
【００９６】
以上、本実施例では、フィードバック制御モードの加速時に、遅延角と加速角を比較し、加速角のほうが大きければ、今回は極力まで加速し、ホール素子交換後に前回加速しきれなかった残りの加速を行う。そうすることで、フィードバック制御モードにおいて高速まで加速することができ、かつ脱調等の誤動作を防止することができる。
【００９７】
本実施例では、現在の基準ホール素子では加速しきれないと判断した場合も、ぎりぎりまで加速を行うため、実施例１に比べてより速く加速を行うことができる。
【００９８】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【符号の説明】
【００９９】
１０１              モータ
１０３              ロータ
１０６ａ、１０６ｂ  位置検出センサ（第１および第２の位置検出部）
３０４              遅延角操作部
３０５              基準信号選択部（選択部）
３０６              基準信号切り替え判断部（判断部）
３０７              駆動信号生成部（信号生成部）
３０８              モータドライバ（駆動部）
【図１】
2015033191.tif 000003
【図２】
2015033191.tif 000004
【図３】
2015033191.tif 000005
【図４】
2015033191.tif 000006
【図５】
2015033191.tif 000007
【図６】
2015033191.tif 000008
【図７】
2015033191.tif 000009
【図８】
2015033191.tif 000010
【図９】
2015033191.tif 000011
【図１０】
2015033191.tif 000012
【図１１】
2015033191.tif 000013
【図１２】
2015033191.tif 000014
【図１３】
2015033191.tif 000015