JP2015033191A - モータ制御装置 - Google Patents

モータ制御装置 Download PDF

Info

Publication number
JP2015033191A
JP2015033191A JP2013160256A JP2013160256A JP2015033191A JP 2015033191 A JP2015033191 A JP 2015033191A JP 2013160256 A JP2013160256 A JP 2013160256A JP 2013160256 A JP2013160256 A JP 2013160256A JP 2015033191 A JP2015033191 A JP 2015033191A
Authority
JP
Japan
Prior art keywords
delay angle
motor
position detection
hall element
angle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013160256A
Other languages
English (en)
Inventor
さゆり 井▲高▼
Sayuri Idaka
さゆり 井▲高▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2013160256A priority Critical patent/JP2015033191A/ja
Publication of JP2015033191A publication Critical patent/JP2015033191A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Lens Barrels (AREA)
  • Structure And Mechanism Of Cameras (AREA)
  • Control Of Stepping Motors (AREA)

Abstract

【課題】フィードバック制御モードにおいて、高速まで加速することができ、かつ誤動作を防止するモータ制御装置を提供すること。
【解決手段】ロータと、前記ロータの回転位置を検出する複数の位置検出部と、を備えたモータと、前記複数の位置検出部のうち、いずれか1つの位置検出部の出力に基づいて遅延角を設定する制御手段を有し、前記制御手段は、目標遅延角と現在の遅延角の差である遅延角変化量に基づいて、前記複数の位置検出部からいずれか1つの位置検出部を選択し、該選択された位置検出部の出力を用いて遅延角を設定する。
【選択図】図3

Description

本発明は、モータ制御装置に関し、特にフィードバック制御モードでの駆動が可能なモータ制御装置に関する。
ステッピングモータは小型、高トルク、高寿命といった特徴を有し、開ループ制御により容易にデジタル的な位置決め制御が可能である。このため、カメラや交換レンズ、プリンタ等の光学機器に広く用いられている。
しかしながら、ステッピングモータには、負荷が多いときや高速回転を行おうとしたときに、モータが脱調してしまうという問題があった。そのため、ステッピングモータに、ロータの回転位置を検出するエンコーダを取り付け、ロータの回転位置に応じてコイルへの通電状態を切り替える、いわゆるブラシレスDCモータと同様の動作を行わせることで、脱調を防ぐ方法が提案されている。
ここで、ステッピングモータの開ループ制御による駆動モードをオープンループ制御モードと呼び、ブラシレスDCモータと同様の制御による駆動モードをフィードバック制御モードと呼ぶ。
例えば、特許文献1では、ロータセンサのエッジを基準に進角を設定し、設定された値に応じて駆動信号の転流遅れを補償する制御方法が開示されている。
特登録03420317号公報
特許文献1では、あらかじめ、どのセンサのエッジでどの駆動信号が転流するかが決められているため、加速をしている場合は遅延角が0に近づき、それ以上加速することができなくなってしまう。また、この状態で無理に加速させようとすると、脱調等の誤動作を起こしてしまう可能性がある。
このような課題を鑑みて、本発明は、フィードバック制御モードにおいて高速まで加速することができ、かつ誤動作を防止するモータ制御装置を提供することを目的とする。
本発明の一側面としてのモータ制御装置は、ロータと、前記ロータの回転位置を検出する複数の位置検出部と、を備えたモータと、前記複数の位置検出部のうち、いずれか1つの位置検出部の出力に基づいて遅延角を設定する制御手段を有し、前記制御手段は、目標遅延角と現在の遅延角の差である遅延角変化量に基づいて、前記複数の位置検出部からいずれか1つの位置検出部を選択し、該選択された位置検出部の出力を用いて遅延角を設定することを特徴とする。
また、本発明の他の側面としてのモータの制御方法は、ロータと、前記ロータの回転位置を検出する複数の位置検出部と、を備えたモータの制御方法であって、前記複数の位置検出部のうち、いずれか1つの位置検出部の出力に基づいて遅延角を設定するステップと、を有し、前記設定するステップは、目標遅延角と現在の遅延角の差である遅延角変化量に基づいて、前記複数の位置検出部からいずれか1つの位置検出部を選択し、該選択された位置検出部の出力を用いて遅延角を設定することを特徴とする。
本発明によれば、フィードバック制御モードにおいて高速まで加速することができ、かつ誤動作を防止するモータ制御装置を提供することができる。
本発明の実施形態に係るモータの斜視図である。 モータの断面図である。 モータ制御装置のブロック図である。 制御全体のシーケンスを示す図である。 オープンループ制御モードからフィードバック制御モードへの移行を表す信号波形図である。 従来のフィードバック制御モードの加速制御におけるホール素子信号の切り替えを表す信号波形図である。 実施例1のフィードバック制御モードの加速制御におけるホール素子信号の切り替えを表す信号波形図である。 実施例1のフィードバック制御モードの加速制御のフローチャートである。 従来のフィードバック制御モードの減速制御におけるホール素子信号の切り替えを表す信号波形図である。 実施例1のフィードバック制御モードの減速制御におけるホール素子信号の切り替えを表す信号波形図である。 実施例1のフィードバック制御モードの減速制御のフローチャートである。 実施例2のフィードバック制御モードの加速制御におけるホール素子信号の切り替えを表す信号波形図である。 実施例2のフィードバック制御モードの加速制御のフローチャートである。
以下、本発明の実施例について、図面を参照しながら詳細に説明する。各図において、同一の部材については同一の参照番号を付し、重複する説明は省略する。
(モータの構造について)
図1は、本発明の実施形態に係るモータの斜視図である。なお、説明のため、一部の部品を破断して示している。
モータ101は、マグネット102を有するロータ103、第1のコイル104a、第2のコイル104b、第1のヨーク105a、第2のヨーク105bおよび磁気センサ106を備える。このうち第1のコイル104a、第2のコイル104b、第1のヨーク105a、第2のヨーク105bおよび磁気センサ106でステータを構成している。
マグネット102は、外周が周方向に多極(n極)に磁化された円筒状の永久磁石である。マグネット102は、ロータ103の回転軸を中心とする回転方向に対し、磁力の強さが正弦波状に変化する磁束パターンを形成する。なお、本実施形態では、n=8に着磁されているが、この構成に限定されることはない。
ロータ103は、ステータに対して回転可能に支持され、マグネット102と一体に固定されている。
第1のコイル104aおよび第2のコイル104bは、それぞれロータ102の回転中心を軸として、不図示のボビンに導線を多数回巻きつけて構成されている。
第1のヨーク105aは、第1のコイル104aによって励磁される磁極歯を複数有している。励磁される極を切り替えることで、ロータ103に与えるトルクを変化させることができる。同様に第2のヨーク105bは、第2のコイル104bによって磁極される励磁歯を複数有しており、励磁される極を切り替えることで、ロータ103に与えるトルクを変化させることができる。
磁気センサ106は、ホール素子などマグネット102の磁束を検出する非接触方式の磁気検出手段である。磁気センサ106は、図1では不図示の第1の感磁極(第1の位置検出部)106aおよび第2の感磁極(第2の位置検出部)106bを備える。第1および第2の感磁極106a、106bは、マグネット102の回転に伴う磁界変化を検知することでロータ102の回転位置を検出する。磁気センサ106は、2つの出力端子を持ち、それぞれの感磁極を貫通する磁束密度に応じて電圧を出力する。感磁極が面しているマグネットがN極の場合は正の電圧を出力し、面しているマグネットがS極の場合は負の電圧を出力する。磁気センサ106の出力は、2値化された出力とし、N極の場合はHigh信号、S極の場合はLow信号を出力する。本実施形態では、これらの値を元にデジタル制御を行う。ただし、磁気センサ106がアナログ出力を行うセンサであって、磁力出力を正弦波状で行う場合、その出力信号を元にアナログ制御でモータを制御するようにしてもよい。
(ホール素子信号の位相関係について)
図2は、モータ101を、ロータ103と垂直であり磁気センサ106の各感磁極を通る面で破断した断面図である。なお、図の簡素化のため、磁気センサ106と第1および第2の感磁極106a、106b、第1のヨーク105a、第2のヨーク105bのみの位置関係を示している。
第2の感磁極106bからロータの回転方向θに物理角で22.5°離れた位置に第1の感磁極106aが配置される。第1の感磁極106aからθ方向に67.5°離れた位置に第2のヨーク105bの磁極歯が存在し、第2のヨーク105bからさらに同じ方向(θ方向)に22.5°離れた位置に第1のヨーク105aの磁極歯が存在する。
本実施形態ではマグネット102が8極に磁化されているため、物理的なロータ回転方向の角度22.5°はセンサ出力の1波長を360°とした電気角に直すと90°に相当する。図2には一組の第1および第2のヨーク105a、105bの磁極歯のみを例として図示したが、第1および第2のヨーク105a、105bの磁極歯は物理角で90°ごと(電気角で360°ごと)にそれぞれ4つずつ存在する。
(モータ制御装置について)
図3は、モータ制御装置のブロック図であり、フィードバック制御を行うための構成を示している。
演算装置301は、信号計測処理部302、遅延角設定部303および駆動信号生成部(信号生成部)307を有する。
信号計測処理部302には、モータ101の磁気センサ106の2値化した信号出力が入力される。信号計測処理部302は、ホール素子信号の極性変化ごとにタイマカウント値を取得し、今回の値と前々回の値から周期を取得する。ただし、磁気センサ106の出力がアナログの場合は、モータ101と演算装置301の間に2値化回路を設けることで2値化信号を信号計測処理部302へ送る。
また、駆動信号生成部307から出力された駆動信号の計測もホール素子信号と同様に、駆動信号の極性変化ごとにタイマカウント値を取得し、今回の値と前々回の値から周期を取得する。
これら2つのホール素子信号と駆動信号のタイマカウント値から、遅延角設定部303で遅延角を決定する。ここでいう遅延角とは、ホール素子信号の極性変化時を基準とする駆動信号の遅延量のことをいう。遅延角は、時間データとして扱ってもよいし、電気角に換算したデータとして扱ってもよい。本実施形態では、電気角に換算したデータとして説明をしていく。
遅延角設定部303は、遅延角操作部304、基準信号選択部305および基準信号切り替え判断部306を有する。遅延角操作部304は遅延角を増減させ、基準信号選択部305は駆動信号を生成するための基準となるホール素子を選択する。また、基準信号切り替え判断部306は、基準信号として現在選択している一方のホール素子信号から他方のホール素子信号へと切り替えるか否かを判断する。
遅延角設定部303で設定した遅延角をもとに、駆動信号生成部307から駆動信号をモータドライバ(駆動部)308に送り、モータ101の励磁切り替えを行う。
なお、本実施形態に係るモータ制御装置は、カメラシステムの撮像装置に着脱可能なレンズ装置のレンズ駆動に使用されるなど種々の光学機器で使用される。
(モータの制御方法について)
モータ101は、オープンループ制御モードまたはフィードバック制御モードで駆動を行うことができる。
オープンループ制御モードで駆動とは、通常のステッピングモータの開ループ制御と同じであり、所定の時間間隔に従ってモータ101の各コイルに通電する極性を切り替える制御方法である。すなわち、入力された駆動パルス間隔(駆動周波数)と回転方向に従って、各コイルの通電を順次切り替えることで、ロータ103を所定速度で回転させることができる。また、入力された駆動パルス数に従って、ロータ103を所望の角度だけ回転させることができる。この駆動方式が本実施形態で行うオープンループ制御モードである。
フィードバック制御モードで駆動とは、入力された駆動パルス数と回転方向と、ホール素子信号と駆動信号のタイマカウント値から遅延角設定部303で決定する遅延角とに従って、各コイルに通電する極性を順次切り替える制御方法である。すなわち、所定の基準周波数のパルス信号を基準として駆動させるオープンループ制御モードに対し、フィードバック制御モードはホール素子が出力する信号の極性変化を基準にして駆動信号を生成する駆動モードであり、生成する駆動信号はホール素子信号に対して遅れ信号となる。本実施形態では、1つのホール素子信号に対し、1つの駆動信号を生成しているが、この形態に限られるものではない。この駆動方式が本実施例で行うフィードバック制御モードである。フィードバック制御モードでは、ロータの位置を基準としてコイルの通電切り替えを行うため、ロータの応答遅れによる脱調の発生を低減でき、高速駆動が可能となる。
(モータ駆動シーケンスについて)
図4は、制御全体のシーケンスを示す図である。具体的には、駆動開始から加速駆動、一定速での駆動、減速駆動、そして駆動停止までの全体の駆動速度、駆動モードの推移、およびホール素子信号の切り替えを示している。
まず、停止しているモータをオープンループ制御モードで加速駆動を開始し、所定の回転速度になったら、フィードバック制御モードに移行する。フィードバック制御モード中は、必要に応じて駆動信号を生成する基準信号となるホール素子信号を切り替えながら、目標最高速度まで到達させる。そして、目標速度を維持するように一定速で駆動後、減速駆動に移行し、加速駆動と同様、必要に応じてホール素子信号を切り替えながらオープンループ制御モード切り替え点まで減速駆動を行う。そして、再びフィードバック制御モードからオープンループ制御モードへと移行し、入力された駆動パルス数に達したら、停止させる。以上が駆動開始から停止までの全体の概略の制御フローである。
(オープンループ制御モードからフィードバック制御モードへの移行について)
駆動開始後の加速時におけるオープンループ制御モードからフィードバック制御モードへの移行について、図5を参照しながら説明する。図5は、正転方向(図2のθ方向)駆動時におけるオープンループ制御モードからフィードバック制御モードに移行時のホール素子信号と駆動信号の波形を示したものである。4つの波形は、信号計測処理部302へ入力されている信号である。ホール素子106bのホール素子信号をH1、ホール素子106aのホール素子信号をH2、第1のコイル104aの励磁切り替えに使用される駆動信号の+側をA+、第2のコイル104bの励磁切り替えに使用される駆動信号の+側をB+としている。
モータ101をオープンループ制御モードで駆動中、A相駆動信号およびB相駆動信号の極性変化の度に、信号計測処理部302で2つのホール素子信号に対する遅延角を取得する。すなわち、A相の立下りエッジ501において、ホール素子信号H1の立ち上がりエッジに対する遅延角T1とホール素子信号H2の立ち上がりエッジに対する遅延角T2を取得する。同様にB相の立ち上がりエッジ502において、ホール素子信号H2の立ち上がりエッジに対する遅延角T3と不図時のホール素子信号H1の立下りエッジに対する遅延角T4を取得している。これらの遅延角は、オープンループ制御モードやフィードバック制御モードのモードに関係なく、通電を切り替えるごと、すなわち、駆動信号の極性が変化するごとに取得され更新される。
本実施形態では、オープンループ制御モードからフィードバック制御モードへ移行する際に移行直前のホール素子信号H1、H2に対する遅延角の大小を比較し、小さいほうのホール素子信号を駆動信号生成の基準信号とする。また、切り替え直前の遅延角をフィードバック制御モードの初期遅延角として設定する。遅延角が小さい方のホール素子信号を基準信号として選択しているのは、遅延角が小さい方を選んだほうが、磁気センサの検出誤差による駆動信号の位相ずれの影響を抑えることができるためである。
図5では、遅延角T2>遅延角T1よりホール素子信号H1をA相駆動信号生成のための基準信号とし、フィードバック制御モード移行後のホール素子信号H1の極性変化(図では立下り)に対して遅延角T1でA相が生成(図では立ち上がり)されるように設定する。同様に、ホール素子信号H2をB相駆動信号生成の基準信号とし、ホール素子信号H2の極性変化(図では立ち上がり)に対して遅延角T3でB相が生成(図では立下り)されるように設定する。このように初期遅延角の値をオープンループ制御モード時の直前の値を使用することにより、モータ101の個体差や磁気センサ106の検出ばらつきがあっても、スムーズなモード移行を実現できる。
なお、本実施形態ではフィードバック制御モードの初期遅延角の値としてオープンループ制御モード時の直前の遅延角を使用しているが、切り替え直前の遅延角から所定角を減算して得られた値を初期遅延角としてもよい。
また、本実施形態では、オープンループ制御モードで駆動中に所定周期に達したらオープンループ制御モードからフィードバック制御モードへ移行しているが、本発明はこれに限定されるものではない。
(フィードバック制御モード加速方法について)
次に、フィードバック制御モードに移行した後の加速制御について説明する。
フィードバック制御モードで加速する場合、遅延角操作部304でホール素子信号の極性変化時に対する駆動信号の遅延角から遅延角変化量ΔTを減算した値を新たな遅延角(目標遅延角)として設定し、駆動信号を生成する。すなわち、コイルへの通電切り替え時に駆動信号の極性の切り替えタイミングを早くしていくことで加速制御を行う。本実施形態では、遅延角変化量ΔTを時間ではなく、電気角で考える。電気角は(遅延時間÷ホール素子の周期×360)で求めることができる。時間ではなく電気角で考えている理由は、所定時間ずつ減算していくと、高速になるにつれて遅延角における所定時間の占める割合が大きくなり、加速が一定にできないからである。
例えば、A相駆動信号がホール素子信号H1を基準として遅延角30°で生成されている場合、加速を行うための所定角が1°であるとすると、次回A相駆動信号は、ホール素子信号H1を基準として遅延角29°で生成される。
加速するタイミングは、コイルへの通電切り替え時に毎回行ってもいいし、所定周期ごとに行ってもいいし、目標速度と現在速度との差に応じて変更してもよい。
しかし、加速を続けて遅延角操作を進めていくと遅延角が徐々に小さくなり、やがて遅延角は0°となる。さらに加速するには、理論上はマイナス(基準のホール素子信号H1のエッジよりも前にA相駆動信号を生成)の設定をしなくてはならない。マイナスになってしまうと、ホール素子信号H1を基準にA相の駆動信号を生成しているため、アルゴリズムが破綻し、加速制御ができなくなってしまう。この状態について図6を用いて説明する。
図6は、従来のフィードバック制御モードの加速制御におけるホール素子信号の切り替えを表す信号波形図である。図6では、説明の簡略化のため、B相駆動信号は省略し、A相駆動信号のみ記載する。
ホール素子交換前では、A相駆動信号はホール素子信号H1を基準に遅延角T61だけ遅らせて生成されている。しかし、遅延角が時間換算して所定値THmin(例えば50μs)より小さくなった場合、図6(a)に示されるように、基準信号をホール素子信号H2に切り替え、ホール素子信号H2を基準に遅延角T62だけ遅らせて駆動信号を生成する。ホール素子を切り替える所定値を時間換算としたのは、速度に関係なくなるべく近いホール素子を基準として駆動信号を生成するためである。駆動信号に近いホール素子を基準とする理由は、(オープンループ制御モードからフィードバック制御モードへの移行について)の項で述べた通りである。
モータ101を緩やかに加速させる場合(例えば1°ずつ)には、上述した方法でも問題ないが、急加速させたい場合(例えば10°ずつ)に上述したホール素子交換方法では失敗してしまうことがある。
例えば、モータ101を1800PPS(2相駆動)で駆動しており、所定値THminが50μsの場合について図6(b)を用いて説明する。50μsは、1800PPSでは電気角で約8°に相当する。遅延角T63が時間換算して60μsの場合、所定値THminより小さいためホール素子交換は行っていない。ここで、ホール素子信号H1の立下りタイミングで目標進角10°の加速命令がされた場合、遅延角から10°を減算するとマイナスの値となってしまう。遅延角操作部304にマイナスの値が設定されると、適切なタイミングでの駆動信号生成に失敗してしまう。そのため、モータ101は、急減速したり、現在の方向と逆方向に回転してしまったり、脱調してしまうことになる。
そこで、これらの現象を防ぐために、本実施例における加速方法について図7と図8を用いて説明する。図7は、フィードバック制御モードの加速制御におけるホール素子信号の切り替えを表す信号波形図である。図7中のTは、時間軸を表している。図8は、フィードバック制御モードの加速制御のフローチャートである。図8の加速制御は、各ホール素子信号の極性変化ごとに行われる。
図7の時間t2(ホール素子信号H1の立下り処理時)において、目標進角10°の加速命令がされた場合を考える。
フィードバック制御モードでの加速制御を開始(S801、Sはステップの略である)し、ホール素子交換フラグが1にセットされているか判定を行う(S802)。ホール素子交換フラグとは、ホール素子交換の必要が生じたときに1となるフラグであり、初期値は0である。ホール素子交換フラグが1にセットされている場合はS803に進み、0にクリアされている場合はS805へ進む。今回は0にクリアされているため、S805に進む。
S805では、加速フラグが1にセットされているか判定を行う。加速フラグとは、遅延角を減少させて加速させるためのフラグである。本実施例では、数回に一回加速を行っているが、ホール素子の極性変化ごとに行ってもよいし、タイマー等で特定のタイミングごとに加速を行ってもよい。加速フラグが1にセットされている場合はS806に進み、0にクリアされている場合はS811に進む。時間t2では、加速フラグが1にセットされているため、S806に進む。加速フラグが0にクリアされている場合、S811において、前回の遅延角を今回の遅延角に設定し、加速処理ルーチンを終了する(S812)。
S806では、前回遅延角と加速角10°との比較を行う。この場合の前回遅延角とは、時間t1においてホール素子信号H1がA相駆動信号を生成したときの遅延角T71のことである。遅延角の方が大きければS807に進み、加速角の方が大きければS809に進む。図7では、遅延角T71<加速角10°のためS809に進む。
S809では、時間t1における遅延角T71より加速角の方が大きく減算できないため、今回設定する遅延角を前回の遅延角T71と同じ値に設定する。前回の遅延角と同じ値に設定するため、時間t2では加速することができない。設定が終わるとS810に進む。
S810では、駆動信号を生成する基準ホール素子が現在のままでは要求される加速ができないため、基準となるホール素子を変更する処理を行う。変更する処理は、ホール素子交換フラグを1にセットすることで行う。ホール素子交換フラグはA相駆動信号、B相駆動信号のそれぞれに1つずつ持っている。フラグを1にセットしたら加速処理ルーチンを終了する(S812)。
時間t3(ホール素子信号H2の立ち上がり処理時)になると、フィードバック制御モードでの加速制御を開始(S801)し、ホール素子交換フラグが1にセットされているか判定を行う(S802)。今回は、A相駆動信号のホール素子交換フラグが1にセットされているため、S803に進む。
S803では、基準ホール素子の交換を行う。基準ホール素子の交換は、交換後のホール素子と駆動信号の前回の遅延角を、前回遅延角に設定することで行う。すなわち、前回遅延角を交換後のホール素子信号H2とA相駆動信号の遅延角T72に設定する。設定が終わったら、ホール素子交換フラグを0にクリアする(S804)。
S805では、加速フラグが1にセットされているか判定を行う。時間t2におけるホール素子信号H1の立下り処理のときから1にセットされているままなので、S806に進む。
S806では、前回遅延角と加速角10°との比較を行う。前回遅延角は、S803でホール素子信号H2とA相駆動信号の遅延角T72となっているので、T72と加速角10°の比較を行う。遅延角T72は、加速角10°より大きいため、S807に進む。
S807では、加速処理を行うため、前回遅延角(T72)から加速角(10°)を減算した値(T72−10°)を今回の遅延角に設定する。加速後、S808にて加速フラグを0にクリアし、加速処理ルーチンを終了する(S812)。
本実施例では、フィードバック制御モードで加速制御を行う場合、加速を行う前に前回の遅延角と加速角を比較し、加速角の方が大きいときは前回と同じ遅延角で駆動信号を生成し。その後、基準ホール素子を交換し、交換後に加速を行う。そのため、加速を行う場合でも、駆動信号の生成失敗を防ぐことができ、脱調等を防止することができる。このようにして、モータ101を目標速度まで加速することができる。
(フィードバック制御モード減速方法について)
次に、減速制御について説明する。
フィードバック制御モードで減速する場合、遅延角操作部304でホール素子信号の極性変化時に対する駆動信号の遅延角から遅延角変化量ΔTを加算した値を新たな遅延角と設定し、駆動信号を生成する。すなわち、コイルへの通電切り替え時に駆動信号の極性の切り替えタイミングを遅くしていくことで減速制御を行う。遅延角変化量ΔTは加速時と同様、電気角で考える。
例えば、A相駆動信号がホール素子信号H1を基準として遅延角30°で生成されている場合、減速を行うための所定角が1°であるとすると、次回A相駆動信号は、ホール素子信号H1を基準として遅延角31°で生成される。
減速するタイミングは、コイルへの通電切り替え時に毎回行ってもいいし、所定周期ごとに行ってもいいし、目標速度と現在速度との差に応じて変更してもよい。
しかし、減速を続けて遅延角操作を進めていくと遅延角が徐々に大きくなり、やがて駆動信号を生成している基準ホール素子より、他方のホール素子の方が、駆動信号に近くなってくる。この状態について図9を用いて説明する。
図9は、従来のフィードバック制御モードの減速制御におけるホール素子信号の切り替えを表す信号波形図である。図9では、説明の簡略化のため、B相駆動信号は省略し、A相駆動信号のみ記載する。
図9(a)は、ホール素子信号H1を基準としてA相駆動信号を生成している状態である。遅延角T91を減速するために徐々に大きくしていくと、やがて破線の状態となり、ホール素子信号H2を基準にA相駆動信号を生成したほうが、遅延角が小さいホール素子を選択することになり、検出誤差を小さくすることができる。そこで、加速時と同様に基準ホール素子を交換する必要が出てくる。
図9(b)では、ホール素子交換前、A相駆動信号はホール素子信号H1を基準に遅延角T92だけ遅らせて生成されている。しかし、遅延角T93が時間換算して所定値THmin(例えば50μs)より大きくなった場合、基準信号をホール素子信号H2に切り替え、ホール素子信号H2を基準に遅延角T93だけ遅らせて駆動信号を生成する。
モータ101を緩やかに減速させる場合(例えば1°ずつ)には、上述した方法でも問題ないが、急減速させたい場合(例えば30°ずつ)に上述したホール素子交換方法では失敗してしまうことがある。
例えば、モータ101を15000PPS(2相駆動)で駆動しており、所定値THminが50μsの場合について図9(c)を用いて説明する。50μsは、15000PPSでは電気角で約68°に相当する。遅延角T94が時間換算して45μsの場合、所定値THminより小さいためホール素子交換はおこなっていない。ここで、ホール素子信号H1の立下りタイミングで目標進角30°の減速命令がされた場合、遅延角T94に30°加算してしまうと、設定遅延角が180°を超えてしまう。設定遅延角が180°を超えてしまうと、設定したタイミングでA相駆動信号を生成する前に、再度、ホール素子信号H1の極性変化があり、その極性変化で再び遅延角の設定を180°を超えた値にしてしまい、永遠にA相駆動信号が生成されなくなってしまう。このような現象が起こると、モータ101は脱調してしまう。
そこで、これらの現象を防ぐために、本実施例における減速方法について図10と図11を用いて説明する。図10は、フィードバック制御モードの減速制御におけるホール素子信号の切り替えを表す信号波形図である。図10中のTは、時間軸を表している。図11は、フィードバック制御モードの減速制御のフローチャートである。図11の減速制御は、各ホール素子信号の極性変化ごとに行われる。
図10の時間t5(ホール素子信号H1の立下り処理時)において、目標進角30°の減速命令がされた場合を考える。
フィードバック制御モードでの減速制御を開始(S1101)し、ホール素子交換フラグが1にセットされているか判定を行う(S1102)。ホール素子交換フラグが1にセットされている場合はS1103に進み、0にクリアされている場合はS1105に進む。今回は0にクリアされているため、S1105へ進む。
S1105では、減速フラグが1にセットされているか判定を行う。減速フラグとは、遅延角を増加させて減速させるためのフラグである。本実施例では、数回に一回減速を行っているが、ホール素子の極性変化ごとに行ってもよいし、タイマー等で特定のタイミングごとに行ってもよい。減速フラグが1にセットされている場合はS1106に進み、0にクリアされている場合はS1110に進む。時間t5では、減速フラグが1にセットされているため、S1106に進む。減速フラグが0にクリアされている場合、S1110において、前回の遅延角を今回の遅延角に設定し、減速処理ルーチンを終了する(S812)。
S1106では、前回遅延角に減速角30°を加算した値と180°(半周期)との比較を行う。この場合の前回遅延角とは、時間t4においてホール素子信号H1がA相駆動信号を生成したときの遅延角T101のことである。(前回遅延角+減速角)が180°より小さければS1107に進み、180°の方が大きければS1109に進む。図10では、(遅延角T101+減速角30°)>180°のためS1109に進む。
S1109では、前回の遅延角に減速角を加算すると180°を越えてしまい、A相駆動信号を生成することができないため、今回はA相駆動信号生成のための設定を行わず、基準となるホール素子を変更する処理を行う。変更する処理は、ホール素子交換フラグを1にセットすることで行う。ホール素子交換フラグはA相駆動信号、B相駆動信号それぞれに1つずつ持っている。フラグを1にセットしたら減速処理ルーチンを終了する(S1111)。
時間t6(ホール素子信号H2の立ち上がり処理時)になると、フィードバック制御モードでの減速制御を開始(S1101)し、ホール素子交換フラグが1にセットされているか判定を行う(S1102)。今回は、A相駆動信号のホール素子交換フラグが1にセットされているため、S1103に進む。
S1103では、基準ホール素子の交換を行う。基準ホール素子の交換は、交換後のホール素子と駆動信号の前回の遅延角を、前回遅延角と設定することで行う。すなわち、前回遅延角を交換後のホール素子信号H2とA相駆動信号の遅延角T102に設定する。設定が終わったら、ホール素子交換フラグを0にクリアする(S1104)。
S1105では、減速フラグが1にセットされているか判定を行う。時間t5におけるホール素子信号H1の立下り処理のときから1にセットされているままなので、S1106に進む。
S1106では、前回遅延角に減速角30°を加算した値と180°との比較を行う。前回遅延角は、S1103でホール素子信号H2とA相駆動信号の遅延角T102となっているので、(遅延角T102+減速角30°)と180°の比較を行う。(遅延角T102+減速角30°)は、180°より小さいため、S1107に進む。
S1107では、減速処理を行うため、前回遅延角(T102)から減速角(30°)を加算した値(T102+30°)を今回の遅延角に設定する。減速後、S1108にて減速フラグを0にクリアし、減速処理ルーチンを終了する(S1111)。
本実施例では、フィードバック制御モードで減速制御を行う場合、減速を行う前に前回の遅延角と減速角を加算した値を180°と比較し、180°の方が小さいときは駆動信号を生成せず、その後、基準ホール素子を交換し、交換後に減速を行う。そのため、急減速を行う場合でも、駆動信号の生成失敗を防ぐことができ、脱調等を防止することができる。このようにして、モータ101を目標速度まで減速することができる。
以上、実施例1では、フィードバック制御モードの加速時には、遅延角と加速角を比較し、加速角のほうが大きければ、今回は加速を行わず、ホール素子交換後に加速を行う。そうすることで、フィードバック制御モードにおいて高速まで加速することができ、かつ脱調等の誤動作を防止することができる。
また、減速時には、(遅延角+減速角)を180°と比較し、180°の方が小さければ、今回は減速せず、ホール素子交換後に減速を行うことで、目標速度まで減速でき、かつ脱調等の誤動作を防止することができる。
本実施例は、加速制御におけるホール素子交換時の遅延角設定方法を第1の実施例の設定方法からと変更したものである。本実施例のモータおよび構成は、第1の実施例と同様であるので、記載を省略する。
以下、図12および図13を参照して、本実施例の加速方法について説明する。図12は、フィードバック制御モードの加速制御におけるホール素子信号の切り替えを表す信号波形図である。図12中のTは、時間軸を表している。図13は、フィードバック制御モードの加速制御のフローチャートである。図13の加速制御は、各ホール素子信号の極性変化ごとに行われる。なお、実施例1で説明した図7および図8と同じ要素については、実施例1と同符号を付して説明に代える。
図12の時間t8(ホール素子信号H1の立下り処理時)において、目標進角10°の加速命令がされた場合を考える。
S806では、前回遅延角T71と加速角10°との比較を行う。ここでは、実施例1と同様前回遅延角T71の方が小さい設定のため、S1301に進む。
S1301にて、今回の遅延角をTminに設定する。Tminとは、設定できる遅延時間の最小値である。この値は、ホール素子の極性変化処理ルーチンに入ってから実際に遅延角を設定するまでにかかる時間を考慮し決定される値である。この値は、あらかじめ測定してわかっている値を用いてもいいし、ホール素子極性変化処理ルーチンのたびに遅延角設定までの時間をタイマーで計測し、その計測値にマージン値を加算した値としてもよい。
S1302にて、残り加速角を計算する。残り加速角とは、加速要求されている角度(=10°)から今回加速することができる角度を引いた値である。今回加速することができる角度は、(前回遅延角T71の時間換算−Tmin)/ホール素子信号H1の周期×360°で求めることができる。
S1303にて、要求加速角10°のうち、今回の出力で限界まで加速を行うため、次回の遅延角設定時には、S1302で求めた残り加速角分のみ加速する。そのため、現在要求されている加速角10°を変更する必要があるため、加速角変更要求フラグを1にセットする。
S812にて、加速処理ルーチンを終了する。
時間t9(ホール素子信号H2の立ち上がり処理時)になると、フィードバック制御モードでの加速制御を開始する(S801)。
S806にて、前回遅延角がS803のホール素子交換において、T122に設定されているため、加速角10°より大きくなり、S1304に進む。
S1304にて、加速変更フラグが1にセットされているか判定を行う。1にセットされている場合はS1305に進み、0にクリアされている場合はS807へ進む。0へクリアされているときの処理は実施例1と同じである。今回は、1にセットされているため、S1305に進む。
S1305にて、今回出力する遅延角の設定を行う。ここでは、時間t8において加速できなかった分の加速を行うため、前回遅延角T122からS1302で求めた残り加速角を減算する。
S1306にて、加速角変更を終了したので、加速角変更要求フラグを0にクリアする。
S812にて、加速処理ルーチンを変更する。
以上、本実施例では、フィードバック制御モードの加速時に、遅延角と加速角を比較し、加速角のほうが大きければ、今回は極力まで加速し、ホール素子交換後に前回加速しきれなかった残りの加速を行う。そうすることで、フィードバック制御モードにおいて高速まで加速することができ、かつ脱調等の誤動作を防止することができる。
本実施例では、現在の基準ホール素子では加速しきれないと判断した場合も、ぎりぎりまで加速を行うため、実施例1に比べてより速く加速を行うことができる。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
101 モータ
103 ロータ
106a、106b 位置検出センサ(第1および第2の位置検出部)
304 遅延角操作部
305 基準信号選択部(選択部)
306 基準信号切り替え判断部(判断部)
307 駆動信号生成部(信号生成部)
308 モータドライバ(駆動部)

Claims (9)

  1. ロータと、前記ロータの回転位置を検出する複数の位置検出部と、を備えたモータと、
    前記複数の位置検出部のうち、いずれか1つの位置検出部の出力に基づいて遅延角を設定する制御手段を有し、
    前記制御手段は、目標遅延角と現在の遅延角の差である遅延角変化量に基づいて、前記複数の位置検出部からいずれか1つの位置検出部を選択し、該選択された位置検出部の出力を用いて遅延角を設定することを特徴とするモータ制御装置。
  2. 前記複数の位置検出部は、前記ロータの周方向に所定の間隔で配置されていることを特徴とする請求項1に記載のモータ制御装置。
  3. 前記モータを加速制御する際に、前記現在の遅延角が前記遅延角変化量より小さい場合、
    前記制御手段は、前記現在の遅延角を設定する際に用いられた位置検出部とは異なる位置検出部の出力により、前記目標遅延角を設定することを特徴とする請求項1または2に記載のモータ制御装置。
  4. 前記モータを加速制御する際に、前記現在の遅延角が前記遅延角変化量より小さい場合、
    前記制御手段は、前記現在の遅延角を設定する際に用いられた位置検出部の出力により設定可能な遅延角を設定した後、前記現在の遅延角を設定する際に用いられた位置検出部とは異なる位置検出部の出力により、前記目標遅延角を設定することを特徴とする請求項1または2に記載のモータ制御装置。
  5. 前記モータを減速制御する際に、前記現在の遅延角に前記遅延角変化量を加算した値が、前記現在の遅延角を設定する際に用いられた位置検出部の出力の半周期に対応する電気角より大きい場合、
    前記制御手段は、前記現在の遅延角を設定する際に用いられた位置検出部とは異なる位置検出部の出力により、前記目標遅延角を設定することを特徴とする請求項1または2に記載のモータ制御装置。
  6. 前記モータは、オープンループ制御されるモードと、前記第1および第2の位置検出部を用いて制御されるフィードバック制御モードのいずれかによって制御され、
    前記制御手段は、前記モータがフィードバック制御モードにより制御されているときに、前記位置検出部の出力を用いて遅延角を設定することを特徴とする請求項1乃至5のいずれか1項に記載のモータ制御装置。
  7. 請求項1乃至6のいずれか1項に記載のモータ制御装置を有することを特徴とするレンズ装置。
  8. 請求項7に記載のレンズ装置と、
    前記レンズ装置を着脱可能な撮像装置と、を有することを特徴とするカメラシステム。
  9. ロータと、前記ロータの回転位置を検出する複数の位置検出部と、を備えたモータの制御方法であって、
    前記複数の位置検出部のうち、いずれか1つの位置検出部の出力に基づいて遅延角を設定するステップと、を有し、
    前記設定するステップは、目標遅延角と現在の遅延角の差である遅延角変化量に基づいて、前記複数の位置検出部からいずれか1つの位置検出部を選択し、該選択された位置検出部の出力を用いて遅延角を設定することを特徴とするモータの制御方法。
JP2013160256A 2013-08-01 2013-08-01 モータ制御装置 Pending JP2015033191A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013160256A JP2015033191A (ja) 2013-08-01 2013-08-01 モータ制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013160256A JP2015033191A (ja) 2013-08-01 2013-08-01 モータ制御装置

Publications (1)

Publication Number Publication Date
JP2015033191A true JP2015033191A (ja) 2015-02-16

Family

ID=52518116

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013160256A Pending JP2015033191A (ja) 2013-08-01 2013-08-01 モータ制御装置

Country Status (1)

Country Link
JP (1) JP2015033191A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017005812A (ja) * 2015-06-05 2017-01-05 キヤノン株式会社 モータ制御装置、モータ制御方法及びモータ制御プログラム
CN108880358A (zh) * 2018-07-02 2018-11-23 哈尔滨理工大学 基于角位移无时滞观测器的永磁同步电机控制方法及装置
CN111082718A (zh) * 2019-12-26 2020-04-28 中国科学院长春光学精密机械与物理研究所 一种应用于星载仪器的步进电机控制***

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017005812A (ja) * 2015-06-05 2017-01-05 キヤノン株式会社 モータ制御装置、モータ制御方法及びモータ制御プログラム
CN108880358A (zh) * 2018-07-02 2018-11-23 哈尔滨理工大学 基于角位移无时滞观测器的永磁同步电机控制方法及装置
CN111082718A (zh) * 2019-12-26 2020-04-28 中国科学院长春光学精密机械与物理研究所 一种应用于星载仪器的步进电机控制***
CN111082718B (zh) * 2019-12-26 2021-06-29 中国科学院长春光学精密机械与物理研究所 一种应用于星载仪器的步进电机控制***

Similar Documents

Publication Publication Date Title
US9124203B2 (en) Motor having pulse mode and brushless mode, and control method and apparatus of the motor
US9553535B2 (en) Motor driving apparatus
JP5656354B2 (ja) 駆動装置
JPH11215894A (ja) ステッピングモータの制御装置
JP2015033191A (ja) モータ制御装置
JP2008271698A (ja) モータ駆動装置
JP2019071028A (ja) モータ制御装置、モータ制御方法、及び撮像装置
US10756657B2 (en) Motor control apparatus and motor control method for reducing influence of magnetic fluxes from yokes
JP5441624B2 (ja) モータ駆動装置
JP2017161455A (ja) 制御装置
JP5511445B2 (ja) モータ及びモータの駆動制御方法
JP2019047722A (ja) モータ駆動装置およびモータ駆動方法
JP5489738B2 (ja) モータ制御装置および光学機器
JP2011259635A (ja) 駆動装置
JP3888278B2 (ja) モータ制御装置
JP6528638B2 (ja) 電子制御装置
US10547256B2 (en) Motor driving apparatus capable of reliably starting motor, and method of controlling same
JP2015162945A (ja) モータの制御方法およびモータ駆動装置
JP2013027156A (ja) モータ制御装置
JP2009011087A (ja) ステッピングモータのマイクロステップ制御方法および電動装置
JP5159287B2 (ja) 像振れ補正装置、撮像装置および像振れ補正装置の制御方法
US10985678B2 (en) Motor control apparatus and motor control method
JP2020048362A (ja) アクチュエータ駆動装置、その制御方法、および制御プログラム
JP2020048335A (ja) アクチュエータ制御装置、その制御方法、および制御プログラム
JP2019122170A (ja) モータ制御装置及び方法