(57)【要約】【課題】  目標座標を小刻みに変更しても、ステッピングモータを目標座標まで短時間で回転させることが可能なステッピングモータの制御方法を提供すること。【解決手段】  ステッピングモータの回転開始前の座標を取得し、ステッピングモータを回転開始前の座標から目標座標まで回転させるために必要な第１のパルス数を取得し、ステッピングモータの回転開始から出力した累計パルス数を取得して第２のパルス数とし、第１のパルス数から第２のパルス数を減算することで、目標座標に到達させるために必要な第３のパルス数を取得し、ステッピングモータが現在の速度から停止するまでに必要な第４のパルス数を取得し、第３のパルス数及び第４のパルス数に基づいて、ステッピングモータを目標座標に向けて回転させるために、ステッピングモータを現在の速度から加速させるか、減速させるか、又は最高速度を維持させるかを判断する。【選択図】図２
2011067013.tif 000002
【特許請求の範囲】
【請求項１】
ステッピングモータを、出力したパルスに従って目標座標まで回転させるステッピングモータの制御方法であって、
前記ステッピングモータの回転開始前の座標を取得し、
前記ステッピングモータを前記回転開始前の座標から前記目標座標まで回転させるために必要な第１のパルス数を取得し、
前記ステッピングモータの回転開始から出力した累計パルス数を取得して第２のパルス数とし、
前記第１のパルス数から前記第２のパルス数を減算することで、目標座標に到達させるために必要な第３のパルス数を取得し、
前記ステッピングモータが現在の速度から停止するまでに必要な第４のパルス数を取得し、
前記第３のパルス数及び前記第４のパルス数に基づいて、前記ステッピングモータを前記目標座標に向けて回転させるために、前記ステッピングモータを現在の速度から加速させるか、減速させるか、又は最高速度を維持させるかを判断することを特徴とするステッピングモータの制御方法。
【請求項２】
前記ステッピングモータが、現在座標から直ちに減速しても前記目標座標に到達しない場合、前記ステッピングモータを加速させる、又は最高速度を維持させ、
前記ステッピングモータが、現在座標から直ちに減速すると前記目標座標に到達する、又は超える場合、前記ステッピングモータを減速させることを特徴とする請求項１に記載のステッピングモータの制御方法。
【請求項３】
前記第４のパルス数が、前記ステッピングモータを加速させている間、出力したパルスを加算して蓄積し、前記蓄積されたパルス数から、前記ステッピングモータを減速させている間、出力したパルスを減算することで取得されることを特徴とする請求項１または２に記載のステッピングモータの制御方法。
【請求項４】
前記ステッピングモータが回転しているときに新たな目標座標を受け付け、
前記新たな目標座標から前記回転開始前の座標を減算することで前記新たな目標座標に到達させるために必要な第５のパルス数を取得し、前記第５のパルス数で前記第１のパルス数を置き換えることを特徴とする請求項１から３のいずれか１項に記載のステッピングモータの制御方法。
【請求項５】
速度ゼロから所定の速度に達するまでに必要なパルス数が、前記所定の速度から前記速度ゼロに達するまでに必要なパルス数と等しいことを特徴とする請求項３に記載のステッピングモータの制御方法。
【請求項６】
ステッピングモータを、出力したパルスに従って目標座標まで回転させるステッピングモータの制御装置であって、
前記ステッピングモータの回転開始前の座標を取得する手段と、
前記回転開始前の座標から前記目標座標まで到達させるために必要な第１のパルス数を取得する手段と、
回転開始後に出力した累計パルス数である第２のパルス数を取得する手段と、
前記第１のパルス数から前記第２のパルス数を減算することで、目標座標に到達させるために必要な第３のパルス数を取得する手段と、
現在の速度から停止するまでに必要な第４のパルス数を取得する手段と、
前記第３のパルス数及び前記第４のパルス数に基づいて、前記ステッピングモータを前記目標座標に向けて回転させるために、前記ステッピングモータを現在の速度から加速させるか、減速させるか、又は最高速度を維持させるかを判断する手段と、
を備えることを特徴とするステッピングモータの制御装置。
【請求項７】
前記ステッピングモータが、現在座標から直ちに減速しても前記目標座標に到達しない場合、前記ステッピングモータを加速させる、又は最高速度を維持させ、
前記ステッピングモータが、現在座標から直ちに減速すると前記目標座標に到達する、又は超える場合、前記ステッピングモータを減速させることを特徴とする請求項６に記載のステッピングモータの制御装置。
【請求項８】
前記第４のパルス数が、前記ステッピングモータを加速させている間、出力したパルスを加算して蓄積し、前記蓄積されたパルス数から、前記ステッピングモータを減速させている間、出力したパルスを減算することで取得されることを特徴とする請求項６または７に記載のステッピングモータの制御装置。
【請求項９】
前記ステッピングモータが回転しているときに新たな目標座標を受け付け、
前記新たな目標座標から前記回転開始前の座標を減算することで前記新たな目標座標に到達させるために必要な第５のパルス数を取得し、前記第５のパルス数で前記第１のパルス数を置き換えることを特徴とする請求項６から８のいずれか１項に記載のステッピングモータの制御装置。
【請求項１０】
速度ゼロから所定の速度に達するまでに必要なパルス数が、前記所定の速度から前記速度ゼロに達するまでに必要なパルス数と等しいことを特徴とする請求項８に記載のステッピングモータの制御装置。
【請求項１１】
ステッピングモータと、
目標座標を発行するとともに、前記目標座標を発行した後に前記目標座標とは異なる新たな目標座標を発行することが可能な演算装置と、
前記目標座標、及び前記新たな目標座標を受け、前記ステッピングモータを回転させる駆動パルスを生成するパルスジェネレータと、
前記駆動パルスを受け、前記ステッピングモータを回転させるドライバと、を備え、
前記パルスジェネレータが、
前記目標座標、及び前記新たな目標座標を受け、加速指示及び減速指示を発行するコントローラと、
前記加速指示及び減速指示を受け、速度データを生成する速度カウンタと、
ステッピングモータの座標を記憶する領域と、回転開始から出力した累計パルス数を記憶する領域を含み、前記速度データを受けて前記ステッピングモータを回転させる駆動パルスを生成する座標カウンタと、
前記加速指示及び減速指示を受け、前記ステッピングモータを加速させている間、前記駆動パルスを、前記駆動パルスが生成されるごとに加算して蓄積し、前記蓄積された駆動パルス数から、前記ステッピングモータを減速させている間、前記駆動パルスを、前記駆動パルスが生成されるごとに減算する減速時座標変化量カウンタと、を含み、
前記コントローラが、
前記ステッピングモータの回転開始前の座標を前記座標カウンタから取得し、
前記ステッピングモータを前記回転開始前の座標から前記目標座標まで回転させるために必要な第１のパルス数を取得し、
前記ステッピングモータの回転開始から出力した累計パルス数を前記座標カウンタから取得して第２のパルス数とし、
前記第１のパルス数から前記第２のパルス数を減算することで、目標座標に到達させるために必要な第３のパルス数を取得し、
前記ステッピングモータが現在の速度から停止するまでに必要な第４のパルス数を前記減速時座標変化量カウンタから取得し、
前記第３のパルス数及び前記第４のパルス数に基づいて、前記ステッピングモータを前記目標座標に向けて回転させるために、前記ステッピングモータを現在の速度から加速させるか、減速させるか、又は最高速度を維持させるかを判断することを特徴とするステッピングモータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はステッピングモータの制御方法、ステッピングモータの制御装置及びステッピングモータシステムに関する。
【背景技術】
【０００２】
モータを使用して、回転体を目標回転角まで回転させる場合、以下の手法が考えられる。
【０００３】
（サーボモータを使用する場合）
エンコーダでモータ軸の回転角を検出し、検出された回転角をコントローラやドライバへフィードバックし、フィードバックされた回転角を確認しながらモータ回転速度の調整を行い、モータ軸を目標の回転角まで回転させる。
【０００４】
（ステッピングモータを使用する場合）
モータ軸を目標座標として与えられた目標の回転角まで回転させるパルスを生成してドライバを駆動し、モータ軸を目標の回転角まで回転させる。
【０００５】
サーボモータ、及びステッピングモータの制御方法は、例えば、特許文献１、２に記載されている。
【０００６】
しかしながら、サーボモータは、エンコーダで検出された回転角等を、コントローラやドライバへフィードバックする。このため、フィードバックを常に確認しなければならず、細かな位置合わせには多くの演算が必要となる。
【０００７】
対して、ステッピングモータは、１パルスで一定の角度（ステップ角）だけ回転するように構成される。このため、開ループ制御することができ、開ループ制御した場合には高速の位置合わせが可能となる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００４−２８２９７２号公報
【特許文献２】特開２００７−１８５０５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、ステッピングモータは、目標座標（目標の回転角）を一度指示すると、目標座標までの回転が終了するまで、新たな目標座標を発行することができない。これは、ＣＰＵが目標座標の発行だけでなく、加速指示及び減速指示をも発行しているためである。即ち、ＣＰＵは、目標座標を発行した後、ステッピングモータが目標座標に達するように加速を終了させるタイミングの演算と減速を開始させるタイミングの演算を予め行って発行している。このような演算をＣＰＵが行っているため、目標座標までの回転を一旦終了させないと、ＣＰＵは新たな目標座標に対する演算を予め行うことができない。
【００１０】
このため、目標座標を小刻みに変更する場合には、余分な加速及び減速時間を要し、位置合わせに余分な時間がかかってしまう、という事情がある。
【００１１】
この発明は、上記事情に鑑みて為されたもので、目標座標を小刻みに変更しても、ステッピングモータを目標座標まで短時間で回転させることが可能なステッピングモータの制御方法、ステッピングモータの制御装置及びステッピングモータシステムを提供する。
【課題を解決するための手段】
【００１２】
上記課題を解決するため、この発明の第１の態様に係るステッピングモータの制御方法は、ステッピングモータを、出力したパルスに従って目標座標まで回転させるステッピングモータの制御方法であって、前記ステッピングモータの回転開始前の座標を取得し、前記ステッピングモータを前記回転開始前の座標から前記目標座標まで回転させるために必要な第１のパルス数を取得し、前記ステッピングモータの回転開始から出力した累計パルス数を取得して第２のパルス数とし、前記第１のパルス数から前記第２のパルス数を減算することで、目標座標に到達させるために必要な第３のパルス数を取得し、前記ステッピングモータが現在の速度から停止するまでに必要な第４のパルス数を取得し、前記第３のパルス数及び前記第４のパルス数に基づいて、前記ステッピングモータを前記目標座標に向けて回転させるために、前記ステッピングモータを現在の速度から加速させるか、減速させるか、又は最高速度を維持させるかを判断する。
【００１３】
この発明の第２の態様に係るステッピングモータの制御装置は、ステッピングモータを、出力したパルスに従って目標座標まで回転させるステッピングモータの制御装置であって、前記ステッピングモータの回転開始前の座標を取得する手段と、前記回転開始前の座標から前記目標座標まで到達させるために必要な第１のパルス数を取得する手段と、回転開始後に出力した累計パルス数である第２のパルス数を取得する手段と、前記第１のパルス数から前記第２のパルス数を減算することで、目標座標に到達させるために必要な第３のパルス数を取得する手段と、現在の速度から停止するまでに必要な第４のパルス数を取得する手段と、前記第３のパルス数及び前記第４のパルス数に基づいて、前記ステッピングモータを前記目標座標に向けて回転させるために、前記ステッピングモータを現在の速度から加速させるか、減速させるか、又は最高速度を維持させるかを判断する手段と、を備える。
【００１４】
この発明の第３の態様に係るステッピングモータシステムは、ステッピングモータと、目標座標を発行するとともに、前記目標座標を発行した後に前記目標座標とは異なる新たな目標座標を発行することが可能な演算装置と、前記目標座標、及び前記新たな目標座標を受け、前記ステッピングモータを回転させる駆動パルスを生成するパルスジェネレータと、前記駆動パルスを受け、前記ステッピングモータを回転させるドライバと、を備え、前記パルスジェネレータが、前記目標座標、及び前記新たな目標座標を受け、加速指示及び減速指示を発行するコントローラと、前記加速指示及び減速指示を受け、速度データを生成する速度カウンタと、ステッピングモータの座標を記憶する領域と、回転開始から出力した累計パルス数を記憶する領域を含み、前記速度データを受けて前記ステッピングモータを回転させる駆動パルスを生成する座標カウンタと、前記加速指示及び減速指示を受け、前記ステッピングモータを加速させている間、前記駆動パルスを、前記駆動パルスが生成されるごとに加算して蓄積し、前記蓄積された駆動パルス数から、前記ステッピングモータを減速させている間、前記駆動パルスを、前記駆動パルスが生成されるごとに減算する減速時座標変化量カウンタと、を含み、前記コントローラが、前記ステッピングモータの回転開始前の座標を前記座標カウンタから取得し、前記ステッピングモータを前記回転開始前の座標から前記目標座標まで回転させるために必要な第１のパルス数を取得し、前記ステッピングモータの回転開始から出力した累計パルス数を前記座標カウンタから取得して第２のパルス数とし、前記第１のパルス数から前記第２のパルス数を減算することで、目標座標に到達させるために必要な第３のパルス数を取得し、前記ステッピングモータが現在の速度から停止するまでに必要な第４のパルス数を前記減速時座標変化量カウンタから取得し、前記第３のパルス数及び前記第４のパルス数に基づいて、前記ステッピングモータを前記目標座標に向けて回転させるために、前記ステッピングモータを現在の速度から加速させるか、減速させるか、又は最高速度を維持させるかを判断する。
【発明の効果】
【００１５】
この発明によれば、目標座標を小刻みに変更しても、ステッピングモータを目標座標まで短時間で回転させることが可能なステッピングモータの制御方法、ステッピングモータの制御装置及びステッピングモータシステムを提供できる。
【図面の簡単な説明】
【００１６】
【図１】この発明の一実施形態に係るステッピングモータの制御方法を適用することが可能なステッピングモータシステムの一例を示すブロック図
【図２】図１に示すパルスジェネレータ３の一例を示すブロック図
【図３】この発明の一実施形態に係るステッピングモータの制御方法による速度パターン制御例を示す図
【図４】この発明の一実施形態に係るステッピングモータの制御方法による速度パターン制御例を示す図
【図５】この発明の一実施形態に係るステッピングモータの制御方法による速度パターン制御例を示す図
【図６】参考例に係るステッピングモータの制御方法による速度パターン制御例を示す図
【発明を実施するための形態】
【００１７】
以下、この発明の一実施形態を、図面を参照して説明する。なお、全図にわたり、共通の部分には共通の参照符号を付す。
【００１８】
また、この説明において、「座標」の語については、単に「座標」と記した場合は「絶対座標」を意味し、「相対座標」と特記した場合は「相対座標」を意味する。
【００１９】
（ステッピングモータシステム）
図１は、この発明の一実施形態に係るステッピングモータの制御方法を適用することが可能なステッピングモータシステムの一例を示すブロック図である。
【００２０】
図１に示すように、ステッピングモータシステムは、ステッピングモータ１と、目標座標を発行するとともに、目標座標を発行した後に目標座標とは異なる新たな目標座標を発行することが可能な演算装置（ＣＰＵ）２と、目標座標、及び新たな目標座標を受け、ステッピングモータ１を回転させる駆動パルスを生成するパルスジェネレータ３と、駆動パルスを受け、ステッピングモータ１を回転させるドライバ４と、を備えている。ドライバ４は、例えば、駆動パルスが与えられるたびに、ステッピングモータ１を一定の角度（ステップ角）だけ回転させる。
【００２１】
このように構成されるステッピングモータシステムにおいて、本一実施形態においては、パルスジェネレータ３を以下のように構成する。
【００２２】
（パルスジェネレータ）
図２は、パルスジェネレータ３の一例を示すブロック図である。
【００２３】
図２に示すように、一例に係るパルスジェネレータ３は、コントローラ３１、速度カウンタ３２、座標カウンタ３３、及び減速時座標変化量カウンタ３４、回転方向信号３５、加減速指示信号３６、速度指示値３７、駆動パルス３８を含んで構成される。
【００２４】
コントローラ３１は、演算装置２から目標座標、及び新たな目標座標を受け、加速指示、減速指示、または速度維持指示を加減速指示信号３６として発行する。
【００２５】
速度カウンタ３２は、加減速指示信号３６を受け、速度指示値３７を生成する。
【００２６】
座標カウンタ３３は、絶対座標レジスタ６１、回転開始座標レジスタ６２、相対座標レジスタ６３を含む。
【００２７】
絶対座標レジスタ６１は例えば１４ビット長である。
【００２８】
回転開始座標レジスタ６２は例えば１４ビット長である。
【００２９】
相対座標レジスタ６３は、上位部６３ａと下位部６３ｂからなる。
【００３０】
相対座標レジスタ６３は例えば３６ビット長であり、上位部６３ａは例えば１４ビット、下位部６３ｂは例えば２２ビットである。
【００３１】
ステッピングモータ１が停止中で新たな回転を開始する前に、相対座標レジスタ６３を上位部、下位部ともにゼロにリセットする。
また、停止中の現在座標である絶対座標レジスタ６１の値を回転開始座標レジスタ６２に保存する。
【００３２】
座標カウンタ３３は、クロック（図示せず）に同期して、速度指示値３７を相対座標レジスタ６３の現在値に加算し相対座標レジスタ６３を更新する。上位部６３ａの最下位ビットをステッピングモータ１を回転させる駆動パルス３８として使用する。
【００３３】
相対座標レジスタ上位部６３ａの値が変化した時、絶対座標レジスタ６１を更新し最新の状態に保つ。
【００３４】
具体的には、ステッピングモータ１の回転方向に応じ、回転開始座標レジスタ６２の値に相対座標レジスタ上位部６３ａの値を加算または減算することで、絶対座標の更新値を得る。
【００３５】
減速時座標変化量カウンタ３４は、コントローラ３１からの加速指示及び減速指示を受け、ステッピングモータ１を加速させている間、駆動パルスを、駆動パルスが生成されるごとに加算して蓄積する。さらに、減速時座標変化量カウンタ３４は、ステッピングモータ１を減速させている間、蓄積された駆動パルス数から駆動パルスを、駆動パルスが生成されるごとに減算する。このような加速時に加算して蓄積され、減速時に減算される駆動パルス数は、ステッピングモータ１が、現在の速度から停止するまでに必要なパルス数に等しい。
【００３６】
台形駆動などでは、速度ゼロから最高速度Ｖｐｅａｋに達するまでに必要なパルス数（加速パルス数）Ｐａｃｃが、最高速度Ｖｐｅａｋから速度ゼロに達するまでに必要なパルス数（減速パルス数）Ｐｄｅｃと同じである、と仮定できる。この場合、加速パルス数Ｐａｃｃから、減速時において、駆動パルスが一回出力されるたびに一つずつパルス数を減算していくと、ステッピングモータ１が停止するまでに必要な残りのパルス数を知ることができる。
【００３７】
減速時座標変化量カウンタ３４は、その値を、速度指示値３７を積算して得るようにこ構成することも可能である。
【００３８】
具体的には、減速時座標変化量カウンタ３４のビット長を相対座標レジスタ６３と等しくする。減速時座標変化量カウンタ３４は上位部と下位部からなり、上位部のビット長を相対座標レジスタ上位部６３ａのビット長と等しくする。
【００３９】
ステッピングモータ１が停止中で新たな回転を開始する前に、減速時座標変化量カウンタ３４ゼロにリセットする。
【００４０】
加減速指示信号３６が加速指示の場合、速度指示値３７を減速時座標変化量カウンタ３４の現在値に加算して積算する。
【００４１】
加減速指示信号３６が減速指示の場合、速度指示値３７を減速時座標変化量カウンタ３４の現在値から減算して積算する。
【００４２】
加減速指示信号３６が速度維持指示の場合、積算しない。
【００４３】
回転方向信号３５はドライバ４に対し回転方向を指示する。
【００４４】
コントローラ３１は、停止中に、目標座標（Ｄ１）を受け付けた後、目標座標（Ｄ１）から、停止中の現在座標（Ｓ１）を減算し、目標座標（Ｄ１）まで回転させるために必要な第１のパルス数（Ｐ１）を演算する。
【００４５】
コントローラ３１は、回転開始後、第１のパルス数（Ｐ１）から、回転開始から出力した累計の駆動パルス数（第２のパルス数、Ｐ２）を常に減算することで、ステッピングモータ１を回転中の現在座標（Ｃ１）から目標座標（Ｄ１）まで回転させるために必要な第３のパルス数（Ｐ３）を常に取得する。
【００４６】
回転開始から出力した累計の駆動パルス数（第２のパルス数、Ｐ２）は相対座標レジスタ上位部３６ａに保存されている。
【００４７】
この第３のパルス数（Ｐ３）と減速時座標変化量カウンタの値（Ｐ４）を比較することで、ステッピングモータの動作を、加速、減速、最高速度維持の３種から最適な動作を選択する。
【００４８】
具体的な判断の一例は、第３のパルス数（Ｐ３）から減速時座標変化量カウンタ（Ｐ４）を減算した値が０より大きい場合、ステッピングモータ１が回転中の現在座標（Ｃ１）から減速しても目標座標（Ｄ１）に到達しないので、コントローラ３１は、ステッピングモータを加速させる、又は最高速度を維持させるように制御する。
【００４９】
また、第３のパルス数(Ｐ３)から減速時座標変化量カウンタ（Ｐ４）を減算した値が０以下の場合、ステッピングモータ１が、回転中の現在座標（Ｃ１）から減速すると目標座標（Ｄ１）に到達する、又は超えるので、コントローラ３１は、ステッピングモータ１を減速させるように制御する。
【００５０】
さらに、コントローラ３１は、回転中に、新たな目標座標（Ｄ２）を受け付けた後に、新たな目標座標（Ｄ２）から回転開始前の座標（Ｓ１）を減算し、新たな目標座標（Ｄ２）まで回転させるために必要な第５のパルス数（Ｐ５）を計算し、前記第１のパルス数（Ｐ１）と置き換える。したがって、コントローラ３１は、新たな目標座標を受け付けた後も、ステッピングモータ１を新たな目標座標（Ｄ２）まで回転させるために、加速、減速、最高速度維持の３種から最適な動作を選択できる。
【００５１】
以上の説明では、パルス数を比較してステッピングモータの動作を選択したが、目標座標と推定停止座標を比較して動作を選択することも可能である。
【００５２】
コントローラ３１は、停止中に、目標座標（Ｄ１）を受け付けた後、目標座標（Ｄ１）と停止中の現在座標（Ｓ１）から、回転方向信号３５、加減速指示信号３６その他を設定して回転動作を開始する。
【００５３】
コントローラ３１は、回転開始後、下記の式で推定停止座標（Ｓ２）を算出する。
【００５４】
ステッピングモータ１が正回転の場合：
推定停止座標（Ｓ２）＝（絶対座標レジスタ６１の値）＋（減速時座標変化量カウンタ３４の値）
ステッピングモータ１が逆回転の場合：
推定停止座標（Ｓ２）＝（絶対座標レジスタ６１の値）−（減速時座標変化量カウンタ３４の値）
目標座標（Ｄ１）と推定停止座標（Ｓ２）を比較することで、ステッピングモータの動作を、加速、減速、最高速度維持の３種から最適な動作を選択する。
【００５５】
判断の一例は、回転方向が正であり、推定停止座標（Ｓ２）が目標座標（Ｄ１）より小さい場合、ステッピングモータ１が回転中の現在座標（Ｃ１）から減速しても目標座標（Ｄ１）に到達しないので、コントローラ３１は、ステッピングモータを加速させる、又は最高速度を維持させるように制御する。
【００５６】
回転方向が正であり、推定停止座標（Ｓ２）が目標座標（Ｄ１）以上の値の場合、ステッピングモータ１が、回転中の現在座標（Ｃ１）から減速すると目標座標（Ｄ１）に到達する、又は超えるので、コントローラ３１は、ステッピングモータ１を減速させるように制御する。
【００５７】
更にコントローラ３１は、回転中に、新たな目標座標（Ｄ２）を受け付けた場合、直ちに、目標座標（Ｄ１）を新たな目標座標（Ｄ２）で置き換える。したがって、コントローラ３１は、新たな目標座標を受け付けた後も、ステッピングモータ１を新たな目標座標（Ｄ２）まで回転させるために、加速、減速、最高速度維持の３種から最適な動作を選択できる。
【００５８】
以下、具体的な制御例とともに、より詳細に説明する。
【００５９】
一例に係るパルスジェネレータ３は、新たな目標座標を、加速時、最高速度時、及び減速時のいずれの場合においても受け付けることができる。これら３つの場合において、それぞれ制御例を説明する。
【００６０】
（制御例１：加速時に新たな目標座標を受け付けた場合）
１．１減速しても新たな目標座標に到達しない場合
この場合には、コントローラ３１は、新たな目標座標を受け付けた際の座標から、ステッピングモータ１を、新たな目標座標に到達するように加速させる。
【００６１】
図３Ａは、加速後、最高速度に達することなく、新たな目標座標に到達する場合の制御例を示す。
【００６２】
図３Ａに示すように、コントローラ３１は、新たな目標座標を受け付けた後、ステッピングモータ１の加速を続け、加速の途中で、新たな目標座標に到達するように減速に切り換える。
【００６３】
図３Ｂは、加速後、最高速度Ｖｐｅａｋに達してから、新たな目標座標に到達する場合の制御例を示す。
【００６４】
図３Ｂに示すように、コントローラ３１は、新たな目標座標を受け付けた後、ステッピングモータ１の加速を最高速度Ｖｐｅａｋに達するまで続け、最高速度Ｖｐｅａｋから、新たな目標座標に到達するように減速に切り換える。
【００６５】
１．２減速すると新たな目標座標に到達する、又は超える場合
この場合には、コントローラ３１は、新たな目標座標を受け付けた際の座標から、ステッピングモータ１を、新たな目標座標に到達するように減速させる。
【００６６】
図３Ｃは、減速させると、丁度、新たな目標座標に到達する場合の制御例を示す。
【００６７】
図３Ｃに示すように、コントローラ３１は、新たな目標座標を受け付けた後、ステッピングモータ１を、加速の途中で、新たな目標座標に到達するように減速に切り換える。
【００６８】
図３Ｄ及び図３Ｅは、減速させると、新たな目標座標を超える場合の制御例を示す。
【００６９】
コントローラ３１は、新たな目標座標を受け付けた後、ステッピングモータ１を、加速の途中で減速に切り換える。ステッピングモータ１が停止した後、コントローラ３１は、例えば、回転方向信号を反転させた後、駆動パルスを生成して、ステッピングモータ１を逆回転させ、ステッピングモータ１を新たな目標座標に到達するように加速及び減速（図３Ｄ）、又は最高速度Ｖｐｅａｋまで加速させた後に減速させる（図３Ｅ）。
【００７０】
（制御例２：最高速度時に新たな目標座標を受け付けた場合）
２．１減速しても新たな目標座標に到達しない場合
この場合には、コントローラ３１は、新たな目標座標を受け付けた際の座標から、ステッピングモータ１を、新たな目標座標に到達するように最高速度で運転する。
【００７１】
図４Ａに示すように、コントローラ３１は、新たな目標座標を受け付けた後、ステッピングモータ１を最高速度Ｖｐｅａｋで続けて運転させ、最高速度Ｖｐｅａｋの途中で、新たな目標座標に到達するように減速に切り換える。
【００７２】
２．２減速すると新たな目標座標に到達する、又は超える場合
この場合には、コントローラ３１は、新たな目標座標を受け付けた際の座標から、ステッピングモータ１を、新たな目標座標に到達するように減速させる。
【００７３】
図４Ｂは、減速させると、丁度、新たな目標座標に到達する場合の制御例を示す。
【００７４】
図４Ｂに示すように、コントローラ３１は、新たな目標座標を受け付けた後、ステッピングモータ１を、最高速度Ｖｐｅａｋから、新たな目標座標に到達するように減速に切り換える。
【００７５】
図４Ｃ及び図４Ｄは、減速させると、新たな目標座標を超える場合の制御例を示す。
【００７６】
コントローラ３１は、新たな目標座標を受け付けた後、ステッピングモータ１を、最高速度Ｖｐｅａｋから減速に切り換える。ステッピングモータ１が停止した後、コントローラ３１は、例えば、回転方向信号を反転させた後、駆動パルスを生成して、ステッピングモータ１を逆回転させ、ステッピングモータ１を新たな目標座標に到達するように加速及び減速（図４Ｃ）、又は最高速度Ｖｐｅａｋまで加速させた後に減速させる（図４Ｄ）。
【００７７】
（制御例３：減速時に新たな目標座標を受け付けた場合）
３．１減速しても新たな目標座標に到達しない場合
この場合には、コントローラ３１は、新たな目標座標を受け付けた際の座標から、ステッピングモータ１を、新たな目標座標に到達するように加速させる。
【００７８】
図５Ａは、最高速度Ｖｐｅａｋに達することなく、新たな目標座標に到達する場合の制御例を示す。
【００７９】
図５Ａに示すように、コントローラ３１は、新たな目標座標を受け付けた後、ステッピングモータ１を減速から加速に切り換え、加速の途中で、新たな目標座標に到達するように減速に切り換える。
【００８０】
図５Ｂは、最高速度Ｖｐｅａｋに達した後、新たな目標座標に到達する場合の制御例を示す。
【００８１】
図５Ｂに示すように、コントローラ３１は、新たな目標座標を受け付けた後、ステッピングモータ１を減速から加速に切り換え、加速を最高速度Ｖｐｅａｋに達するまで続ける。そして、最高速度Ｖｐｅａｋの途中で、新たな目標座標に到達するように減速に切り換える。
【００８２】
３．２減速すると新たな目標座標に到達する、又は超える場合
この場合には、コントローラ３１は、新たな目標座標を受け付けた際の座標から、ステッピングモータ１を、新たな目標座標に到達するように減速させる。
【００８３】
なお、減速時に新たな目標座標を受け付けた場合に、減速させると、丁度、新たな目標座標に到達する場合がある。この場合は、目標座標と、新たな目標座標とが同じ座標であることを意味する。このため、上記の場合は、特に、想定しなくて良い。しかしながら、一実施形態に係るステッピングモータの制御方法によれば、目標座標と、新たな目標座標とが同じ座標であった場合にも、減速時に新たな目標座標を受け付けた場合に、減速させると、丁度、新たな目標座標に到達させることができる。この場合を、図５Ｃに示しておく。
【００８４】
図５Ｄ及び図５Ｅは、減速させると、新たな目標座標を超える場合の制御例を示す。
【００８５】
コントローラ３１は、新たな目標座標を受け付けた後、ステッピングモータ１の減速を続ける。ステッピングモータ１が停止した後、コントローラ３１は、例えば、回転方向信号を反転させた後、駆動パルスを生成して、ステッピングモータ１を逆回転させ、ステッピングモータ１を新たな目標座標に到達するように加速及び減速（図５Ｄ）、又は最高速度Ｖｐｅａｋまで加速させた後に減速させる（図５Ｅ）。
【００８６】
これらの制御例１〜３が可能になるのは、主に、次の２つの理由からである。
【００８７】
（１）  コントローラ３１が、座標カウンタ３３から、ステッピングモータ１が回転する前の座標と、ステッピングモータ１の回転中の絶対座標と、停止時を基準とした相対座標（回転開始から出力した駆動パルスの総数）とを把握しており、新たな目標座標を受け付けた際の座標から新たな目標座標まで回転させるのに必要なパルス数を取得できること、及び
（２）  コントローラ３１が、減速時座標変化量カウンタ３４から、減速時座標変化量カウンタ３４に蓄積された駆動パルス数を取得しており、ステッピングモータ１が、現在の速度から停止するまでに必要なパルス数を把握できていること、による。
【００８８】
このように、一実施形態によれば、上記（１）、（２）が可能となる構成を備えているので、ステッピングモータ１が回転中であっても、新たな目標座標を受け付けること、並びに回転中に受け付けた新たな目標座標に向かっての継続した回転動作が可能となる。
【００８９】
従来は、図６Ａ及び図６Ｂの参考例に示すように、ステッピングモータを目標座標までの回転を一旦終了させないと、新たな目標座標までの回転ができない。このため、目標座標を小刻みに変更する場合には、余分な加速及び減速時間が生じ、新たな目標座標に到達するまでに無駄な時間が生じていた。
【００９０】
この点、一実施形態によれば、ステッピングモータ１が回転中であっても、新たな目標座標を受け付けること、並びに回転中に受け付けた新たな目標座標に向かっての継続した回転動作が可能であるので、目標座標を小刻みに変更する場合であっても、参考例に比較して、余分な加速及び減速時間がなく、新たな目標座標に短時間で到達させることができる。
【００９１】
さらに、一実施形態においては、加速指示及び減速指示は、上位システム、本例ではＣＰＵ２からの指示で動作するパルスジェネレータ３に組み込まれたコントローラ３１が行う。このため、上位システム、本例ではＣＰＵ２は、加速指示及び減速指示を発行せず、目標座標をコントローラ３１に発行するだけで済む。このため、ＣＰＵ２は、ステッピングモータ１が回転中であっても新たな目標座標の発行が可能となる。このように一実施形態においては、上位システムが、目標座標を発行するだけで済ませるようにすることも可能である。このため、上記一実施形態は、例えば、目標座標を小刻みに変更するような用途への利用に有用である。
【００９２】
このように、この発明の一実施形態によれば、目標座標を小刻みに変更しても、ステッピングモータを目標座標まで短時間で回転させることが可能なステッピングモータの制御方法、ステッピングモータの制御装置及びステッピングモータシステムを提供することができる。
【００９３】
以上、この発明を一実施形態にしたがって説明したが、この発明は上記一実施形態に限定されるものではなく、その主旨を逸脱しない範囲で様々に変形することができる。また、この発明の実施形態は、上記一実施形態が唯一の実施形態でもない。
【００９４】
例えば、一実施形態においては、速度制御に、加速及び減速に台形制御を例示したが、加速及び減速は台形制御以外の制御、例えばＳ字制御の場合にも適用することができる。
【００９５】
また、システム構成は一例であり、一実施形態において説明したステッピングモータの制御方法が実行可能なシステム構成であれば、一実施形態において説明したシステム構成以外の構成とすることができる。  
その他、この発明は、その趣旨を逸脱しない範囲で様々に変形することができる。
【符号の説明】
【００９６】
１…ステッピングモータ、２…ＣＰＵ、３…パルスジェネレータ、４…ドライバ、３１…コントローラ、３２…速度カウンタ、３３…座標カウンタ、３４…減速時座標変化量カウンタ。
【図１】
2011067013.tif 000003
【図２】
2011067013.tif 000004
【図３】
2011067013.tif 000005
【図４】
2011067013.tif 000006
【図５】
2011067013.tif 000007
【図６】
2011067013.tif 000008