(57)【要約】【課題】局部発振器を介して出力された比較的低い周波数のパルスを用い、比較的安価に高速パルスを生成できるとともに、任意の数のパルス数を有するパルス列を生成できる高速パルスの生成装置を提供することを目的とする。【解決手段】Ｓ１０３で、局部発振器から出力されるパルス列を逓倍する第一の逓倍数を設定し、Ｓ１０４で、駆動量の指令値を第一の逓倍数で除算して整数解と余数を算出し、Ｓ１０７、Ｓ１１２で、整数解のパルス数を有するパルス列を出力すると共に、余数のパルス数を有するパルス列を出力し、Ｓ１０８、Ｓ１１３で、整数解のパルス数を有するパルス列を第一の逓倍数で逓倍して第一の逓倍パルス列を生成すると共に、余数のパルス数を有するパルス列を逓倍数１で逓倍して第二の逓倍パルス列を生成し、Ｓ１１５で、第一の逓倍パルス列に前記第二の逓倍パルス列を加えて、出力パルス列を生成する。【選択図】図２
2006332893.tif 000002
【特許請求の範囲】
【請求項１】
局部発振器から出力されるパルス信号を高速化し、被駆動体の駆動量を指令する指令値としての出力パルス列を生成する高速パルスの生成装置であって、
局部発振器から出力されるパルス列を逓倍する第一の逓倍数を設定する逓倍数設定手段と、
駆動量の指令値を前記第一の逓倍数で除算し、整数解と余数を算出する演算手段と、
前記整数解のパルス数を有する前記パルス列を出力すると共に、前記余数のパルス数を有する前記パルス列を出力するパルス出力手段と、
前記整数解のパルス数を有する前記パルス列を前記第一の逓倍数で逓倍して第一の逓倍パルス列を生成すると共に、前記余数のパルス数を有する前記パルス列を逓倍数１で逓倍して第二の逓倍パルス列を生成する逓倍手段と、
を備え、
前記第一の逓倍パルス列に前記第二の逓倍パルス列を加えて、前記出力パルス列を生成することを特徴とする高速パルスの生成装置。
【請求項２】
前記逓倍数設定手段は、オペレータの指示にもとづいて、前記逓倍数を所定の値に切り換える逓倍数切換手段を備えている、
ことを特徴とする請求項１に記載の高速パルスの生成装置。
【請求項３】
複数の駆動量の指令値を夫々連続して前記第一の逓倍数で除算し、整数解と余数を算出すると共に該余数を累計して累計余数を算出する第二演算手段が備えられ、
前記パルス出力手段が、前記第二演算手段を介して算出された整数解の数を有する複数の前記パルス列を夫々出力すると共に、前記累計余数を有する余数累計パルス列を出力し、
前記逓倍手段が、前記複数のパルス列を前記第一の逓倍数で逓倍して第三の逓倍パルス列を生成すると共に、前記余数累計パルス列を逓倍数１で逓倍して第四の逓倍パルス列を生成し、
前記第三の逓倍パルス列に前記第四の逓倍パルス列を加えて前記出力パルス列を生成する、
ことを特徴とする請求項１又は請求項２に記載の高速パルスの生成装置。
【請求項４】
前記累計余数が前記第一の逓倍数以上であるか否かを判定する余数判定手段と、
前記異計余数が第一の逓倍数以上である際に、
該異計余数を前記第一の逓倍数で除算して、第二の整数解と第二の余数を算出する第三演算手段と、
前記第二の整数解のパルス数を有するパルス列を出力すると共に、前記第二の余数のパルス数有するパルス列を出力する第二のパルス出力手段と、
前記第二の整数解のパルス数を有するパルス列を第一の逓倍数で逓倍して第五の逓倍パルス列を生成すると共に、前記第二の余り数のパルス数有するパルス列を逓倍数１で逓倍して第六の逓倍パルス列を生成する第二逓倍手段と、
を備え、
前記第五の逓倍パルス列と第六の逓倍パルス列とを、前記第四の逓倍パルス列に代え、前記第三の逓倍パルス列に加えて前記出力パルス列を生成する、
ことを特徴とする請求項３に記載の高速パルスの生成装置。
【請求項５】
局部発振器から出力されるパルス信号を高速化し、被駆動体の駆動量を指令する指令値として出力パルス列を生成する高速パルスの生成方法であって、
局部発振器から出力されるパルス列を逓倍する第一の逓倍数を設定する第一ステップと、
前記駆動量の指令値を前記第一の逓倍数で除算し、整数解と余数を算出する第二ステップと、
前記整数解のパルス数を有するパルス列を出力すると共に、前記余数のパルス数を有するパルス列を出力する第三ステップと、
前記整数解のパルス数を有するパルス列を前記第一の逓倍数で逓倍して第一の逓倍パルス列を生成すると共に、前記余数のパルス数を有するパルス列を逓倍数１で逓倍して第二の逓倍パルス列を生成する第四ステップと、
を備え、
前記第一の逓倍パルス列に前記第二の逓倍パルス列を加えて、前記出力パルス列を生成することを特徴とする高速パルス生成方法。
【請求項６】
複数の前記駆動量の指令値を、夫々連続して前記第一の逓倍数で除算し、整数解と余数を算出すると共に該余数を累計する第五ステップと、
前記第五ステップで算出された整数解の数を有する複数のパルス列を夫々出力すると共に、前記累計した余数を有する余数累計パルス列を出力する第六ステップと、
前記整数解の数を有する複数のパルス列を前記第一の逓倍数で逓倍して第三の逓倍パルス列を生成すると共に、前記余数累計パルス列を逓倍数１で逓倍して第四の逓倍パルス列を生成する第七ステップと、
を備え、
前記第三の逓倍パルス列に前記第四の逓倍パルス列を加えて前記出力パルス列を生成する、
ことを特徴とする請求項５に記載の高速パルスの生成方法。
【請求項７】
前記累計余数が前記第一の逓倍数以上であるか否かを判定する第八ステップと、
前記異計余数が第一の逓倍数以上である際に、
該異計余数を前記第一の逓倍数で除算して、第二の整数解と第二の余数を算出する第九ステップと、
前記第二の整数解のパルス数を有するパルス列を出力すると共に、前記第二の余数のパルス数有するパルス列を出力する第十ステップと、
前記第二の整数解のパルス数を有するパルス列を第一の逓倍数で逓倍して第五の逓倍パルス列を生成すると共に、前記第二の余数のパルス数有するパルス列を逓倍数１で逓倍して第六の逓倍パルス列を生成する第十一ステップと、
を備え、
前記第五の逓倍パルス列と第六の逓倍パルス列とを、前記第四の逓倍パルス列に代え、前記第三の逓倍パルス列に加えて前記出力パルス列を生成する、
ことを特徴とする請求項６に記載の高速パルスの生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばモータ回動量などを制御する駆動パルス列を、高速、且つ任意のパルス数で生成できる高速パルスの生成装置及び生成方法に関する。
【背景技術】
【０００２】
従来、入力された指令パルスの量に応じてモータを制御し、被制御体の位置を制御するモータ制御装置が知られている。また、この際、モータで被制御体を高速で位置決めするために、高速のパルス列が求められており、高速パルスの生成手段として、ＩＣ（集積回路）を用いたものや、局部発振器から発振した比較的低い周波数のパルス列を所定の倍率で逓倍する逓倍回路を用いたものが知られている（例えば、特許文献１、２参照）。
【特許文献１】特開２００１−３２７１９４
【特許文献２】特開平０５−１８１５３４
【発明の開示】
【発明が解決しようとする課題】
【０００３】
前記のＩＣを用いた高速パルスの生成装置は、配線や回路配置などの制約条件が多く、特殊な集積回路を構成する必要があるので、高価なものになる虞があった。
【０００４】
一方、逓倍回路を用いた高速パルスの生成装置は、被駆動体の駆動量を指令する指令値を所定の逓倍数で除算して出力パルスの周期として高速化するものであって、この装置ではカウンタや除算回路など、比較的簡単なデジタル回路で実現できるため、安価なものとなる。しかしながら、駆動量を指令する指令値が所定の逓倍数で割り切れなかった場合には、割り切れるパルス分しか出力できないため、その余り数分の誤差が発生する虞があった。
【０００５】
そこで、本発明は、局部発振器を介して出力された比較的低い周波数のパルスを用い、比較的安価に高速パルスを生成できるとともに、任意の数のパルス数を有するパルス列を生成できる高速パルスの生成装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
かかる目的を達成するためになされた請求項１に記載の発明は、局部発振器から出力されるパルス信号を高速化し、被駆動体の駆動量を指令する指令値としての出力パルス列を生成する高速パルスの生成装置であって、局部発振器から出力されるパルス列を逓倍する第一の逓倍数を設定する逓倍数設定手段と、駆動量の指令値を前記第一の逓倍数で除算し、整数解と余数を算出する演算手段と、前記整数解のパルス数を有する前記パルス列を出力すると共に、前記余数のパルス数を有する前記パルス列を出力するパルス出力手段と、
前記整数解のパルス数を有する前記パルス列を前記第一の逓倍数で逓倍して第一の逓倍パルス列を生成すると共に、前記余数のパルス数を有する前記パルス列を逓倍数１で逓倍して第二の逓倍パルス列を生成する逓倍手段と、を備え、前記第一の逓倍パルス列に前記第二の逓倍パルス列を加えて、前記出力パルス列を生成することを特徴とする。
【０００７】
請求項１に記載の高速パルスの生成装置によれば、駆動量の指令値を第一の逓倍数で除算し、整数解と余数を算出する演算手段と、整数解のパルス数を有するパルス列を出力すると共に、余数のパルス数を有する前記パルス列を出力するパルス出力手段と、整数解のパルス数を有するパルス列を第一の逓倍数で逓倍して第一の逓倍パルス列を生成すると共に、余数のパルス数を有する前記パルス列を逓倍数１で逓倍して第二の逓倍パルス列を生成する逓倍手段と、を備え、第一の逓倍パルス列に第二の逓倍パルス列を加えて、出力パルス列を生成するように構成されているので、局部発振器を介して出力された比較的低い周波数のパルスを用い、比較的安価に高速パルスを生成できるとともに、任意の数のパルス数を有する出力パルス列を生成できる。
【０００８】
次に、請求項２に記載の発明は、請求項１に記載の高速パルスの生成装置において、前記逓倍数設定手段が、オペレータの指令にもとづいて、前記逓倍数を所定の値に切り換える逓倍数切換手段を備えている、ことを特徴とする。
【０００９】
請求項２に記載の高速パルス生成装置によれば、逓倍数設定手段が、オペレータの指令にもとづいて、逓倍数を所定の値に切り換える逓倍数切換手段を備えているので、被制御体の種類に合わせ、出力パルスの速度を自在に切り換えることができる。
【００１０】
次に、請求項３に記載の発明は、請求項１又は請求項２に記載の高速パルス生成装置において、複数の駆動量の指令値を夫々連続して前記第一の逓倍数で除算し、整数解と余数を算出すると共に該余数を累計して累計余数を算出する第二演算手段が備えられ、前記パルス出力手段が、前記第二演算手段を介して算出された整数解の数を有する複数の前記パルス列を夫々出力すると共に、前記累計余数を有する余数累計パルス列を出力し、前記逓倍手段が、前記複数のパルス列を前記第一の逓倍数で逓倍して第三の逓倍パルス列を生成すると共に、前記余数累計パルス列を逓倍数１で逓倍して第四の逓倍パルス列を生成し、
前記第三の逓倍パルス列に前記第四の逓倍パルス列を加えて前記出力パルス列を生成する、ことを特徴とする。
【００１１】
請求項３に記載の高速パルス生成装置によれば、複数の駆動量の指令値を夫々連続して第一の逓倍数で除算し、整数解と余数を算出すると共に該余数を累計して累計余数を算出する第二演算手段が備えられ、パルス出力手段が、第二演算手段を介して算出された整数解の数を有する複数のパルス列を夫々出力すると共に、累計余数を有する余数累計パルス列を出力し、逓倍手段が、複数のパルス列を第一の逓倍数で逓倍して第三の逓倍パルス列を生成すると共に、余数累計パルス列を逓倍数１で逓倍して第四の逓倍パルス列を生成し、第三の逓倍パルス列に第四の逓倍パルス列を加えて出力パルス列を生成するように構成されているので、駆動指令値の複数毎に、駆動量の指令値に誤差が発生することがないように出力パルスを生成できる。また、複数の駆動量の指令値の余り数を累計して生成した第四の逓倍パルス列を出力パルスに加えるように構成されているので、単一の駆動量の指令値毎に余り数に対応する第二の逓倍パルス列を出力パルス列に加えるよりも、速やかに出力パルス列を生成できる。
【００１２】
次に、請求項４に記載の発明は、請求項３に記載の高速パルスの生成装置において、前記累計余数が前記第一の逓倍数以上であるか否かを判定する余数判定手段と、前記異計余数が第一の逓倍数以上である際に、該異計余数を前記第一の逓倍数で除算して、第二の整数解と第二の余数を算出する第三演算手段と、前記第二の整数解のパルス数を有するパルス列を出力すると共に、前記第二の余数のパルス数有するパルス列を出力する第二のパルス出力手段と、前記第二の整数解のパルス数を有するパルス列を第一の逓倍数で逓倍して第五の逓倍パルス列を生成すると共に、前記第二の余り数のパルス数有するパルス列を逓倍数１で逓倍して第六の逓倍パルス列を生成する第二逓倍手段と、を備え、前記第五の逓倍パルス列と第六の逓倍パルス列とを、前記第四の逓倍パルス列に代え、前記第三の逓倍パルス列に加えて前記出力パルス列を生成する、ことを特徴とする。
【００１３】
請求項４に記載の高速パルスの生成装置によれば、累計余数が第一の逓倍数以上であるか否かを判定する余数判定手段と、異計余数が第一の逓倍数以上である際に、異計余数を第一の逓倍数で除算して、第二の整数解と第二の余数を算出する第三演算手段と、第二の整数解のパルス数を有するパルス列を出力すると共に、第二の余数のパルス数有するパルス列を出力する第二のパルス出力手段と、第二の整数解のパルス数を有するパルス列を第一の逓倍数で逓倍して第五の逓倍パルス列を生成すると共に、第二の余り数のパルス数有するパルス列を逓倍数１で逓倍して第六の逓倍パルス列を生成する第二逓倍手段と、を備え、前記第五の逓倍パルス列と第六の逓倍パルス列とを、前記第四の逓倍パルス列に代え、前記第三の逓倍パルス列に加えて前記出力パルス列を生成するように構成されているので、累計余り数を一逓倍で出力するよりも、速やかに出力パルス列を生成できる。
【００１４】
次に、請求項５に記載の発明は、局部発振器から出力されるパルス信号を高速化し、被駆動体の駆動量を指令する指令値として出力パルス列を生成する高速パルスの生成方法であって、局部発振器から出力されるパルス列を逓倍する第一の逓倍数を設定する第一ステップと、前記駆動量の指令値を前記第一の逓倍数で除算し、整数解と余数を算出する第二ステップと、前記整数解のパルス数を有するパルス列を出力すると共に、前記余数のパルス数を有するパルス列を出力する第三ステップと、前記整数解のパルス数を有するパルス列を前記第一の逓倍数で逓倍して第一の逓倍パルス列を生成すると共に、前記余数のパルス数を有するパルス列を逓倍数１で逓倍して第二の逓倍パルス列を生成する第四ステップと、を備え、前記第一の逓倍パルス列に前記第二の逓倍パルス列を加えて、前記出力パルス列を生成することを特徴とする。
【００１５】
請求項５に記載の高速パルスの生成方法によれば、請求項１に記載の発明と同じように、第一パルス列を第一の逓倍数で逓倍して生成した第一の逓倍パルス列に、第二パルス列を一逓倍で逓倍して生成した第二の逓倍パルス列を加えて出力パルスを生成するので、局部発振器を介して出力された比較的低い周波数のパルスを用い、比較的安価に高速パルスを生成できるとともに、任意の数のパルス数を有する出力パルス列を生成できる。
【００１６】
次に、請求項６に記載の発明は、請求項５に記載の高速パルスの生成方法において、複数の前記駆動量の指令値を、夫々連続して前記第一の逓倍数で除算し、整数解と余数を算出すると共に該余数を累計する第五ステップと、前記第五ステップで算出された整数解の数を有する複数のパルス列を夫々出力すると共に、前記累計した余数を有する余数累計パルス列を出力する第六ステップと、前記整数解の数を有する複数のパルス列を前記第一の逓倍数で逓倍して第三の逓倍パルス列を生成すると共に、前記余数累計パルス列を逓倍数１で逓倍して第四の逓倍パルス列を生成する第七ステップと、を備え、前記第三の逓倍パルス列に前記第四の逓倍パルス列を加えて前記出力パルス列を生成する、ことを特徴とする。
【００１７】
請求項６に記載の高速パルスの生成方法によれば、請求項３に記載の発明と同じように、複数のパルス列を第一の逓倍数で逓倍して第三の逓倍パルス列を生成すると共に、余数累計パルス列を逓倍数１で逓倍して第四の逓倍パルス列を生成し、第三の逓倍パルス列に第四の逓倍パルス列を加えて出力パルス列を生成するので、駆動指令値の複数毎に、第一の逓倍数で割り切れない余り数を出力パルスに加え、駆動量の指令値に誤差が発生することがないように出力パルスを生成できる。また、複数の駆動量の指令値の余り数を累計して生成した第四の逓倍パルス列を出力パルスに加えるので、単一の駆動量の指令値毎に余り数に対応する第二の逓倍パルス列を出力パルス列に加えるよりも、速やかに出力パルス列を生成できる。
【００１８】
次に、請求項７に記載の発明は、前記累計余数が前記第一の逓倍数以上であるか否かを判定する第八ステップと、前記異計余数が第一の逓倍数以上である際に、該異計余数を前記第一の逓倍数で除算して、第二の整数解と第二の余数を算出する第九ステップと、前記第二の整数解のパルス数を有するパルス列を出力すると共に、前記第二の余数のパルス数有するパルス列を出力する第十ステップと、前記第二の整数解のパルス数を有するパルス列を第一の逓倍数で逓倍して第五の逓倍パルス列を生成すると共に、前記第二の余数のパルス数有するパルス列を逓倍数１で逓倍して第六の逓倍パルス列を生成する第十一ステップと、を備え、前記第五の逓倍パルス列と第六の逓倍パルス列とを、前記第四の逓倍パルス列に代え、前記第三の逓倍パルス列に加えて前記出力パルスを生成する、ことを特徴とする。
【００１９】
請求項７に記載の高速パルスの生成方法によれば、請求項４に記載の発明と同じように、第五パルス列を第一の逓倍数で逓倍して第五の逓倍パルス列を生成すると共に、第六パルス列を逓倍数１で逓倍して第六の逓倍パルス列を生成し、第四の逓倍パルス列に代え、第五の逓倍パルス列と第六の逓倍パルス列とを第三の逓倍パルス列に加えて出力パルス列を生成するので、累計余り数を一逓倍で出力するよりも、速やかに出力パルス列を生成できる。
【発明の効果】
【００２０】
本発明の高速パルスの生成装置及び生成方法によれば、駆動量の指令値を第一の逓倍数で除算し、整数解と余数を算出し、整数解のパルス数を有する第一パルス列を出力すると共に、余数のパルス数を有する第二パルス列を出力し、第一パルス列を第一の逓倍数で逓倍して生成した第一の逓倍パルス列に、第二パルス列を逓倍数１で逓倍して生成した第二の逓倍パルス列を加えて出力パルス列を生成するように構成されているので、局部発振器を介して出力された比較的低い周波数のパルスを用い、比較的安価に高速パルスを生成できるとともに、任意の数のパルス数を有する出力パルス列を生成できる。
【００２１】
また、本発明の高速パルスの生成装置及び生成方法によれば、オペレータの指令にもとづいて、逓倍数を所定の値に切り換える逓倍数切り換え手段を備えているので、被制御体の種類の合わせ、出力パルスの速度を、自在に切り換えることができる。
【００２２】
また、本発明の高速パルスの生成装置及び生成方法によれば、複数の駆動量の指令値の余り数を累計して生成した第四の逓倍パルス列を出力パルス列に加えるように構成されているので、単一の駆動量の指令値毎に余り数に対応する第二の逓倍パルス列を出力パルス列に加えるよりも、速やかに出力パルス列を生成できる。
【００２３】
また、本発明の高速パルスの生成装置及び生成方法によれば、異計余数が第一の逓倍数以上である際に、異計余数を前記第一の逓倍数で除算して第二の整数解と第二の余り数を算出し、前記第二の整数解のパルス数を有する第五パルス列を出力すると共に、第二の余数のパルス数有する第六パルス列を出力し、第五パルス列を第一の逓倍数で逓倍して第五の逓倍パルス列を生成すると共に、第六パルス列を逓倍数１で逓倍して第六の逓倍パルス列を生成し、第四の逓倍パルス列に代え、第五の逓倍パルス列と第六の逓倍パルス列とを第三の逓倍パルス列に加えて出力パルスを生成するように構成されているので、累計余り数を一逓倍で出力するよりも、速やかに出力パルス列を生成できる。
【発明を実施するための最良の形態】
【００２４】
次に、本発明の一実施例の高速のパルスの生成装置及び生成方法を図を用いて説明する。また、本実施例の高速パルスの生成装置は、駆動モータの駆動を制御するためのパルス列を生成するものである。図１は高速パルスの生成装置の制御系を表すブロック図、図２は同実施例の制御系によって実行される高速パルスの生成手順を表すフローチャート、図３及び図４は、変形例における、高速パルスの生成手順を表すフローチャートである。
【００２５】
図１に表したように、本実施例における高速パルスの生成装置１は、オペレータからの操作信号をＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０に入力するインターフェース２、インターフェース２から入力された操作信号に基づきＲＯＭ及びＲＡＭと協働して各機能部の実行を処理するＭＰＵ１０を備えている。また、ＭＰＵ１０は、操作信号に基づいて、速度制御回路１２に駆動モータの速度指令信号を出力し、パルス出力回路１３に駆動モータの駆動量のパラメータとなるパルス数を指令し、逓倍回路１４に逓倍数を指令し、パルス計数回路１５にモータ駆動回路１８に出力する出力パルス列のパルス数を入力する。
【００２６】
また、高速パルスの生成装置１は、所定の周波数でクロック信号を連続して発振する局部発振器１１、局部発振器１１から出力されたクロック信号をＭＰＵ１０から入力された速度指令信号に基づき所定のパルス電圧及びデューティ比に設定してパルス出力回路１３に出力する速度制御回路１２、ＭＰＵ１０から入力されたパルス数指令信号に基づき駆動モータの駆動量に応じたパルス数のパルス列を逓倍回路に出力するパルス出力回路１３、パルス出力回路１３から入力されたパルス列をＭＰＵ１０から指令された逓倍数で逓倍し逓倍パルス列を出力する逓倍回路１４、逓倍回路１４から入力した逓倍パルス列のパルス数を計数すると共に、この計数されたパルス数とＭＰＵ１０から入力した出力パルスとの差を計数してパルス出力回路１３に出力するパルス計数回路１５、ＭＰＵ１０からの指令に基づき逓倍数の設定と逓倍数の切り換えを実行する逓倍数設定・切換部１６、複数の逓倍パルス列を連結して出力パルス列を生成する加算器１７、等を備えている。尚、本発明のパルス出力手段は、パルス出力回路１３によって、その機能が発現される。また、本発明の逓倍手段は、逓倍回路１４によって、その機能が発現される。
【００２７】
また、逓倍数設定・切換部１６には、被駆動体の情報を表すパラメータに関連付けられて複数の逓倍数が、ルックアップテーブルとして記憶されており、ＭＰＵ１０は、インターフェース２を介して入力された被駆動体情報のパラメータに応じルックアップテーブルから逓倍数を求める。尚、本発明の逓倍数設定手段及び逓倍数切換手段は、逓倍数設定・切換部１６及びＭＰＵ１２によって、その機能が発現される。
【００２８】
次に、インターフェース２から入力された操作信号を受けてモータ駆動回路１８に出力パルス列を出力するまでの手順を、図２に基づき説明する。この処理手順は、図示されないＲＯＭにそのプログラムが備えられ、ＭＰＵ１０がそのプログラムを使用して各処理を実行する。
【００２９】
まず、この手順は、インターフェース２を介して、起動信号がＭＰＵ１０に入力された際にスタートする。
【００３０】
次いで、Ｓ１０１（Ｓはステップを表す）において、ＲＯＭ、ＲＡＭ等に記憶されている過去の位置決めデータを初期化し、Ｓ１０２に移る。
【００３１】
次いで、Ｓ１０２において、インターフェース２を介して入力された位置決めデータ（所謂、駆動モータを駆動させる駆動量である）を読み込み、モータ制御回路１８に出力する出力パルス列のパルス数Ｎを換算し、Ｓ１０３に移る。また、この際、換算されたパルス数Ｎが、パルス計数回路１５に入力されて保存される。
【００３２】
次いで、Ｓ１０３において、インターフェース２を介して入力された被駆動体の情報を表すパラメータにもとづき、逓倍数設定・切換部１６に設定されているルックアップテーブルを用いて逓倍数（Ｔ）を設定し、Ｓ１０４に移る。本発明における第一のステップは、Ｓ１０３によって、その機能が発現される。
【００３３】
次いで、Ｓ１０４において、出力パルス数（Ｎ）を逓倍数（Ｔ）で除算し、整数解Ｄと余り数Ｒを算出し、Ｓ１０５に移る。尚、本発明の演算手段は、Ｓ１０４によって、その機能が発現される。また、本発明における演算手段及び第二のステップは、Ｓ１０４によって、その機能が発現される。
【００３４】
次いで、Ｓ１０５において、余数（Ｒ）が有るか否かが判定され、余数が無い（Ｎｏ）場合にはＳ２０１に移り、余り数が有る場合にはＳ１０６に移る。
【００３５】
次いで、Ｓ２０１において、整数解Ｄのパルス数を指令値としてパルス出力回路１３に入力して、パルス出力回路１３を介して、整数解Ｄを有するパルス数のパルス列を逓倍回路１４へ出力しＳ２０２に移る。次いで、Ｓ２０２において、パルス出力回路１３から入力されたパルス列を逓倍数（Ｔ）で逓倍し、Ｓ２０３に移り、Ｓ２０３において、逓倍数（Ｔ）で逓倍された逓倍パルス列を加算器１７を介してモータ駆動回路１８に出力する。次いで、Ｓ２０４で、インターフェース２を介して入力された次の位置決めデータが有るか否かを判定し、次の位置決めデータが無い（Ｎｏ）場合には、本処理手順を終了し、一方、次の位置決めデータが有る（Ｙｅｓ）場合には、Ｓ１０２に移り、Ｓ１０２からの手順を繰り返す。
【００３６】
一方、Ｓ１０５において、余り数（Ｒ）が有る（Ｙｅｓ）場合には、Ｓ１０６に移り、Ｓ１０６において、整数解Ｄのパルス数を指令値としてパルス出力回路１３に出力し、その後Ｓ１０７に移る。
【００３７】
次いで、Ｓ１０７において、パルス出力回路１３を介して、整数解Ｄを有するパルス数のパルス列を逓倍回路１４へ出力しＳ１０８に移り、Ｓ１０８において、パルス出力回路１３から入力されたパルス列を逓倍数（Ｔ）で逓倍し、その後Ｓ１０９に移る。
【００３８】
次いで、Ｓ１０９において、逓倍された逓倍パルス列を加算器１７へ出力し、Ｓ１１０に移り、Ｓ１１０において、逓倍数設定・切換部１６を介して、逓倍数（Ｔ）を１逓倍に切り換え、その後Ｓ１１１に移る。
【００３９】
次いで、Ｓ１１１において、余り数Ｒのパルス数を指令値としてパルス出力回路１３に入力して、Ｓ１１２に移り、Ｓ１１２において、パルス出力回路１３を介して、余り数Ｒを有するパルス数のパルス列を逓倍回路１４へ出力しＳ１１３に移る。尚、本発明の第三ステップは、Ｓ１０７及びＳ１１２によって、その機能が発現される。
【００４０】
次いで、Ｓ１１３において、パルス出力回路１３から入力されたパルス列を逓倍数１で逓倍し、Ｓ１１４に移る。尚、本発明の第四ステップは、Ｓ１０８及びＳ１１３によって、その機能が発現される。
【００４１】
次いで、Ｓ１１４において、逓倍された逓倍パルス列（第二の逓倍パルス列である。）を加算器１７に入力し、その後Ｓ１１５に移る。
【００４２】
次いで、Ｓ１１５において、余り数Ｒの逓倍パルス列を整数解（Ｄ）の逓倍パルス列に加えて出力パルス列を生成し、その後Ｓ１１６に移る。
【００４３】
次いで、Ｓ１１６において、出力パルス列を加算器１７を介してモータ駆動回路１７に出力し、Ｓ２０４に移る。
【００４４】
次いで、Ｓ２０４において、インターフェースを２介して入力された次の位置決めデータが有るか否かを判定し、次の位置決めデータが無い（Ｎｏ）場合には、本処理手順を終了し、一方、次の位置決めデータが有る（Ｙｅｓ）場合には、Ｓ１０２に移り、Ｓ１０２からの手順を繰り返す。
【００４５】
以下に、前記の構成を有する実施例の、高速パルスの生成装置１の作用効果を記載する。
【００４６】
実施例に記載した高速パルスの生成装置１によれば、Ｓ１０４において位置決めデータ（Ｎ）を逓倍数（Ｔ）で除算し、整数解Ｄと余り数Ｒを算出し、Ｓ１０７において整数解Ｄのパルス数を有する第一パルス列を出力すると共に、Ｓ１１２おいて余り数のパルス数を有する第二パルス列を出力して、Ｓ１０８において第一パルス列を逓倍数（Ｔ）で逓倍すると共にＳ１１３において第二パルス列を逓倍数１で逓倍し、Ｓ１１５において第一パルス列を第一の逓倍数で逓倍して生成した第一の逓倍パルス列に、第二パルス列を逓倍数１で逓倍して生成した第二の逓倍パルス列を加えて出力パルス列を生成するように構成されているので、局部発振器１１を介して出力された比較的低い周波数のパルスを用い、比較的安価に高速パルスを生成できるとともに、任意の数のパルス数を有する出力パルス列を生成できる。
【００４７】
また、実施例に記載した高速パルスの生成装置１によれば、インターフェース２を介して入力された被駆動体情報のパラメータに応じ、逓倍数を所定の値に切り換える逓倍数設定・切換部１６を備えているので、被制御体の種類の合わせ、出力パルスの速度を、自在に切り換えることができる。
【００４８】
次に、前記実施例の高速パルスの生成手順の変形例を、図３及び図４に基づき説明する。尚、図３のフローチャート中のＳ１０１からＳ１０４は、前記実施例における高速パルスの生成手順と共通なので、図３のＳ１０５の手順から説明する。
【００４９】
Ｓ１０５において、余数（Ｒ）が有るか否かが判定され、余数が無い（Ｎｏ）場合にはＳ３０２に移り、一方、余数が有る（Ｙｅｓ）場合にはＳ３０１に移る。
【００５０】
次いで、３０１において、パルス計数回路１５を用い余数Ｒに、Ｓ１０４で算出された余数Ｒを加算し、上書き保存する。尚、Ｓ１０４で算出された余数Ｒが、Ｓ１０１において位置決めデータが初期化されてから初めて算出されたものである場合には、その余数Ｒがそのまま保存されることになる。尚、本発明の第二演算手段及び第五ステップは、Ｓ１０４、Ｓ１０５、Ｓ３０１によって、その機能が発現される。
【００５１】
次いで、Ｓ３０２において、整数解Ｄのパルス数を指令値としてパルス出力回路１３に入力して、その後Ｓ３０３に移る。
【００５２】
次いで、Ｓ３０３において、次の位置決めデータ（Ｎ）が有るか否かを判定し、次の位置決めデータが有る（Ｙｅｓ）場合には、Ｓ１０２に移り、Ｓ１０２からの手順を繰り返し、一方、次の位置決めデータが無い（Ｎｏ）場合には、図４のＳ３０４に移る。
【００５３】
また、この際、複数の位置決めデータ（所謂、複数の駆動量の指令値である。）がある場合には、Ｓ３０１において複数の余数が加算されて保存され、Ｓ３０２において、順次、整数解Ｄのパルス数が指令値としてパルス出力回路１３に入力される。
【００５４】
次いで、Ｓ３０４において、パルス出力回路１３を介して、順次、整数解Ｄを有するパルス数のパルス列及び累計余数Ｒのパルス列を逓倍回路１４へ出力し、その後Ｓ３０５に移る。尚、本発明における第六ステップは、Ｓ３０４によってその機能が発現される。
【００５５】
次いで、Ｓ３０５において、パルス出力回路１３から逓倍回路１４に入力されたパルス列を、順次、逓倍数（Ｔ）で逓倍して（所謂、本発明における第三の逓倍パルス列が生成される。）加算器１７へ出力し、Ｓ３０６に移る。
【００５６】
次いで、Ｓ３０６において、逓倍パルス列の出力が完了したか否かを判定し、完了した（Ｙｅｓ）の場合Ｓ３０７に移り、一方、完了していない（Ｎｏ）の場合、完了するまで待機する。
【００５７】
次いで、Ｓ３０７において、累計余数Ｒが逓倍数（Ｔ）を越えるか否かを判定し、逓倍数（Ｔ）を越える（Ｙｅｓ）の場合にＳ３０８に移り、一方、逓倍数（Ｔ）を越えない（Ｎｏ）の場合にＳ４０１に移る。尚、本発明における余数判定手段及び第八ステップは、Ｓ３０７によってその機能が発現される。
【００５８】
次いで、Ｓ４０１において、逓倍数設定・切換部１６を介して、逓倍数（Ｔ）を１逓倍に切り換え、Ｓ４０２に移る。
【００５９】
次いで、Ｓ４０２において、累計余り数Ｒのパルス数を指令値としてパルス出力回路１３に入力して、Ｓ４０３に移る。
【００６０】
次いで、Ｓ４０３において、パルス出力回路１３を介して、累計余数Ｒのパルス数のパルス列（所謂、本発明の余数累計パルス列である。）を逓倍回路１４へ出力しＳ４０４に移る。
【００６１】
次いで、Ｓ４０４において、累計余数のパルス列を１逓倍して逓倍パルス列（所謂、本発明における第四の逓倍パルス列である。）を生成し、逓倍された逓倍パルス列を加算器１７へ出力し、Ｓ４０５に移る。尚、本発明における第七ステップは、Ｓ４０４によってその機能が発現される。
【００６２】
次いで、Ｓ４０５において、累計余数Ｒの逓倍パルス列を整数解（Ｄ）の逓倍パルス列に加えて出力パルス列を生成し、その後Ｓ４０６に移る。
【００６３】
次いで、Ｓ４０６において、出力パルス列をモータ駆動回路１７に出力し、その後Ｓ４０７に移る。
【００６４】
次いで、Ｓ４０７において、位置決め完了か否かをインターフェース２を介して入力された操作信号に基づいて判定し、位置決めが完了（Ｙｅｓ)した場合には、本処理の手順を終了し、位置決めが完了していない（Ｎｏ）の場合には、位置決めが完了するまで待機し、位置決めが完了した時点で本処理の手順を終了する。
【００６５】
一方、Ｓ３０７において、累計余数Ｒが逓倍数を超えている（Ｙｅｓ）の場合には、Ｓ３０８において、累計余り数Ｒを逓倍数（Ｔ）で除算し、整数解ｄ（本発明の第二の整数解である。）と余数ｒ（本発明の第二の余数である。）を算出し、Ｓ３０９に移る。尚、本発明における第三演算手段及び第九ステップは、Ｓ３０８によってその機能が発現される。
【００６６】
次いで、Ｓ３０９において、Ｓ３０１で保存された累計余り数Ｒを余り数ｒに更新し、その後Ｓ３１０に移り、Ｓ３１０において、整数解ｄのパルス数を指令値としてパルス出力回路１３へ出力し、そＳ３１１に移る。
【００６７】
次いで、Ｓ３１１において、パルス出力回路１３を介して、整数解ｄのパルス数をを有するパルス数のパルス列を逓倍回路１４へ出力し、その後Ｓ３１２に移る。
【００６８】
次いで、Ｓ３１２において、パルス出力回路１３から入力されたパルス列を逓倍数（Ｔで逓倍して（所謂、本発明の第五の逓倍パルス列が生成される。）加算器１７へ出力し、Ｓ３１３に移る。
【００６９】
次いで、Ｓ３１３において、逓倍設定・切換部１６を介して、逓倍数Ｔを逓倍数１に切り換え、Ｓ３１４に移る。
【００７０】
次いで、Ｓ３１４において、余数ｒのパルス数を指令値としてパルス出力回路１３に入力して、Ｓ３１５に移る。
【００７１】
次いで、Ｓ３１５において、パルス出力回路１３を介して、余り数ｒを有するパルス数のパルス列を逓倍回路１４へ出力しＳ３１６に移る。尚、本発明における第二のパルス出力手段及び第十ステップは、Ｓ３１１、Ｓ３１５によってその機能が発現される。
【００７２】
次いで、Ｓ３１６において、余り数ｒのパルス数のパルス列を１逓倍して（所謂、本発明の第六の逓倍パルス列が生成される。）加算器１７に入力し、Ｓ３１７に移る。尚、本発明における第二逓倍手段及び第十一ステップは、Ｓ３１２、Ｓ３１６によって、その機能が発現される。
【００７３】
次いで、Ｓ３１７において、余り数ｒの逓倍パルス列と、整数解（Ｄ）の逓倍パルス列と整数解（ｄ）とを加えて出力パルス列を生成し、Ｓ３１８に移る。
【００７４】
次いで、Ｓ３１８において、出力パルス列をモータ駆動回路１８に出力し、Ｓ４０７に移る。
【００７５】
次いで、Ｓ４０７において、位置決め完了か否かをインターフェース２を介して入力された操作信号に基づいて判定し、位置決めが完了（Ｙｅｓ)した場合には、本処理の手順を終了し、位置決めが完了していない（Ｎｏ）の場合には、位置決めが完了するまで待機し、位置決めが完了した時点で本処理の手順を終了する。
【００７６】
以下に、前記の構成を有する変形例の、高速パルスの生成装置１の作用効果を記載する。
【００７７】
変形例に記載の高速パルス生成装置によれば、Ｓ１０４において、複数の駆動量の指令値を夫々連続して第一の逓倍数で除算して整数解と余数を算出すると共に、Ｓ３０１において、該余数を累計して累計余数を算出し、次いで、Ｓ３０４において整数解の数を有する複数のパルス列を夫々出力すると共に、累計余数を有する余数累計パルス列を出力し、Ｓ３０５において、複数のパルス列を第一の逓倍数で逓倍して第三の逓倍パルス列を生成すると共に、Ｓ４０４において、余数累計パルス列を逓倍数１で逓倍して第四の逓倍パルス列を生成し、Ｓ４０６において、第三の逓倍パルス列に第四の逓倍パルス列を加えて出力パルス列を生成するように構成されているので、駆動指令値の複数毎に、駆動量の指令値に誤差が発生することがないように出力パルス列を生成できる。また、複数の駆動量の指令値の余り数を累計して生成した第四の逓倍パルス列を出力パルスに加えるように構成されているので、単一の駆動量の指令値毎に余り数に対応するパルス列を出力パルス列に加えるよりも、速やかに出力パルス列を生成できる。
【００７８】
また、変形例に記載の高速パルス生成装置によれば、Ｓ３０７において、累計余数が第一の逓倍数以上であるか否かを判定し、次いで、Ｓ３０８において、異計余数が第一の逓倍数以上である際に、異計余数を第一の逓倍数で除算して、第二の整数解と第二の余数を算出し、Ｓ３１１において第二の整数解のパルス数を有するパルス列を出力すると共に、Ｓ３１５において第二の余数のパルス数有するパルス列を出力し、次いで、Ｓ３１２において第二の整数解のパルス数を有するパルス列を第一の逓倍数で逓倍して第五の逓倍パルス列を生成すると共に、Ｓ３１６において第二の余り数のパルス数有するパルス列を逓倍数１で逓倍して第六の逓倍パルス列を生成し、Ｓ３１８において、第五の逓倍パルス列と第六の逓倍パルス列とを、第三の逓倍パルス列に加えて出力パルス列を生成するように構成されているので、累計余数を一括して逓倍数１で出力するよりも、速やかに出力パルス列を生成できる。
【図面の簡単な説明】
【００７９】
【図１】本発明の一実施例の、高速パルスの生成装置の制御系を表すブロック図である。
【図２】同実施例の制御系によって実行される高速パルスの生成手順を表すフローチャートである。
【図３】本発明の変形例における、高速パルスの生成手順を表すフローチャートである。
【図４】本発明の変形例における、高速パルスの生成手順を表すフローチャートである。
【符号の説明】
【００８０】
１…高速パルスの生成装置、２…インターフェース、１０…ＭＰＵ、１１…局部発振器、１２…速度制御回路、１３…パルス出力回路、１４…逓倍回路、１５…パルス計数回路、１６…逓倍設定・切換部、１７…加算器、１８…モータ駆動回路。
【図１】
2006332893.tif 000003
【図２】
2006332893.tif 000004
【図３】
2006332893.tif 000005
【図４】
2006332893.tif 000006