(57)【特許請求の範囲】
【請求項１】
複数のコイルで繋がれた各給電点に電流を流し込む流し込み手段と前記各給電点から電流を引込む引込み手段と、前記流し込み手段あるいは引き込み手段によって前記給電点の状態を決める状態設定手段と、前記各給電点の前記状態から別の状態に変更する状態変更手段とを持ち、前記状態変更手段により状態を変更することで５相のステッピングモータを駆動するモータ駆動制御装置において、
前記状態設定手段に基づいて、前記引込み手段による前記給電点から電流を引込む状態と前記流し込み手段による前記給電点に電流を流し込む状態の何れか一方の状態にして給電点をショートさせるショート手段を持ち、前記ショート手段は各給電点を同時にショートさせ、前記流し込み手段による流し込む時間および前記引込み手段による引き込み時間によって前記状態設定手段の給電点の状態を設定し、前記状態変更手段によって前記コイルに流れる電流を制御し、前記モータを駆動し、前記引込み手段による引き込み時間と前記流し込み手段による流し込む時間とのどちらか１つもしくは引き込み時間と流し込む時間を組み合わせた期間である制御期間と前記ショート手段によるショート期間を個別に設定できる、
ことを特徴とするモータ駆動制御装置。
【請求項２】
前記引込み手段、流し込み手段、ショート手段はＦＥＴ素子のＰチャンネル型とＮチャンネル型とで構成されていることを特徴とする請求項１記載のモータ駆動制御装置。
【請求項３】
前記引込み手段、流し込み手段、ショート手段はＦＥＴ素子のＮチャンネル型とＮチャンネル型とで構成されていることを特徴とする請求項１記載のモータ駆動制御装置。
【請求項４】
前記引込み手段による引き込み時間と前記流し込み手段による流し込む時間とのどちらか１つもしくは引き込み時間と流し込む時間を組み合わせた期間である制御期間、前記ショート手段によるショート期間と前記制御期間とを合わせた期間を全期間としたときに、前記全期間が繰り返し連続して周期的に起きる連続周期手段を持ち、前記モータコイルの流れる電流を前記ショート期間の時間幅を変えることでコイルに流れる電流を制御するショート期間可変手段を持つことを特徴とする請求項１記載のモータ駆動制御装置。
【請求項５】
前記引込み手段による引き込み時間と前記流し込み手段による流し込む時間とのどちらか１つもしくは引き込み時間と流し込む時間を組み合わせた期間である制御期間、前記ショート手段によるショート期間と前記制御期間とを合わせた期間を全期間としたときに、前記全期間が繰り返し連続して周期的に起きる連続周期手段を持ち、前記モータコイルの流れる電流を前記制御期間の時間幅を変えることでコイルに流れる電流を制御する制御期間可変手段を持つことを特徴とする請求項１記載のモータ駆動制御装置。
【請求項６】
前記引込み手段と前記流し込み手段とのどちらか１つもしくは時間的に組み合わせた期間を制御期間、前記ショート手段によるショート期間と前記制御期間とを合わせた期間を全期間としたときに、前記全期間が繰り返し連続して周期的に起きる連続周期手段を持ち、前記モータコイルの流れる電流を前記全期間の時間幅を変えることでコイルに流れる電流を制御する全期間可変手段を持つことを特徴とする請求項５記載のモータ駆動制御装置。
【請求項７】
前記全期間可変手段もしくは前記制御期間可変手段を前記モータに流す電流量に従い切り換える切換え手段を持つことを特徴とする請求項７記載のモータ駆動制御装置。
【請求項８】
前記切換え手段により前記モータに流れる電流量が多い場合は前記制御期間可変手段、少ないときには前記全期間可変手段を選択する選択手段を持つことを特徴とする請求項７記載のモータ駆動制御装置。
【請求項９】
前記モータに流れる電流を検知する検知手段を持ち、前記検知手段からの情報をもとに演算し演算結果に基づいて電流を制御するフィードバック制御において、前記演算結果に基づいて前記全期間可変手段により全期間幅を変化させ電流を制御する全期間制御手段を持つことを特徴とする請求項８記載のモータ駆動制御装置。
【請求項１０】
前記モータに流れる電流を検知する検知手段を持ち、前記検知手段からの情報をもとに演算し演算結果に基づいて電流を制御するフィードバック制御において、前記演算結果に基づいて前記制御期間可変手段により制御期間幅を変化させ電流を制御する制御期間制御手段を持つことを特徴とする請求項５記載のモータ駆動制御装置。
【請求項１１】
前記モータに流れる電流を検知する検知手段を持ち、前記検知手段からの情報をもとに演算し演算結果に基づいて電流を制御するフィードバック制御において、前記演算結果に基づいて前記ショート期間可変手段によりショート期間幅を変化させ電流を制御するショート期間制御手段を持つことを特徴とする請求項４記載のモータ駆動制御装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、ステッピングモータの制御装置に関するものである。
【０００２】
【従来の技術】
近年の複写機の高速化に伴い幅広い速度で安定して動作する５相のステッピングモータが使用され、また高画質を実現するためにマイクロステップ駆動されている。
【０００３】
ペンタゴン結線の５相ステッピングモータを例にとり従来例の駆動法について説明する。図２５は従来例の５相ステッピングモータ駆動制御のブロック図である。図２５において、制御部１１に相切換えのための歩進パルスクロック（以下Ｍｃｌｋ）を与え、モータスタート、回転方向その他種々の駆動条件を指示する。制御部１１はＭｃｌｋに従って駆動パルス信号を発生させゲート部１７、１８、Ｐｃｈ用電圧変換回路３１３を通りドライブ部１２にて駆動パルス信号に従った駆動電流をモータ１３へ供給しモータ１３を駆動する。
【０００４】
この時適正なトルクで回転させるように制御部１１からＤ／Ａ変換器３１１でアナログ信号に変えたＶｒｅｆ信号と電流検知抵抗１４で得られたモータの電流検知信号Ｖｅｒｒとを比較してそれに応じた電圧Ｖｍをドライブ部１２に供給するようにして指示された電流に保つ定電流制御を行っている（図２６）。
【０００５】
図２はドライブ部１２の内部構成ブロックである。図２において、モータ１３に電流を流すための素子にＦＥＴ（Ｐｃｈ、Ｎｃｈプッシュプル構成）を使用している。定電流制御をしているためモータ１３を低速で駆動する時などモータ１３内の逆起電圧も小さくなった場合、Ｖｍも小さくなりＰｃｈ側のＦＥＴのゲート電圧も足りなくなるという問題が生じる。そのためＰｃｈ用電圧変換回路３１３ではマイナス電源を使用してゲート電圧を確保するよう電圧変換を行っている（図２７）。
【０００６】
次に駆動信号について説明する。
図２のモータ１３のペンタゴン結線図を用いて駆動方法について説明する。図のようにモータコイルＬａ、Ｌｂ、Ｌｃ、Ｌｄ、Ｌｅは環状に繋がっており、各給電点Ａ、Ｂ、Ｃ、Ｄ、Ｅへドライブ部１２から電流が供給され各コイルに流れる電流（Ｉａ、Ｉｂ、Ｉｃ、Ｉｄ、Ｉｅ）は決定される。
【０００７】
ここで各コイル電流（Ｉａ、Ｉｂ、Ｉｃ、Ｉｄ、Ｉｅ）が矢印の方向に流れた時に各コイルによりモータ１３のロータの作用するトルクのベクトルがＴＬａ、ＴＬｂ、ＴＬｃ、ＴＬｄ、ＴＬｅとなるようにコイルは結線されている。ロータは各トルクのベクトル合成されたトルクＴＬのベクトル方向に従った安定点に停止するよう移動する。
【０００８】
図１０はある４相励磁ポイントから次の４相励磁ポイント（フルステップ駆動で１ステップ）の励磁パターンによるトルクのベクトルを示したものである。
ここで基本電流をＩ０とすると図１０（ａ）では
Ｉａ＝Ｉ０、Ｉｂ＝Ｉ０、Ｉｃ＝０、Ｉｄ＝−Ｉ０、Ｉｅ＝−Ｉ０
となるように励磁され、これによりトルクのベクトルＴＬ０が合成される（図１１）。
【０００９】
図１０（ｂ）では
Ｉａ＝０、Ｉｂ＝Ｉ０、Ｉｃ＝Ｉ０、Ｉｄ＝−Ｉ０、Ｉｅ＝−Ｉ０
となるように励磁され、これによりトルクのベクトルＴＬ１が合成される（図１１）。
【００１０】
これらの励磁パターンをＴＬ０からＴＬ１に変えたとき、モータ１３は４相励磁で１ステップ（電気角３６°）駆動されることになる。このように合成トルクが３６°ずつずれていくように励磁パターンを変えていくことで４相励磁フルステップ駆動は行われる。この動作を１０回繰り返すことで電気角は１周（３６０°移動）しＴＬ０と同じ励磁パターンとなる。
【００１１】
次に従来例のマイクロステップ駆動制御について説明する。
上記ＴＬ０からＴＬ１へのベクトルの変位は図１２を見るとＴＬａとＴＬｃのみの変化によるものであり、ＴＬａを徐々に減らし、ＴＬｃを徐々に増加させていけばＴＬ０からＴＬ１の間を推移することは容易に推測できる。
【００１２】
表１にＴＬ０からＴＬ１までの１ステップを５分割し任意の一定の時間間隔（ｔ０  ｔ５  ｔ０：ＴＬ０  ｔ５：ＴＬ１）でマイクロステップを行う時の各給電点（Ａ、Ｂ、Ｃ、Ｄ、Ｅ）の給電パターン’（Ｄｕｔｙ制御）及びそのＤｕｔｙから換算した平均電流（Ｉａ、Ｉｂ、Ｉｃ、Ｉｄ、Ｉｅ）のそれぞれの時間での切換わり変位を示す。変化するトルクのベクトルはＴＬａとＴＬｃで図１２（ａ）のように直線上を変位していくため合成トルクＴＬは図１２（ｂ）のように変位して従ってＴＬに対応してロータは移動しマイクロステップを行う。
【００１３】
【発明が解決しようとする課題】
しかしながら、上記のような構成では、速度に応じて適正なトルクを与えるためにモータの総電流を制御する電流制御回路（図２６）（即ち、定電流制御部３１２）が図２５に示すように設けられねばならない。また低速度時のモータ電圧Ｖｍは非常に小さくなるためＦＥＴ素子のゲート電圧を確保するためにマイナス電源を使用する図２７に示すようなゲート回路（即ち、Ｐｃｈ用電圧変換回路３１３）も必要となり、回路が複雑になり、コストアップの大きな要因となっている。なお、図２８は、制御部の回路ブロック図であり、図２９は、動作を説明するための図である。
【００１４】
したがって、本発明の目的は、簡単な回路で大幅なコストダウンできるモータ駆動制御装置を提供することにある。
【００１５】
【課題を解決するための手段】
本発明では上記した電流制御回路、ゲート回路、マイナス電源を使用せず、ＦＥＴ素子のデューティ制御の１周期と次の周期の間にショート期間（各給電点に同時に、モータ内コイルにＦＥＴ素子からの電流を供給せず、ＮｃｈもしくはＰｃｈ側ＦＥＴのいずれかをオンにする期間）を設け、それら期間幅を制御することでモータに流れる総電流を制御するようにしたものである。
【００１６】
【実施例】
（実施例１）
本発明の実施例１について説明する。
図１は本発明の実施例のブロック図である。図１において、１１は５相ステッピングモータ１３を制御するための制御部、１２はモータ１３を制御部１１で生成された信号情報をもとにモータ１３を駆動するためのドライブ部、１３は５相ステッピングモータ、１４はモータ１３に流れる電流量を検出する電流検知抵抗、１５は電流検知抵抗１４より得られた信号を平滑化及びノイズを除去するためのローパスフィルタ（以下ＬＰＦ）、１６はＬＰＦ１５からの信号をデジタル信号に変換し制御部１１に入力するＡＤ変換器、１７、１８は制御部１１からのモータ駆動パルス信号をドライブ部１２を駆動するための信号に変換するためのゲート回路、１１０はモータ１３の相切換のための信号（以下Ｍｃｌｋ）を制御部１１に入力するためのＭｃｌｋ入力端子、１１１はモータ１３の駆動の開始／停止を指示するためのスタート／ストップ信号を制御部１１に入力するためのスタート／ストップ信号入力端子（以下ＳＳ入力端子）、１１２はモータ１３の回転方向を決めるための回転方向信号を制御部１１に入力するための回転方向信号入力端子、１１３は適正なトルクを発生するための目標電流値、マイクロステップ駆動時の分割数等モータの制御条件データを制御部１１に入力するためのデータ入力端子である。
【００１７】
図２はドライブ部１２とモータ１３の内部構成とその結線図である。
まずドライブ部１２について説明する。ａ＋〜ｅ＋、ａ−〜ｅ−に入力された駆動パルスはＦＥＴ素子ＦＥＴ０〜ＦＥＴ９（ＦＥＴ０・２・４・６・８はＰｃｈ、ＦＥＴ１・３・５・７・９はＮｃｈ）をオン／オフしてＭ＋から駆動パルスに指定されたモータ１３の給電点に電流を供給し、駆動パルスに指定された給電点からの電流をＭ−へと放出する。
【００１８】
図２のモータ１３の内部構成で、２１、２２、２３、２４、２５はモータコイルＬａ、Ｌｂ、Ｌｃ、Ｌｄ、Ｌｅでありコイル同士環状になるように結線されている（ペンタゴン結線）。Ａ、Ｂ、Ｃ、Ｄ、Ｅは給電点であり、この給電点からコイルに電流を供給または給電点へコイルからの電流を放出する。図２で、各コイルに流れる電流をＩａ、Ｉｂ、Ｉｃ、Ｉｄ、Ｉｅとし矢印方向にそれぞれが流れるときにコイルに発生するモータ１３内の図示していないロータを引き付けるトルクのベクトルをそれぞれＴＬａ、ＴＬｂ、ＴＬｃ、ＴＬｄ、ＴＬｅとする。
【００１９】
図３、図４はゲート回路Ｐ、Ｎの回路図である。図３において、ＴＲ３０〜３４、ＴＲ４０〜４４はトランジスタでありエミッタ接地となっている。Ｒ３０〜３４はプルアップ抵抗である。Ｒ４０、４２、４４、４６、４８とＲ４１、４３、４５、４７、４９はそれぞれのコレクタ電圧の上限をＲ４０、４２、４４、４６、４８とＲ４１、４３、４５、４７、４９の分割比でＶｄｄを分割した電圧を出力する。
【００２０】
図３ではそれぞれのトランジスタＴＲ３０〜３４がオフの場合コレクタ電圧出力はＶｄｄとなり、トランジスタＴＲ３０〜３４がオンしたときコレクタ電圧出力はグランドレベルになる。
【００２１】
図４でそれぞれのトランジスタＴＲ４０〜４４がオフの場合コレクタ電圧出力はＶｄｄ×Ｒ４０／Ｒ４１、Ｖｄｄ×Ｒ４２／Ｒ４３・・・Ｖｄｄ×Ｒ４８／Ｒ４９となり、トランジスタＴＲ４０〜４４がオンしたときコレクタ電圧出力はグランドレベルになる。
【００２２】
図５は制御部１１内のブロック図であり、５１は各部を制御する駆動パルス制御部、５２は種々のパルス期間を設定するためのカウンタでＲＥＳＥＴに信号ＣＮＴＲＳＴが入力される（立ち上がりエッジ）と、カウント値を０にする。５３はＯＮ期間とＳＨＯＲＴ期間の切換え信号を発生する切換え信号信号発生部、５４はマイクロステップ駆動に必要な駆動パルスを与えるための駆動パルス発生器、５５はモータ１３の各給電点をショート状態またはオン状態に切り換えるためのＯＮ／ショート切換え部である。
【００２３】
図６は駆動パルス制御部内の電流制御のための一般的なＰＩ制御のブロック図である。図６において、Ａ／Ｄ変換器からの任意の一定時間でサンプリングしたデジタル化信号ＡＤＥＲＲは駆動パルス制御部５１に取り込まれ、目標値（ＴＡＲＧＥＴ）と比較され、その差分値が比例制御（Ｐ動作）と積分制御（Ｉ動作ｉ）を実施しそれぞれ演算結果を足し合わせｋ１ゲイン倍されてショート期間ＰＲＤデータとして扱われる。
【００２４】
図７は切換え信号発生部５３のブロック図である。図７において、７０１、７０２は駆動パルス制御部５１からのデータＤＴＹＰＲＤまたはＰＲＤをそれぞれストアするレジスタ、７０３、７０４はレジスタ７０１、７０２とカウンタ５２からのカウントデータＣＤとを比較し、その結果マイナスであれば”Ｌ”、０かプラスであれば”Ｈ”を出力する比較器、７０５はＤフリップフロップである。
【００２５】
図８は駆動パルス発生記５４のブロック図である。図８において、８０１〜８１０は駆動パルス制御部５１からのＤＴＹＷの各データをストアするレジスタでＲＥＧＡ＋、ＲＥＧＢ＋、ＲＥＧＣ＋、ＲＥＧＤ＋、ＲＥＧＥ＋、ＲＥＧＡ−、ＲＥＧＢ−、ＲＥＧＣ−、ＲＥＧＤ−、ＲＥＧＥ−として、８１１〜８２０はレジスタ８０１〜８１０にストアされたデータとカウンタ５２からのカウントデータＣＤとを比較して比較結果がマイナスであればＰＡ＋〜ＰＥ＋、ＰＡ−〜ＰＥ−に”Ｌ”を、０かプラスであれば”Ｈ”をＣＬＫ信号に同期して出力する比較器である。
【００２６】
図９はＯＮ／ＯＦＦ切換え部５５のブロック図である。図９において、９０１〜９１０は駆動パルス制御部５１からの信号ＰＡ＋〜ＰＥ＋、ＰＡ−〜ＰＥ−か”Ｌ”レベルまたは”Ｈ”レベルかを切換え信号発生部５３からの切換え信号ＳＨＴＴＭにより選択し、ＷＡ＋〜ＷＥ＋、ＷＡ−〜ＷＥ−に出力するためのセレクタである。
【００２７】
図１０（ａ）、（ｂ）はモータ１３のある励磁相と次の励磁相の励磁パターンを示した図である。図１０（ａ）、図１０（ｂ）において、コイルに流れるそれぞれの電流は矢印で図示されている。
【００２８】
図１１は図１０に示す励磁パターンによる各コイルに発生したトルクベクトルＴａ、Ｔｂ、Ｔｃ、Ｔｄ、Ｔｅを合成したトルクベクトルを表す。
【００２９】
図１２はＴＬ０からＴＬ１までをマイクロステップ駆動で任意の時間間隔Ｔ０で５分割したときのそれぞれの時間（ｔ０〜ｔ５）でのトルクベクトルを表す。
【００３０】
まず全体の動作について説明する。
ＳＳ入力端子１１１からモータスタートが指示され、Ｍｃｌｋ入力端子１１０からＭｃｌｋが入力されると、制御部１１では回転方向、目標電流値、マイクロステップ分割数等の条件に従い、Ｍｃｌｋに同期してモータ駆動パルスを発生し、モータ１３の相電流を目標電流値となるように制御する。制御部１１からの駆動パルスは一旦ゲート回路１７、１８にてドライブ部１２を駆動するための信号に変換されドライブ部１２に入力される。ドライブ部１２ではゲート回路１７、１８からのモータ駆動パルスに従いモータ１３に電流を供給してモータ１３を駆動する。ドライブ部１２のＭ−からの電流（モータ１３の総電流）を電流検出抵抗１４にて検出しＬＰＦ１５で平滑及びノイズ除去してＡＤ変換器１６でデジタル信号に変換し制御部１１に入力する。制御部１１では入力されたＡＤ変換器１６からのデジタル信号に基づいてモータ１３の総電流を制御する。
【００３１】
次にマイクロステップ駆動について説明する。
ここで基本電流をＩ０とすると図１０（ａ）では
Ｉａ＝Ｉ０、Ｉｂ＝Ｉ０、Ｉｃ＝０、Ｉｄ＝−Ｉ０、Ｉｅ＝−Ｉ０
となるように励磁され、これによりトルクのベクトルＴＬ０が合成される。
図１０（ｂ）では
Ｉａ＝０、Ｉｂ＝Ｉ０、Ｉｃ＝Ｉ０、Ｉｄ＝−Ｉ０、Ｉｅ＝−Ｉ０
となるように励磁され、これによりトルクのベクトルＴＬ１が合成される。この時各コイル電流の絶対値は等しく従って各発生トルクの絶対値も等しい。
【００３２】
図１０で、ＴＬ０からＴＬ１に励磁相を移行させた時の駆動が４相励磁である。図１０から実際に変化しているトルクはＴＬａとＴＬｃであり、このＴＬａとＴＬｃの割合を徐々に変化させることでマイクロステップ駆動を行う。
【００３３】
図１０ではＴＬ０からＴＬ１までのＴＬａとＴＬｃの合成トルクをＴＬａｃとすると
ＴＬａｃ＝（１−Ｐ）×ＴＬａ＋Ｐ×ＴＬｃ                    （１）
Ｐ＝ｎ×Ｔ０／Ｔ（Ｔ＝５Ｔ０、ｎ＝０、１、２、３、４、５）
に従ってトルクベクトルを変化させた図が図１２（ａ）であり、ＴＬ０からＴＬ１間を時系列的に５分割している。ＴＬａｃは図１２（ａ）よりｔ０からｔ５の直線上を移動する。これを全体の合成ベクトルＴＬで表すと図１２（ｂ）になり、図１２（ａ）と同じようにｔ０からｔ５の直線上を移動する。このようにＴＬａとＴＬｃ、すなわち電流Ｉａ、Ｉｃを変化させることでマイクロステップ駆動は可能となる。実際にはコイル電流は各給電点の状態をプッシュ側（電流供給側）にするかプル側（電流引込み側）にするかで決定され、電流量を変化させるために電流を流す期間と流さない期間を交互に繰り返すデューティ制御が行われる。またこの周期はマイクロステップで１ステップ期間（Ｔ０）よりも充分小さく設定されている。
【００３４】
図１２でのＴＬａとＴＬｃを変化させたときのｔ０〜ｔ５までの各給電点の状態（Ａ、Ｂ、Ｃ、Ｄ、Ｅ）とコイル電流（Ｉａ、Ｉｂ、Ｉｃ、Ｉｄ、Ｉｅ）の関係を表１に示す。表１で給電点の値で、＋はプッシュ側、−はプル側を表し、コイル電流の値は上記デューティ比を５０％であるときの電流の絶対値Ｉ０としてそれに対するパーセンテージで表している。
【００３５】
上記ＴＬ０、ＴＬ１は４相励磁のフルステップ位置であり、ＴＬ０からＴＬ１までの電気角は３６°となる。フルステップで３６°ずつ移動するよう励磁相を切換えながら４相励磁したときは１０ステップでもとの励磁相に戻る。これを上記マイクロステップに従って電気角を１周したときの各コイルの電流変化を図１３に示す。このように各コイル電流は台形波状に駆動されるため、このマイクロステップ駆動を台形波状駆動とも呼ぶ。
【００３６】
このマイクロステップ駆動を実現するためのハード構成を説明する。
図５において、カウンタ５２は駆動パルス制御部５１からＣＬＫに従いパルス幅等を生成するためのカウントデータ（以下ＣＤ）を生成し、リセット時にはＣＤ値は１にセットされる。図７の切換え信号発生部５３で、レジスタ７０１には駆動パルス制御部から給電点をプッシュまたはプル状態にする期間（デューティ制御期間）を設定するためのデータ（ＤＴＹＰＲＤ）がストアされ、レジスタ７０２には全体の制御期間（ＰＲＤ）がストアされている。これらの値とＣＤとの値を比較器７０３、７０４で比較し、その結果、カウンタリセット信号ＣＮＴＲＳＴ、ＳＨＴＴＭを生成する。そのタイムチャートを図１４に示す。ここではレジスタ７０１には４００、７０２には３００の値がストアされている。
【００３７】
ＣＬＫに従いＣＤ値はカウントアップしていき、ＣＤ値が３００まではＳＨＴＴＭは”Ｈ”であり３００以降で比較器７０４の出力が”Ｌ”となる。ＣＮＴＲＳＴはＣＤ値が４００になった時点で”Ｈ”となり、このＣＮＴＲＳＴが”Ｈ”になることによりカウンタ５２はリセットされ、カウンタ値は１となる。このようにしてレジスタ７０１に設定された制御期間”Ｈ”、レジスタ７０２に設定された期間（デューティ制御期間）は”Ｌ”となり、これを繰り返した信号ＳＨＴＴＭが生成される。
【００３８】
図８では、レジスタ８０１〜８１０に駆動パルス制御部５１より給電点のデューティを決定するための期間データがストアされ、比較器８１１〜８２０でＣＤ値と比較され、ＰＡ〜ＰＥ（＋または−）に出力される。全デューティ制御期間を”Ｌ”にしたいときは設定値を３００（デューティ制御期間設定値レジスタ７０２）より大きい値に、”Ｈ”にしたいときは０に設定する。
【００３９】
図９では図８からの信号からＰＡ＋〜ＰＥ＋はレベル”Ｌ”、ＰＡ−〜ＰＥ−はレベル”Ｈ”の信号をセレクタ９０１〜９１０でＳＨＴＴＭ信号に従い選択され、ＷＡ〜ＷＥに出力される。
【００４０】
ちなみに給電点デューティ制御期間（７０２設定値＝Ｐ）ではカウント値（８０１〜８１０）の期間はプル側となるためプッシュ期間のデューティ比をＱ％としたときのレジスタ８０１〜８１０の設定値Ｘは下記の通りとなる。
Ｘ＝Ｐ−Ｐ×Ｑ／１００                                      （２）
【００４１】
図１５は給電点Ａの状態を例にとり信号の流れを説明するための図である。
ＣＤ値は図のようにＳＨＴＴＭが”Ｈ”（デューティ制御期間）のとき０〜２９９までをカウントアップし、”Ｌ”（ショート期間）のときは０〜１００までをカウントアップする。このときレジスタ８１１、８１６に１４９が設定されているとすると、ＰＡ＋、ＰＡ−はＳＨＴＴＭが”Ｈ”期間でＣＤ値が１５０までは”Ｌ”となり１５０以降は”Ｈ”となりＳＨＴＴＭによりセレクタ９０１、９０６でＰＡ＋、ＰＡ−を選択しており、ＷＡ＋、ＷＡ−はＰＡに従い、給電点ＡはＣＤ値が０〜１４９まではプル側、１５０〜３００まではプッシュ状態となる。ＳＨＴＴＭが”Ｌ”期間でＷＡ＋、ＷＡ−はＰＡ＋、ＰＡ−がどの状態でも関係なくＷＡ＋は”Ｌ”、ＷＡ−は”Ｌ”となり給電点Ａはショート状態となる。
上記のようにレジスタ７０１、７０２、８０１〜８１０に各期間データをストアすることにより各給電点デューティ制御期間とその期間のプッシュ／プルの割合及びショート期間を個別に設定できる。
【００４２】
図１６は図１３でのｔ２前後のマイクロステップ駆動の給電点状態を示したものであり、デューティ制御期間の給電点Ａ、Ｂ、Ｃ、Ｄ、Ｅのデューティ比（プッシュ期間の割合）はｔ２を境に１００％、６０％、１０％、０％、５０％から１００％、７０％、２０％、０％、５０％へと変わっている。図１４のようにショート期間はデューティ期間＋ショート期間に対して１／４の期間となるよう設定される。各レジスタの設定値はデューティ制御期間はレジスタ７０１で３００、ショート期間はレジスタ７０１と７０２で１００（＝４００−３００）、給電点Ａではデューティ制御期間はプッシュ側になっているため８０１、８０６は０、Ｂではデューティ６０％から７０％に変わるから８０２、８０７は式（２）より１２０（＝３００−３００×６０／１００）から９０（＝３００−３００×７０／１００）に設定を変え、Ｃではデューティ１０％から２０％に変化するから８０３、８０８は２７０（＝３００−３００×１０／１００）から２４０（＝３００−３００×２０／１００）に設定を変え、Ｄではプル側になっているため８０４、８０９は３０１（３００より大きい値）に設定され、Ｅでは５０％であるので８０５、８１０は１５０（＝３００−３００×５０／１００）に設定されている。
【００４３】
図１６の給電点パターンから各コイルの流れる電流波形を示したものは図１７である。
コイル電流Ｉｄ、Ｉｅは給電点Ａがプッシュ側、Ｄがプル側になっておりＥはプル／プッシュを５０％で切換えるためＥがプル時はＩｅがＡからＥに向かって流れ、Ｉｄは流れず、プッシュ時はＩｄがＥからＤに向かって流れＩｅは流れない。
【００４４】
またショート期間中はすべての給電点でショートになり電流を供給しないためこの期間は電流は０と考えられる。従って平均電流はＳＨＴＴＭの１周期で規定できショート期間がないときのデューティ比５０％のときの電流値をＩ０（これがコイルに流れる平均電流の最大値となる）とし、デューティ制御期間をＴｄｕｔｙ、制御期間をＴｃｎｔとしたとき、ＳＨＴＴＭ１周期の平均電流Ｉｄ、Ｉｅは
Ｉｄ＝−Ｉ０×Ｔｄｕｔｙ／Ｔｃｎｔ
Ｉｅ＝−Ｉ０×Ｔｄｕｔｙ／Ｔｃｎｔ                          （３）
となり、ここでは
Ｉｄ＝−Ｉ０×３／４
Ｉｅ＝−Ｉ０×３／４
となる。実際にはコイルによる充放電により図１７のＩｄ、Ｉｅの電流波形のように平滑化される。
【００４５】
コイル電流Ｉａ、Ｉｂ、Ｉｃは図１７のように給電点Ａがプッシュ側、Ｄがプル側になっておりＢ、Ｃを図１６のようにしているので、ＩａはＢがプル側、Ｃもプル側でＡからＣに向かって流れ、それ以外の期間は流れない。ＩｂはＢがプッシュ側でＣがプル側のときにＢからＣに向かって流れ、それ以外の期間は流れない。ＩｃはＢがプッシュ側、Ｃもプッシュ側のときにＣからＤに向かって流れそれ以外の期間は流れない。
【００４６】
Ｉａの平均電流は図示したようにデューティ期間中の電流がオンした期間の比で規定される。
従ってＢのデューティ比をＸ、Ｃのデューティ比をＹとしたとき
Ｉａ＝（２×（１−Ｘ／１００））×Ｉ０×Ｔｄｕｔｙ／Ｔｃｎｔ  （４）
同じようにして
Ｉｂ＝（２×（Ｘ−Ｙ／１００））×Ｉ０×Ｔｄｕｔｙ／Ｔｃｎｔ  （５）
Ｉｃ＝（２×（１−Ｙ／１００））×Ｉ０×Ｔｄｕｔｙ／Ｔｃｎｔ  （６）
ここでＸ−Ｙ＝５０％としデューティ比をリニアに変えていくことで台形波駆動となる。
従って、Ｉａ、Ｉｂ、Ｉｃは
0004454723.tif 000002
となる。このようにすると｜ＴＬｂ｜＝｜ＴＬｄ｜＝｜ＴＬｅ｜となり、給電点Ｂ、Ｃのデューティ比を５０→１００％、０→５０％に１０％ずつ変化させていくとＴＬａとＴＬｃは図１２の（ａ）のように変化しすなわち合成ベクトルＴＬは図１２（ｂ）のように移行し５分割のマイクロステップ駆動となる。
【００４７】
またモータ１３に流れる総電流Ｉｍは各コイルに流れる電流の絶対値の総和であるから
0004454723.tif 000003
となる。これは４×Ｉ０は固定値となり、制御期間Ｔｃｎｔを一定にしたとするとデューティ制御期間Ｔｄｕｔｙによりモータ１３に流れる総電流Ｉｍが決定されることを意味する。
【００４８】
次に駆動パルス制御部５１の制御について説明する。
図１８はモータ１３の駆動を制御するためのメイン制御フローチャートである。図１８において、制御が開始されるとカウンタＮ、Ｍ、Ｐ、Ｑを０にし（ステップＳ１８０１）、サブルーチン（ＯＵＴＳＨＴ図１９（ａ））を呼び、各給電点Ａ、Ｂ、Ｃ、Ｄ、Ｅをショート状態にするよう駆動パルス発生部５３の各レジスタにデータをセットする（ステップＳ１８０２）。シャットダウンフラグＳＤＦＬＡＧが０であればスタート／ストップ入力信号Ｓ／Ｓをみて０から１に変わったらモータスタートの指示があったとしてＩＮＴＦＬＧを１にする（ステップＳ１８０３、１８０５、１８０６、１８０７）。そしてサブルーチンＳＴＲＳＥＴ（図１９（ｃ））を呼出し、データ入力端子１１３からのモータを回すための条件をセットする（ステップＳ１８０８）。ここでは電流目標値ＴＡＲＧＥＴ、回転方向フラグＤＩＲＦＬＧ、分割数ＤＩＶ、電流最大値ＩＭＡＸ、制御期間ＴＣＮＴ、デューティ制御期間ＴＤＵＴＹなどをセットし、Ｑをリセットする。
【００４９】
次に、サブルーチンＤＡＴＳＥＴを呼び出し、カウンタＮ、Ｍに合った励磁パターンになるようＲＥＧＡ、ＲＥＧＢ、ＲＥＧＣ、ＲＥＧＤ、ＲＥＧＥにデータがセットされる（ステップＳ１８０９）。次に、Ｍｃｌｋに従って励磁相を切換えモータ１３を駆動する処理を行う割り込みルーチンＩＮＴＲＰＴを動作させるために割り込み許可し（ステップＳ１８１０）、モータ１３の総電流Ｉｍを制御するための一定時間で割り込みがかかるタイマ（ＴＩＭＥＲ）の割り込み許可を行う（ステップＳ１８１１）。このタイマの時間間隔は電流を制御するための制御期間Ｔｃｎｔよりも十分大きい時間とする。そしてステップＳ１８０３に戻りＳＤＦＬＡＧをチェックしてＳ／Ｓ信号が”Ｈ”のときはステップＳ１８０５でＩＮＴＦＬＧが１にセットされているため、再び、ステップＳ１８０３に戻り、Ｓ／Ｓ信号が”Ｈ”の間これを繰り返す。
【００５０】
モータ駆動電流の異常があった場合、ＳＤＦＬＡＧが１にセットされそれを検知するとモータ１３を止めるべくシャットダウン処理を行う（ステップＳ１８０４）。Ｓ／Ｓ信号が”１から０につまりモータ停止が指示されると（ステップＳ１８０５、１８１２）、割り込みＩＮＴＰＲＴ、タイマＴＩＭＥＲの割り込みを禁止し（ステップＳ１８１３、１８１４）、ＩＮＴＦＬＧを０にリセットして（ステップＳ１８１５）、ＷＡＩＴで停止させるための励磁時間を待ち（ステップＳ１８１６）、ＯＵＴＳＨＴを呼び、給電点をショート状態にし（ステップＳ１８１７）、ステップＳ１８０３に戻り、モータスタートのための待機状態となる。
【００５１】
ここでモータ駆動条件について説明する。
ＤＩＶはマイクロステップの分割数、ＤＩＲＦＬＧはモータ１３の回転方向を決定するためのフラグ、ＴＡＲＧＥＴは電流制御のための目標値、ＩＭＡＸはＭ−モータ１３の総電流の最大値、ＴＣＮＴは制御期間Ｔｃｎｔ、ＴＤＵＴＹはデューティ制御期間Ｔｄｕｔｙである。ＡＤ変換器１６のビット数をＺとすると、その最大値は（２のＺ乗−１）となりこの値をＢＭＡＸとする。ＡＤ変換器１６の基準電圧をＶｅｒｆ、電流検知抵抗１４の抵抗値をＲとすると、総電流Ｉｍは
Ｉｍ＝（ＡＤＥＲＲ／ＢＭＡＸ）×Ｖｒｅｆ／Ｒ                （８）
で表され、ＡＤＥＲＲに比例する。従って電流制御の目標値Ｉｔａｒｇｅｔとして
Ｉｔａｒｇｅｔ＝（ＴＡＲＧＥＴ／ＢＭＡＸ）×Ｖｒｅｆ／Ｒ    （９）
で表しＴＡＲＧＥＴに比例する式にする。これによりＡＤＥＲＲとＴＡＲＧＥＴとを比較することで電流Ｉｍを制御できる。
ＩＭＡＸは上記した４×Ｉ０から
４×Ｉ０＝（ＩＭＡＸ／ＢＭＡＸ）×Ｖｒｅｆ／Ｒ
ＩＭＡＸ＝４×Ｉ０／（Ｖｒｅｆ／Ｒ）×ＢＭＡＸ            （１０）
で示される。
【００５２】
図２０は相切換え処理のための割り込みルーチンＩＮＴＲＰＴの処理を説明するための図である。図２０において、ＩＮＴＲＰＴはＭｃｌｋ入力端子１１０からのＭｃｌｋの立上りまたは立下りのいずれか一方で割り込みがかかる。メインルーチンでモータスタートのセットをしてから最初に割り込みがかかると、ＲＥＧＳＥＴを呼出し給電点に励磁するための励磁パターンを励磁するためのＲＥＧＡ、ＲＥＧＢ、ＲＥＧＣ、ＲＥＧＤ、ＲＥＧＥにセットされているデータを駆動パルス発生器５４のレジスタ８０１〜８１０（ＲＥＧＡ＋、ＲＥＧＢ＋、ＲＥＧＣ＋、ＲＥＧＤ＋、ＲＥＧＥ＋、ＲＥＧＡ−、ＲＥＧＢ−、ＲＥＧＣ−、ＲＥＧＤ−、ＲＥＧＥ−）にストアし給電点の状態を決めモータコイルを励磁する（ステップＳ２００１）。ここでレジスタ８０１〜８１０にデータをセットするまでは給電点はショート状態となっており、モータ１３の駆動開始はこの時点からとなる。
【００５３】
次に、ＤＩＲＦＬＧをチェックし、０であればＭをインクイリメントしＭがＤＩＶを超えるとＭは０にリセットされＮをインクリメントし、Ｎが１０を超えるとＮは１にセットされる（ステップＳ２００２、２００３、２００４、２００５、２００６、２００７、２００８）。ＤＩＲＦＬＧが１のときはＭはデクリメントされマイナスになればＭにＤＩＶ−１をセットしてＮをデクリメントしてＮがマイナスになればＮに９をセットする（ステップＳ２００２、２００９、２０１０、２０１１、２０１２、２０１３、２０１４）。そしてＰにＮをセットしてサブルーチンＤＡＴＳＥＴを呼び、次にＭｃｌｋが来たときの励磁のためのデータを計算してＤＡＴＡとして返し、それをＲＥＧＡ、ＲＥＧＢ、ＲＥＧＣ、ＲＥＧＤ、ＲＥＧＥにセットして割り込みルーチンから抜ける（ステップＳ２０１５、２０１６、２０１７、２０１８、２０１９、２０２０、２０２１、２０２２、２０２３、２０２４、２０２５）。
【００５４】
次に割り込みがかかったときは前のルーチンで設定されたＲＥＧＡ〜ＲＥＧＥをレジスタ８０１〜８１０にセットし、励磁相を切換え同様の処理を行う。このようにこれらの処理を行うことで励磁パターンが来るごとに切り換えていきモータ１３をＭｃｌｋのスピードに従って駆動することができる。
【００５５】
表２にフルステップで１０ステップ分（電気角３６０°）の各給電点の励磁パターンを示す。表で＋はプッシュ側、−はプル側、５０％はプッシュ／プルの割合が１：１となることを表している。このように励磁するとモータ１３は４相励磁で駆動される。このときの給電点Ａの状態をＦ（Ｍ）とし、Ｍをステップ番号（０〜９）とすると
給電点Ａ：Ｆ（Ｎ）
給電点Ｂ：Ｆ（Ｎ−８）
給電点Ｃ：Ｆ（Ｎ−６）
給電点Ｄ：Ｆ（Ｎ−４）
給電点Ｅ：Ｆ（Ｎ−２）
となる（マイナスとなった場合はＮ＝Ｎ＋１０とする）。
【００５６】
また給電点Ａでマイクロステップのためのプッシュ／プルの割合を変化させる所はＮが２〜３、３〜４、７〜８、９〜０に移行するところでこれに従い、ステップ間でＮが０→９への方向に分割したときの位置をＭ（Ｍ＝０、１、２…ＤＩＶ）として、各Ｎの値での給電状態を表すと
Ｎ＝０、１のとき給電点Ａは
−（プル状態）
Ｎ＝２のときは
１／２＊ＴＤＵＴＹ／ＤＩＶ＊Ｍ
Ｎ＝３のときは
１／２＊ＴＤＵＴＹ
Ｎ＝４のときは
１／２＊ＴＤＵＴＹ＋１／２＊ＴＤＵＴＹ／ＤＩＶ＊Ｍ
Ｎ＝５、６のときは
＋（プッシュ状態）
Ｎ＝７のときは
ＴＤＵＴＹ−１／２＊ＴＤＵＴＹ／ＤＩＶ＊Ｍ
Ｎ＝８のときは
１／２＊ＴＤＵＴＹ
Ｎ＝９のときは
１／２＊ＴＤＵＴＹ−１／２＊ＴＤＵＴＹ／ＤＩＶ＊Ｍ
となる。Ｎ＝６、Ｍ＝５をスタート地点（ｔ０）としてこれを電気角１周分にわたって演算し駆動したときの各コイルの電流パターン（Ｉａ、Ｉｂ、Ｉｃ、Ｉｄ、Ｉｅ）は図１３のようになる。
【００５７】
図２１は給電点の状態を計算処理するフローチャートである。
図２１で、ステップＳ２１０１〜２１１７まではＮをＰとしてＭでの給電点の状態を上記に従って演算処理し、結果をＤＡＴＡにセットするフローである。ステップＳ２１１７でデューティ制御期間ＴＤＵＴＹから演算結果ＤＡＴＡを引いているのは計算した結果がプッシュ期間であり図８のレジスタにセットしたデータはプル期間をカウントするためプッシュ期間からプル期間にデータを変更する必要があるためである。次にＰを２に加算し（ステップＳ２１１８）、Ｐが１０を超えるとＰにＰ−１０にセットして（ステップＳ２１２０）、ルーチン処理を終了し処理ルーチンに戻る。このようにすることで図２０のステップＳ２０１５〜２０２５までのレジスタＲＥＧＡ〜ＲＥＧＥにマイクロステップ駆動のための次の励磁パターンデータＤＡＴＡをセットできる。
【００５８】
次に電流制御について説明する。
電流制御は図６のＰＩ動作のブロック図に従って行われる。そのフローチャートを図２２に示す。
制御処理を行うＴＩＭＥＲは一定期間おきに割り込まれる。電流目標値ＴＡＲＧＥＴからＡＤＥＲＲを引き偏差データＥＲＲＯＲとする（ステップＳ２２０１）。ＥＲＲＯＲはＬＭＴ０、ＬＭＴ１と比較されＱを０としてＰＲＯＰにＥＲＲＯＲをセットする（ステップＳ２２０２、２２０３、２２０４、２２０５）。ＦＤＢＤにＰＲＯＰに比例ゲインＫＰをかけた値をセットし（ステップＳ２２０６）、ＥＲＲＯＲとＬＭＴ２を比較して（ステップＳ２２０７）、ＩＮＴＧ＋ＥＲＲＯＲの結果をＩＮＴＧにセットして（ステップＳ２２０８）、積分ゲインＫＩをかけた結果にＦＤＢＤを足した値をＦＤＢＤにセットし（ステップＳ２２０９）、ＴＡＲＧＥＴとＦＤＢＤとを足し合せＦＤＢＤにセットする（ステップＳ２２１０）。制御期間Ｔｃｎｔを一定にしたときＴｄｕｔｙに比例してモータ１３の総合電流Ｉｍは変化するためＴＤＵＴＹを
ＴＤＵＴＹ＝（ＦＤＢＤ／ＩＭＡＸ）×ＴＣＮＴ
として（ステップＳ２２１１）、レジスタ７０２にＤＴＹＰＲＤとしてデータをセットし（ステップＳ２２１９）、ＰＩ動作は処理されＴＩＭＥＲでの処理を終える。
【００５９】
ＬＭＴ０は制御電流の最低値でＥＲＲＯＲがこれより小さいとＴＬＭＴ０をＴＤＵＴＹにセットする（ステップＳ２２０２、２２１３）。こうすることでＴＬＭＴ０〜ＴＬＭＴ１の範囲外である時は制御をせず、ＴＬＭＴ０に電流を大きく取るよう、ＴＬＭＴ１に電流を小さくするように設定することで電流をスムーズに制御できるようになる。またＱをカウントしＱＬＭＴ０を超えると給電点をショートにしてシャットダウンするべくＳＤＦＬＡＧを１にセットしＴＴＩＭＥＲの割り込みを禁止する（ステップＳ２２１４、２２１５、２２１６、２２１７、２２１８）。これは制御範囲外の状態が続いた場合はモータ駆動部の異常と判断しモータ１３をストップさせるためである。
【００６０】
ステップＳ２２０７でＥＲＲＯＲとＬＭＴ２を比較しているのは電流が大きく変化するとき不安定要素となる積分動作を−ＬＭＴ２〜＋ＬＭＴ２の範囲外のところでは動作させず、電流の変化が小さいときに積分動作をさせるスムーズな制御を行うためである。またＬＭＴ０〜ＬＭＴ２の値は設定電流が変わることを考慮してＴＡＲＧＥＴ値の何％というようにＴＡＲＧＥＴ値を基に設定される。
【００６１】
（実施例２）
次に、本発明の実施例２について説明する。ハード構成及びマイクロステップ駆動のフローまで（図１〜２１）は第１の実施例と同じである。
【００６２】
図２３、図２４に電流制御のためのＴＩＭＥＲ割り込みルーチン処理のフローチャートを示す。
【００６３】
実施例１で電流制御においては制御期間（Ｔｃｎｔ）は一定でデューティ制御期間を変化させて電流を調整している。この場合電流が比較的大きいときは図２１で分割数ＤＩＶでＴＤＵＴＹを割っても十分なビット数が得られ適正なマイクロステップが行える。ところが制御で扱うビット数に制限がある場合、特に目標電流（ＴＡＲＧＥＴ）が低くなるとＴＤＵＴＹも小さくなり、それを分割数ＤＩＶで割ったときの値に量子化誤差が生じ適正なマイクロステップが行えないおそれがある。
【００６４】
この問題を解消するためにある程度目標電流が大きいときは制御期間Ｔｃｎｔ固定でＴｄｕｔｙ幅で電流制御を行い、小さいときはデューティ制御期間Ｔｄｕｔｙを固定にしてＴｃｎｔ幅で電流制御を行う。
式（１１）より
ＴＤＵＴＹ＝ＦＤＢＤ／ＩＭＡＸ×ＴＣＮＴ
ＴＣＮＴ＝ＦＤＢＤ／ＩＭＡＸ×ＴＤＵＴＹ                  （１２）
となり、ＴＣＮＴを可変して制御可能である。ここでＰＩ動作演算結果ＦＤＢＤが式（１２）分母になっているため、電流値が小さいとＴＣＮＴは大きくなる。ＴＤＵＴＹは固定なのでＤＩＶで割っても常に少ない量子化誤差に抑えられる。
【００６５】
これを示したのが図２３、図２４でＴＩＭＥＲの割り込みがかかると目標値ＴＡＲＧＥＴと制御変更しきい値ＣＴＬＣＨＧと比較され（ステップＳ２３２０）、ＴＡＲＧＥＴが大きければ実施例１と同様の電流制御のＰＩ動作を処理する。小さいときは図２４に示すようにステップＳ２３０１から２３１０までは実施例１と同様のＰＩ動作処理を行い、その演算結果ＦＤＢＤを式（１２）に入れて制御期間ＴＣＮＴを設定して（ステップＳ２３１１）、ＰＲＤにＴＣＮＴをセットしレジスタ７０２に期間データをストアする（ステップＳ２３１９）。
【００６６】
ＬＭＴ０、ＬＭＴ１による制御範囲外のときは実施例１と同様の働きを行うためにそれぞれＴＣＮＴにＴＬＭＴ１０とＴＬＭＴ１１がセットされ（ステップＳ２３１２、２３１３）、実施例１と同様の電流の異常検知を行い（ステップＳ２３１５、２３１６、２３１７、２３１８）、ＰＲＤにＴＣＮＴをセットし（ステップＳ２３１９）ＴＩＭＥＲ割り込み処理を終了する。このようにしてＴＩＭＥＲがかかるごとに電流制御を行いモータ１３の電流Ｉｍは制御される。
【００６７】
【発明の効果】
以上説明したように、本発明によれば、ＦＥＴ素子のデューティ制御の１周期と次の周期の間にショート期間を設け、ショート状態とデューティ制御状態の期間を制御することでモータに流れる総電流を制御するようにしたことで、簡単な回路構成と大幅なコストダウンを提供できる。
【表１】
0004454723.tif 000004
【表２】
0004454723.tif 000005
【図面の簡単な説明】
【図１】図１は本発明の実施例の全体のブロック図である。
【図２】図２は本発明の実施例のモータ及びモータドライブ部の構成図である。
【図３】図３はゲート回路Ｐの回路図である。
【図４】図４はゲート回路Ｎの回路図である。
【図５】図５は本発明の実施例の駆動パルス制御部のブロック図である。
【図６】図６は電流制御のＰＩ動作を行う回路ブロック図である。
【図７】図７は本発明の実施例の切換え信号発生器の構成図である。
【図８】図８は駆動パルス５２のブロック図である。
【図９】図９はＯＮ／ＯＦＦ切換え部５５のブロック図である。
【図１０】図１０はある４相励磁ポイントから次の４相励磁ポイント（フルステップ駆動で１ステップ）の励磁ターンによるトルクのベクトルを示した図である。
【図１１】図１１は図１０に示す励磁パターンによる各コイルに発生したトルクベクトルＴａ、Ｔｂ、Ｔｃ、Ｔｄ、Ｔｅを合成したトルクベクトルを表す図である。
【図１２】図１２はＴＬ０からＴＬ１までをマイクロステップ駆動で任意の時間間隔で５分割したときのそれぞれの時間（ｔ０〜ｔ５）でのトルクベクトルを表す図である。
【図１３】図１３はマイクロステップに従って電気角を１周したときの各コイルの電流変化を示す波形図である。
【図１４】図１４はカウンタリセット信号ＣＮＴＲＳＴ、ＳＨＴＴＭを生成する際のタイムチャートを示す図である。
【図１５】図１５は給電点Ａの状態を例にとり信号の流れを説明するためのタイムチャートである。
【図１６】図１６は本発明の実施例の給電点状態を示すタイムチャートである。
【図１７】図１７は本発明の実施例の電流波形を示すタイムチャートである。
【図１８】図１８はモータの駆動を制御するためのメイン制御フローチャートである。
【図１９】図１９は図１８に示すステップのサブルーチンを示す制御フローチャートである。
【図２０】図２０は相切換え処理のための割り込みルーチンＩＮＴＲＰＴの処理を説明するための図である。
【図２１】図２１は給電点の状態を計算処理するフローチャートである。
【図２２】図２２は電流制御処理をするためのフローチャートである。
【図２３】図２３は電流制御のためのＴＩＭＥＲ割り込みルーチン処理のフローチャートである。
【図２４】図２４は電流制御のためのＴＩＭＥＲ割り込みルーチン処理のフローチャートである。
【図２５】図２５は従来例の５相ステッピングモータ駆動制御のブロック図である。
【図２６】図２６は従来例のモータの総電流を制御する電流制御回路図である。
【図２７】図２７は従来例の制御部で用いたゲート回路を示す図である。
【図２８】図２８は従来例の制御部の回路ブロック図である。
【図２９】図２９は、従来例の制御部の動作を説明するためのタイムチャートである。
【符号の説明】
１１  制御部
１２  ドライブ部
１３  ５相ステッピングモータ
５１  駆動パルス制御部
５２  カウンタ
５３  切換え信号発生器
５５  ＯＮ／ＳＨＴ切換え部
【図１】
0004454723.tif 000006
【図２】
0004454723.tif 000007
【図３】
0004454723.tif 000008
【図４】
0004454723.tif 000009
【図５】
0004454723.tif 000010
【図６】
0004454723.tif 000011
【図７】
0004454723.tif 000012
【図８】
0004454723.tif 000013
【図９】
0004454723.tif 000014
【図１０】
0004454723.tif 000015
【図１１】
0004454723.tif 000016
【図１２】
0004454723.tif 000017
【図１３】
0004454723.tif 000018
【図１４】
0004454723.tif 000019
【図１５】
0004454723.tif 000020
【図１６】
0004454723.tif 000021
【図１７】
0004454723.tif 000022
【図１８】
0004454723.tif 000023
【図１９】
0004454723.tif 000024
【図２０】
0004454723.tif 000025
【図２１】
0004454723.tif 000026
【図２２】
0004454723.tif 000027
【図２３】
0004454723.tif 000028
【図２４】
0004454723.tif 000029
【図２５】
0004454723.tif 000030
【図２６】
0004454723.tif 000031
【図２７】
0004454723.tif 000032
【図２８】
0004454723.tif 000033
【図２９】
0004454723.tif 000034