(57)【特許請求の範囲】
【請求項１】
所望の運転速度パターンに応じて位置決め制御用のパルス出力を発生するパルス出力回路部を備えた位置決め制御装置であって、
目標とするパルス発生数、およびパルス出力周期または周波数の変遷特性に基づいて前記所望の運転速度パターンを特定するためのパラメータを決定する換算設定手段をさらに備え、
前記パルス出力回路部は、入力信号の計数現在値が格納される現在値レジスタと、前記換算設定手段により決定された前記パラメータのうちの第１パラメータが設定される第１の設定レジスタと、前記換算設定手段により特定された前記パラメータのうちの第２パラメータとして前記第１パラメータ以下の値が設定される第２の設定レジスタと、前記現在値レジスタと前記第１の設定レジスタとの比較結果を出力する第１の比較回路と、前記現在値レジスタと前記第２の設定レジスタとの比較結果を出力する第２の比較回路とをそれぞれ有する第１の高速カウンタおよび第２の高速カウンタとを含み、
前記第１の高速カウンタは、所定周期の基準クロック信号または当該基準クロック信号の分周信号を入力とし、前記基準クロック信号または前記分周信号の計数現在値が現在値レジスタに格納され、
前記第２の高速カウンタは、前記位置決め制御用のパルス出力を入力として、パルス発生数の経過状況が現在値レジスタに格納され、
前記第１の高速カウンタおよび前記第２の高速カウンタに設けられた前記第１の比較回路は、前記現在値レジスタの値が前記第１の設定レジスタの設定値と一致するかまたは一致点以上または一致点超過したことによってカウントアップ出力を発生し、
前記第１の高速カウンタおよび前記第２の高速カウンタに設けられた前記第２の比較回路は、前記現在値レジスタの値が上昇または下降している過程において、前記現在値レジスタの値が前記第２の設定レジスタの設定値と一致するかまたは一致状態を通過したことによって上昇比較出力または下降比較出力の少なくとも一方の出力を発生し、
前記パルス出力回路部は、前記第１の高速カウンタによる前記カウントアップ出力の発生と、前記第２の高速カウンタによる前記上昇比較出力または前記下降比較出力の少なくとも一方の出力の発生とに応動して、前記目標とするパルス発生数および前記変遷特性に基づく前記所望の運転速度パターンによるパルス出力を発生する
ことを特徴とする位置決め制御装置。
【請求項２】
請求項１に記載の位置決め制御装置において、
前記換算設定手段は、マイクロプロセッサと協働するプログラムメモリ内に記憶された制御プログラムを実行することで機能し、
前記マイクロプロセッサは、前記換算設定手段により決定された前記パラメータを前記パルス出力回路部に送信した後に、前記所望の運転速度パターンによるパルス出力のスタート指令を前記パルス出力回路部に送信し、
前記パルス出力回路部内の前記第１の高速カウンタおよび前記第２の高速カウンタは、前記スタート指令を受信したことによりカウント動作を開始し、
前記第２の高速カウンタは、前記所望の運転速度パターンによるパルス出力の完了に伴ってパルス発生完了信号を前記マイクロプロセッサに送信する
ことを特徴とする位置決め制御装置。
【請求項３】
請求項２に記載の位置決め制御装置において、
前記第１の高速カウンタは、目標とする低速運転用の第１のパルス周期に対応した設定値が前記第１の高速カウンタの第１パラメータとして前記換算設定手段により設定され第１の設定レジスタに格納されており、目標とする高速運転用の第２のパルス周期に対応した設定値が前記第１の高速カウンタの第２パラメータとして前記換算設定手段により設定され第２の設定レジスタに格納されているとともに、選択切換回路と交番出力回路とが接続されており、
前記選択切換回路は、前記第１の高速カウンタのカウントアップ出力が発生したときに前記第１の高速カウンタの現在値レジスタをリセットしてから基準クロック信号の計数を再開する第１のリセットタイミングか、または前記第１の高速カウンタの上昇比較出力が発生したときに前記第１の高速カウンタの現在値レジスタをリセットしてから基準クロック信号の計数を再開する第２のリセットタイミングのいずれを選択するかをリセットタイミング指令を受信することで切り替え、前記第１の高速カウンタをリングカウンタとして作動させる回路であり、
前記交番出力回路は、前記第１の高速カウンタのカウントアップ出力または上昇比較出力が発生する都度に出力論理が反転し、前記基準クロック信号の周期と前記第１の高速カウンタの前記第１パラメータまたは前記第２パラメータとの積の２倍の周期のパルス出力を発生する回路であり、
前記第２の高速カウンタは、目標とするパルス発生数の半分の値が前記第２の高速カウンタの第１パラメータとして前記換算設定手段により設定され第１の設定レジスタに格納されており、目標とする低速運転のパルス発生数が前記第２の高速カウンタの第２パラメータとして前記換算設定手段により設定され第２の設定レジスタに格納されており、計数動作を開始してからカウントアップ出力が発生するまでは加算カウンタとして動作し、前記カウントアップ出力が発生した後は減算カウンタとして動作するとともに、計数動作を開始してから上昇比較出力が発生するまでは前記選択切換回路を低速側に切換えるために前記第１のリセットタイミングを選択するリセットタイミング指令を前記選択切換回路に送信し、前記上昇比較出力が発生してからカウントアップ出力が発生して計数方向が反転した後、前記下降比較出力が発生するまでは前記選択切換回路を高速側に切換えるために前記第２のリセットタイミングを選択するリセットタイミング指令を前記選択切換回路に送信し、下降比較出力が発生してから復帰出力が発生するまでは再び前記選択切換回路を低速側に切換えるために前記第１のリセットタイミングを選択するリセットタイミング指令を前記選択切換回路に送信し、
前記第２の高速カウンタは、現在値がゼロに復帰した時点で前記復帰出力をセットし、前記復帰出力をセットしたことに伴って前記第１の高速カウンタのパルス発生または前記交番出力回路のパルス出力を停止させるとともに、前記パルス発生完了信号を前記マイクロプロセッサに送信し、前記マイクロプロセッサからのリセット指令によって前記復帰出力のセット状態をリセットする
ことを特徴とする位置決め制御装置。
【請求項４】
請求項３に記載の位置決め制御装置において、
前記換算設定手段は、前記目標とするパルス発生数が奇数である場合には、前記目標とするパルス発生数の前後の偶数値の半分の値を前記第１パラメータとして前記第２の高速カウンタの第１の設定レジスタに設定するとともに、前記第２の高速カウンタの現在値レジスタにマイナス１またはプラス１を初期値として設定する
ことを特徴とする位置決め制御装置。
【請求項５】
請求項２に記載の位置決め制御装置において、
前記第１の高速カウンタが、低速から高速または高速から低速への漸増・漸減速度パターンとなる出力パルスの周波数変遷パターンを生成するように、前記第１の高速カウンタに接続された第１の前段高速カウンタと、
前記第１の高速カウンタと前記第１の前段高速カウンタとの間に接続された第１の交番出力回路と
をさらに備え、
前記第１の前段高速カウンタは、所定周期の基準クロック信号を計数するとともに、前記第１の交番出力回路を介して漸増漸減の周期を規定する計数入力信号を生成させる回路であり、所定の漸増・漸減周波数の変分値に対応した所要変分時間の半分の値が前記第１の前段高速カウンタの第１パラメータまたは第２パラメータとして前記換算設定手段により設定され第１の設定レジスタまたは第２の設定レジスタに格納され、カウントアップ出力または上昇比較出力が発生して現在値レジスタがリセットされる都度に前記第１の交番出力回路の出力論理を反転させて前記計数入力信号を生成させるカウンタ回路であり、
前記第１の高速カウンタは、第１の変分値レジスタをさらに有し、前記第１の交番出力回路からの前記計数入力信号を計数するものであって、目標とする高速運転用の第１のパルス周波数に対応した第１の設定値が前記第１の高速カウンタの第１パラメータとして前記換算設定手段により設定され第１の設定レジスタに格納されており、目標とする停止前の低速運転用の第２のパルス周波数に対応した第２の設定値が前記第１の高速カウンタの第２パラメータとして前記換算設定手段により設定され第２の設定レジスタに格納されており、目標とする運転開始時の低速運転用の第３のパルス周波数に対応した第３の設定値が初期値として前記換算設定手段により設定され現在値レジスタに格納されており、漸増漸減の周期における周波数の変分値が前記換算設定手段により設定され前記第１の変分値レジスタに格納されており、第１の高速カウンタに前記第１の交番出力回路から前記計数入力信号が与えられたときに作用して、現在値レジスタに対して前記第１の変分値レジスタに格納されている前記周波数の変分値を加算または減算することにより、前記第１の高速カウンタの現在値が計数開始に伴って前記第３の設定値から漸増し、前記カウントアップ出力が発生したことに伴って加算動作が停止して前記第１の設定値を持続し、減速開始指令が与えられたことによって漸減し、前記下降比較出力が発生したことに伴って減算動作を停止して前記第２の設定値を持続するものであり、
前記第２の高速カウンタは、前記第１の高速カウンタの現在値レジスタの値の逆数に比例した周期のパルスを計数するものであって、目標とするパルスの発生数が前記第２の高速カウンタの第１パラメータとして前記換算設定手段により設定され第１の設定レジスタに格納されており、減速開始点までのパルスの発生数が前記第２の高速カウンタの第２パラメータとして前記換算設定手段により設定され第２の設定レジスタに格納されており、上昇比較出力の発生に伴って前記第１の高速カウンタの減算動作を開始させ、カウントアップ出力の発生に伴って前記第１の高速カウンタのパルス発生を停止させ、前記パルス発生完了信号を前記マイクロプロセッサに送信する
ことを特徴とする位置決め制御装置。
【請求項６】
請求項５に記載の位置決め制御装置において、
前記第１の高速カウンタの現在値の逆数を得るために前記第２の高速カウンタに接続された第２の前段高速カウンタと、
前記第２の高速カウンタと前記第２の前段高速カウンタとの間に接続された第２の交番出力回路と
をさらに備え、
前記第２の前段高速カウンタは、目標周波数となる前記第１の高速カウンタの現在値レジスタの値が格納された第２の変分値レジスタを有し、所定周期の基準クロック信号を計数するとともに、所定の係数が前記第２の前段高速カウンタの第１パラメータまたは第２パラメータとして前記換算設定手段により設定され第１の設定レジスタまたは第２の設定レジスタに格納されており、前記第２の前段高速カウンタに入力される前記所定周期の基準クロック信号を加算計数入力として作用し、前記加算計数入力に応じて前記第２の前段高速カウンタの現在値レジスタに対して前記第２の変分値レジスタに格納されている前記目標周波数の値を加算し、カウントアップ出力または上昇比較出力が発生して現在値レジスタがリセットされる都度に前記第２の交番出力回路の出力論理を反転させ、前記所定の係数を前記第２の変分値レジスタの値で割った商の２倍の周期のパルス出力を前記第２の交番出力回路から発生させ、
前記第２の高速カウンタは、前記第２の交番出力回路の出力信号を計数する
ことを特徴とする位置決め制御装置。
【請求項７】
請求項６に記載の位置決め制御装置において、
前記第１の高速カウンタは、原点近傍で作動し原点側近位置で作動復帰する近点ドッグ信号が位置決用入力信号として接続されており、
前記第２の高速カウンタは、前記近点ドッグ信号と、前記パルス出力によって駆動されるサーボモータに設けられ、前記サーボモータの１回転当たりに１パルスの出力を発生するＺ相信号が入力されるゼロ点信号とが位置決用入力信号として接続され、原点出しが完了したときに前記サーボモータを駆動するサーボアンプの位置決め偏差残留パルスをリセットするためのクリア信号が位置決用出力信号として接続されており、
前記第２の高速カウンタは、原点復帰指令が与えられたときには前記第２の交番出力回路の出力であるパルス出力の計数を行なわず、前記近点ドッグ信号の作動復帰に伴って前記ゼロ点信号である間欠パルス信号を計数し、計数したゼロ点信号数が前記換算設定手段により設定された所定の設定値に達したときにパルス出力の発生を停止して前記パルス発生完了信号を前記マイクロプロセッサに送信するとともに、前記サーボアンプに対して前記クリア信号を供給し、
前記第１の高速カウンタは、前記第１の交番出力回路からの前記計数入力信号を計数するものであって、目標とする原点復帰運転用の第１のパルス周波数に対応した第１の設定値が前記第１の高速カウンタの第１パラメータとして前記換算設定手段により設定され第１の設定レジスタに格納されており、目標とする微速運転用の第２のパルス周波数に対応した第２の設定値が前記第１の高速カウンタの第２パラメータとして前記換算設定手段により設定され第２の設定レジスタに格納されており、目標とする運転開始時の低速運転用の第３のパルス周波数に対応した第３の設定値が初期値として前記換算設定手段により設定され現在値レジスタに格納されており、前記周波数の変分値が前記換算設定手段により設定され前記第１の変分値レジスタに格納されており、前記第１の高速カウンタの現在値が、計数開始に伴って前記第３の設定値から漸増し、前記カウントアップ出力が発生したことに伴って加算動作が停止して前記第１の設定値を持続し、目標原点の近傍位置に接近したときに動作する近点ドッグ信号の作動によって発生する減速開始指令が与えられたことによって漸減し、前記下降比較出力が発生したことに伴って減算動作を停止して第２の設定値を持続する
ことを特徴とする位置決め制御装置。
【請求項８】
請求項７に記載の位置決め制御装置において、
前記マイクロプロセッサは、協働するＲＡＭメモリとして絶対位置情報が格納される位置情報レジスタを有するとともに、前記制御プログラムを実行することで機能する現在位置初期化手段と代数加算手段とをさらに備え、
前記現在位置初期化手段は、前記原点復帰動作が完了した時点において、前記位置情報レジスタに対して所定の原点位置情報を書込み保存し、
前記代数加算手段は、前記速度パターンによる１回の位置決め制御が完了した時点で前記第２の高速カウンタの現在値レジスタの値を読み出して、指令されていた回転方向に応じて前記位置情報レジスタに今回の移動量を代数加算し、
前記換算設定手段は、次回の目標位置と前記位置情報レジスタの内容との偏差として算出された相対移動量と移動方向を、前記パルス出力回路部に対する設定情報として指令する
ことを特徴とする位置決め制御装置。
【請求項９】
請求項２に記載の位置決め制御装置において、
前記第１の比較回路および前記第２の比較回路は、比較一致点を境として、一致点以上と未満、若しくは一致点超過と未満の大小の二値化論理出力を発生し、計数入力信号の論理が計数状態に反転した時点から所定の遅延時間をおいて記憶回路に更新格納することによって前記カウントアップ出力と、前記上昇比較出力または前記下降比較出力とが得られる
ことを特徴とする位置決め制御装置。
【請求項１０】
請求項３または４に記載の位置決め制御装置において、
前記第１の比較回路および前記第２の比較回路は、比較一致または比較不一致による二値化論理出力を発生し、計数入力信号の論理が計数状態に反転した時点から所定の遅延時間をおいて記憶回路に更新格納することによって前記カウントアップ出力と、前記上昇比較出力または前記下降比較出力とが得られる
ことを特徴とする位置決め制御装置。
【請求項１１】
請求項５に記載の位置決め制御装置において、
前記換算設定手段は、前記第１の高速カウンタの前記第１の設定レジスタおよび前記第２の設定レジスタに設定する前記第１の設定値および前記前記第２の設定値を、前記第１の変分値レジスタに設定する周波数の変分値の整数倍の値として設定し、
前記第１の前段高速カウンタと第１の高速カウンタと第２の高速カウンタのそれぞれに設けられた前記第１の比較回路および前記第２の比較回路は、比較一致または比較不一致による二値化論理出力を発生し、計数入力信号の論理が計数状態に反転した時点から所定の遅延時間をおいて記憶回路に更新格納することによって前記カウントアップ出力と、前記上昇比較出力または前記下降比較出力とが得られる
ことを特徴とする位置決め制御装置。
【請求項１２】
請求項２に記載の位置決め制御装置において、
前記第１の高速カウンタおよび前記第２の高速カウンタに設けられた前記第２の比較回路のそれぞれは、対応する前記第１の高速カウンタまたは前記第２の高速カウンタがアップカウントモードであるときに前記第２の比較回路が一致判定または一致点を通過したと判定した場合に、前記上昇比較出力を有効として上昇比較判定用の記憶回路に保存し、対応する前記第１の高速カウンタまたは前記第２の高速カウンタがダウンカウントモードであるときに前記第２の比較回路が一致判定または一致点を通過したと判定した場合に、前記下降比較出力を有効として下降比較判定用の記憶回路に保存し、前記マイクロプロセッサからのリセット指令によってそれぞれの前記記憶回路の記憶状態を消去する
ことを特徴とする位置決め制御装置。
【請求項１３】
請求項２に記載の位置決め制御装置において、
前記第１の高速カウンタおよび前記第２の高速カウンタに設けられた前記第２の比較回路のそれぞれは、対応する前記第１の高速カウンタまたは前記第２の高速カウンタのカウントアップ出力が作動する前に前記第２の比較回路が一致判定または一致点を通過したと判定した場合に、前記上昇比較出力を有効として上昇比較判定用の記憶回路に保存し、対応する前記第１の高速カウンタまたは前記第２の高速カウンタのカウントアップ出力が作動した後に前記第２の比較回路が一致判定または一致点を通過したと判定した場合に、前記下降比較出力を有効として下降比較判定用の記憶回路に保存し、前記マイクロプロセッサからのリセット指令によってそれぞれの前記記憶回路の記憶状態を消去する
ことを特徴とする位置決め制御装置。
【請求項１４】
請求項２に記載の位置決め制御装置において、
前記マイクロプロセッサは、複数の入力センサと複数の電気負荷に対して接続され、前記入力センサの動作状態と前記プログラムメモリに格納された制御プログラムの内容によって前記複数の電気負荷を駆動制御するプログラマブルコントローラのＣＰＵユニットに内蔵され、
前記パルス出力回路部は、前記マイクロプロセッサとバス接続された入出力ユニットに内蔵されているとともに、出力選択回路をさらに備え、
前記換算設定手段は、前記制御プログラムの一部として前記プログラムメモリに格納された特殊命令によって実行されるものであり、前記特殊命令は、少なくとも目標とするパルス発生数と目標運転速度パターンとなるパルス出力周期または周波数の変遷特性を含む運転定数の設定を行うとともに、回転方向指令と始動／停止指令、若しくは正転始動／停止指令と逆転始動／停止指令を包含し、
前記出力選択回路は、前記回転方向指令と始動／停止指令、若しくは正転始動／停止指令と逆転始動／停止指令に基づいて回転方向指令と正逆転パルス出力、若しくは正転パルス出力と逆転パルス出力を発生し、
前記マイクロプロセッサは、前記パルス出力回路部から前記パルス発生完了信号を受信した後、または前記マイクロプロセッサが発生する運転停止指令によってパルス出力の発生が中断停止されたときには、リセット指令によって前記パルス出力回路部の初期化を行なってから次回のパラメータ設定を行う
ことを特徴とする位置決め制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、プログラマブルコントローラにおいて、入出力制御を行なうマイクロプロセッサからの設定指令情報に基づいて、位置決め制御用のパルス出力を発生し、ステッピングモータまたはサーボモータを駆動してワークの移動位置を制御するための位置決め制御装置の改良に関する。
【背景技術】
【０００２】
マイクロプロセッサと、ハードウェアで構成されたパルス出力回路部とを併用して、ワークの移動量対速度特性を多段階または台形速度パターンによって可変速度運転することは、広く実用化されている技術である。この技術により、高速運転と停止精度の向上を図ることができる。
【０００３】
従来技術としては、入出力制御を行なうプログラマブルコントローラ内のマイクロプロセッサを用いて、パルス出力部とパルスカウンタを制御して多段階の速度制御を行うステッピングモータの駆動方法がある（例えば、特許文献１参照）。
【０００４】
また、入出力制御を行なうプログラマブルコントローラ内のマイクロプロセッサとは別に、専用のマイクロプロセッサを用いて、パルス出力部（パルスゼネレータ）とパルスカウンタ（ハードカウンタ）を制御して、多段階折れ線特性の速度制御を行うステッピングモータの駆動方法がある（例えば、特許文献２参照）。
【０００５】
【特許文献１】特開平０５-０６１５５１号公報
【特許文献２】特開２００２-０１４７０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
特許文献１、２において、パルス出力部とパルスカウンタを制御するマイクロプロセッサは、いずれの場合も速度特性の変曲点において割込みプログラムを実行して、次回の移動量と目標パルス周期または周波数の設定を、逐次指令するようになっている。
【０００７】
従って、特許文献１の場合には、プログラマブルコントローラとしての入出力制御を並行して実施するマイクロプロセッサの制御負担が高く、高速・高精度な位置決め制御には適さないといった問題がある。また、特許文献２の場合には、専用のマイクロプロセッサが余分に必要となり、製品が高価になるといった問題がある。
【０００８】
本発明は上述のような課題を解決するためになされたもので、起動前に与えられた所望の運転速度パターンに基づいて一連の可変速度パターンのパルス出力を発生することのできる位置決め制御装置を提供することを第１の目的とする。
【０００９】
また、簡易な位置決め制御を行なうのに適した小型・安価な２段速度運転による位置決め制御装置を提供することを第２の目的とする。
【００１０】
さらに、高度な位置決め制御を行なうのに適した漸増・漸減速度特性による位置決め制御装置を提供することを第３の目的とする。
【課題を解決するための手段】
【００１１】
本発明による位置決め制御装置は、所望の運転速度パターンに応じて位置決め制御用のパルス出力を発生するパルス出力回路部を備えた位置決め制御装置であって、目標とするパルス発生数、およびパルス出力周期または周波数の変遷特性に基づいて所望の運転速度パターンを特定するためのパラメータを決定する換算設定手段をさらに備え、パルス出力回路部は、入力信号の計数現在値が格納される現在値レジスタと、換算設定手段により決定されたパラメータのうちの第１パラメータが設定される第１の設定レジスタと、換算設定手段により特定されたパラメータのうちの第２パラメータとして第１パラメータ以下の値が設定される第２の設定レジスタと、現在値レジスタと第１の設定レジスタとの比較結果を出力する第１の比較回路と、現在値レジスタと第２の設定レジスタとの比較結果を出力する第２の比較回路とをそれぞれ有する第１の高速カウンタおよび第２の高速カウンタとを含み、第１の高速カウンタは、所定周期の基準クロック信号または基準クロック信号の分周信号を入力とし、基準クロック信号または分周信号の計数現在値が現在値レジスタに格納され、第２の高速カウンタは、位置決め制御用のパルス出力を入力として、パルス発生数の経過状況が現在値レジスタに格納され、第１の高速カウンタおよび第２の高速カウンタに設けられた第１の比較回路は、現在値レジスタの値が第１の設定レジスタの設定値と一致するかまたは一致点以上または一致点超過したことによってカウントアップ出力を発生し、第１の高速カウンタおよび第２の高速カウンタに設けられた第２の比較回路は、現在値レジスタの値が上昇または下降している過程において、現在値レジスタの値が第２の設定レジスタの設定値と一致するかまたは一致状態を通過したことによって上昇比較出力または下降比較出力の少なくとも一方の出力を発生し、パルス出力回路部は、第１の高速カウンタによるカウントアップ出力の発生と、第２の高速カウンタによる上昇比較出力または下降比較出力の少なくとも一方の出力の発生とに応動して、目標とするパルス発生数および変遷特性に基づく所望の運転速度パターンによるパルス出力を発生するものである。
【発明の効果】
【００１２】
本発明による位置決め制御装置は、位置決め制御動作の開始に当たって換算設定手段からパルス出力回路部に対して制御定数の設定が行われ、第１・第２の高速カウンタによって目標とするパルス数のパルス出力を発生するように構成され、第１・第２の高速カウンタは、それぞれ第１・第２の設定レジスタと第１・第２の比較回路を備えることによって位置決め動作が完了するまでパルス出力回路部の働きにより可変周期または可変周波数のパルス出力を発生するようになっている。
従って、例えば、マイクロプロセッサを用いた位置決め制御装置において、マイクロプロセッサは、速度パターンを逐次指令する必要がなく、制御負担が軽減されるとともに、手軽なハードウェア構成によって正確な速度パターンを生成し、安価に高速・高性能動作の位置決め制御を行なうことができる効果がある。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の位置決め制御装置の好適な実施の形態につき図面を用いて説明する。
【００１４】
実施の形態１．
図１は、本発明の実施の形態１における位置決め制御装置のブロック図である。
図１において、例えば、プログラマブルコントローラを構成する位置決め制御装置１００は、ＣＰＵユニット１００ａと、入出力ユニットの一部であるパルス出力回路部１００ｂとで構成されている。
【００１５】
ＣＰＵユニット１００ａは、例えば、ＡＣ１００Ｖ〜２４０Ｖの商用電源である外部電源から給電される電源回路１１０を介して、所定の安定化電圧Ｖｃｃが供給される。
【００１６】
ＣＰＵユニット１００ａの内部には、マイクロプロセッサ１２０と、プログラムメモリ１２１と、ＲＡＭメモリ１２２とが設けられている。ここで、プログラムメモリ１２１は、例えば、不揮発フラッシュメモリであって、ユーザが作成した入出力制御プログラムが格納される。
【００１７】
パルス出力回路部１００ｂは、マイクロプロセッサ１２０とバス接続されており、指令・監視信号の授受が行なわれる。
【００１８】
ドライバ１０１は、パルス出力回路部１００ｂから回転方向指令出力ＤＩＲと正逆転パルス出力ＦＲＰを受けてステッピングモータ１０２を駆動する。ステッピングモータ１０２が駆動されることにより、ワーク１０４は、正方向または逆方向に移動される。
【００１９】
なお、回転方向指令出力ＤＩＲの論理レベルが「Ｈ」であれば正転駆動（前進駆動）、「Ｌ」であれば逆転駆動（後退駆動）である。さらに、正逆転パルス出力ＦＲＰがパルス発生すれば回転駆動、パルス発生を停止すれば回転停止の状態となる。
【００２０】
マイクロプロセッサ１２０には、図示しないインタフェース回路を介して指令入力信号１０８が接続され、たとえば、強制停止指令、逆転限界スイッチ１０５による後退限界指令、正転限界スイッチ１０７による前進限界指令、手動前進指令、手動後退指令、自動運転指令などが入力される。
【００２１】
強制停止指令や正転限界指令、逆転限界指令が入力されると、パルス出力回路部１００ｂは、直ちにパルス発生を停止する。また、手動前進指令や手動後退指令が与えられると、低速の正転パルス出力または低速の逆転パルス出力を発生する。さらに、自動運転指令が与えられると、プログラムメモリ１２１に格納された制御プログラムに基づいた速度パターンによって指令された数のパルスを発生して停止する。
【００２２】
パルス出力回路部１００ｂは、第１の高速カウンタ１３０と第２の高速カウンタ１５０を主体として構成されている。クロック信号発生回路１４０は、例えば、周期が１μｓｅｃである基準クロック信号ＣＬＫ１を発生し、第１の高速カウンタ１３０の計数入力端子ＩＮに供給する。
【００２３】
第１の高速カウンタ１３０の加算モード端子ＵＰは、論理レベル「Ｈ」に固定され、減算モード端子ＤＮは、論理レベル「Ｌ」に固定されている。その結果として、第１の高速カウンタ１３０の現在値レジスタ１３１は、計数入力信号（基準クロック信号ＣＬＫ１）が論理レベル「Ｌ」から「Ｈ」に変化した時点で１カウントの加算動作が行なわれるようになっている。
【００２４】
第１の高速カウンタ１３０の第１の設定レジスタ１３３には、目標とする低速出力パルスの周期Ｔ１の１／２に相当した数値が格納されている。また、第２の設定レジスタ１３２には、目標とする高速出力パルスの周期Ｔ２の１／２に相当した数値が格納されている。
【００２５】
現在値レジスタ１３１の計数現在値が増加して、第１の設定レジスタ１３３の設定値Ｎ１、または第２の設定レジスタ１３２の設定値Ｎ２（Ｎ２≦Ｎ１）に達すると、カウントアップ出力Ｑ１または上昇比較出力Ｐ１が発生する。その結果として、論理和素子１４４を介して第１の高速カウンタ１３０のリセット端子ＲＳにリセット指令が供給されるとともに、交番出力回路１４２の出力が交互に反転する。
【００２６】
第１・第２の設定レジスタ１３３・１３２のどちら側の設定値を使用するかは、後述する選択切換回路１４１の論理動作によって決定される。
【００２７】
第１の高速カウンタ１３０がリセットされて現在値レジスタ１３１の値がゼロに復帰したことに伴って、カウントアップ出力Ｑ１と上昇比較出力Ｐ１もリセットされ、再び基準クロック信号ＣＬＫ１の計数が開始する。その結果、基準クロック信号ＣＬＫ１の信号周期をτ＝１μｓｅｃとすれば、交番出力回路１４２のパルス出力ＰＬＳの周期は、２×Ｎ１または２×Ｎ２（μｓｅｃ）となる。
【００２８】
出力選択回路１４３は、マイクロプロセッサ１２０からの指令によって出力モードが決定され、例えば、正逆パルス出力ＦＲＰと回転方向指令出力ＤＩＲを発生する。
【００２９】
第２の高速カウンタ１５０は、交番出力回路１４２の出力信号であるパルス出力ＰＬＳをアップおよびダウン計数する。さらに、第２の高速カウンタ１５０の第１の設定レジスタ１５３には、目標となるパルス発生総数Ｎの１／２の値が格納されていて、この発生パルス数によって、例えば、ステッピングモータによる全体移動量が決定される。
【００３０】
ただし、目標とするパルス発生数が奇数である場合には、その前後の偶数の１／２の値が第１の設定レジスタ１５３に格納され、現在値レジスタ１５１には、＋１または−１が初期値として設定されるようになっている。
【００３１】
第２の高速カウンタ１５０の第２の設定レジスタ１５２には、目標となる低速パルス発生数が格納されている。そして、この発生パルス数によって、ステッピングモータの低速始動運転と停止前の低速運転による移動量が決定される。
【００３２】
第２の高速カウンタ１５０の現在値レジスタ１５１の計数現在値が増加して、第２の設定レジスタ１５２の設定値Ｍ２に達すると、上昇比較出力Ｐ２が発生する。この結果、選択切換回路１４１によって、第１の高速カウンタ１３０の設定周期が低速周期から高速周期に切換設定される。
【００３３】
第２の高速カウンタ１５０の現在値レジスタ１５１の計数現在値がさらに増加して、第１の設定レジスタ１５３の設定値Ｍ１（Ｍ２≦Ｍ１）に達すると、カウントアップ出力Ｑ２が発生し、第２の高速カウンタ１５０は、減算動作を開始する。一方、否定論理素子１５９によって加算動作は、停止されている。
【００３４】
やがて下降比較一致出力Ｐ２が作動すると、選択切換回路１４１によって第１の高速カウンタ１３０の設定周期を、高速周期から再び低速周期に切換設定する。
【００３５】
第２の高速カウンタ１５０の現在値レジスタ１５１の計数現在値がさらに減少してゼロに復帰して、復帰出力Ｑ２が作動すると、論理和素子１４４を介して第１の高速カウンタ１３０のリセット端子ＲＳにリセット指令が供給されて、計数動作を停止する。この状態は、パルス発生完了信号Ｍ４として、マイクロプロセッサ１２０に入力される。
【００３６】
その結果、第１の高速カウンタ１３０によるパルスの発生総数Ｎは、第２の高速カウンタ１５０の上昇比較出力Ｐ２が作動するまでの低速パルス数Ｍ２と、カウントアップ出力Ｑ２が発生するまでの高速パルス数（Ｍ１−Ｍ２）と、減算動作によって下降比較出力Ｐ２が作動するまでの高速パルス数（Ｍ１−Ｍ２）と、復帰出力Ｑ２が作動するまでの低速パルス数Ｍ２との総和となる。従って、発生パルスの総数は、Ｎ＝２×Ｍ１であるが、前後に内数として低速パルスが各Ｍ２パルス発生することになる。
【００３７】
ただし、計数開始に当たってあらかじめ現在値レジスタ１５１に対してプラス１が設定されていた場合の発生パルスの総数は、２×Ｍ１−１となる。一方、マイナス１が設定されたいた場合の発生パルスの総数は、２×Ｍ１＋１となる。
【００３８】
マイクロプロセッサ１２０は、第１・第２の高速カウンタ１３０・１５０に対してリセット指令ＲＳＴを発生してから、出力ポートＤＯから第１・第２の設定レジスタ１３３・１３２、１５３・１５２に対する設定値を送信する。さらに、マイクロプロセッサ１２０は、回転方向指令信号ＤＩＲを送信し、リセット指令ＲＳＴを解除してスタート指令ＳＴ／ＳＰを送信する。この結果、第１・第２の高速カウンタ１３０・１５０が動作を開始する。
【００３９】
現在値レジスタ１５１による発生パルス数の現在値は、入力ポートＤＩによってマイクロプロセッサ１２０に送信される。なお、マイクロプロセッサ１２０は、正転限界停止指令、逆転限界停止指令、強制停止指令などに応動して、パルス発生を停止することができるようになっている。
【００４０】
また、パルス出力回路部１００ｂは、ステッピングモータ１０２に対する回転駆動指令を与えるものである。そして、ステッピングモータ１０２を駆動するドライバ１０１には、正転駆動端子、逆転駆動端子を有するものと、正逆転駆動端子と回転方向指令端子を有するものがある。
【００４１】
出力選択回路１４３は、これらの駆動形式に応じたパルス出力を発生することができるようになっている。
【００４２】
以上の説明では、２段速度による低速始動運転・高速運転・停止前の低速運転・停止の動作を行うために、第１の高速カウンタ１３０と第２の高速カウンタ１５０を次のように動作させている。すなわち、パルスジェネレータとなる第１の高速カウンタ１３０は、リングカウンタとして循環動作させるための設定値を第１・第２の設定レジスタ１３３・１３２によって切換えることによって低速または高速の出力パルス周期を得るように動作する。また、第２の高速カウンタ１５０は、発生パルス数の計数と速度切換え指令信号を発生するように動作する。
【００４３】
この速度切換制御において、低速パルス発生数の発生に応動する上昇比較出力Ｐ２と、下降比較出力Ｐ２が利用されている。
【００４４】
ここで、第２の高速カウンタ１５０の運転開始時に、現在値レジスタ１５１に対して低速始動運転パルス発生数に相当した負数を格納し、第２の設定レジスタ１５２に対して高速運転パルス数を設定し、第１の設定レジスタ１５３に対して高速運転パルス数＋停止前の低速運転パルス数を設定しておくこともできる。このような設定を行えば、現在値レジスタ１５１の値が負となっている間は、低速始動運転を行い、現在値レジスタ１５１が正の値になってから高速運転を行い、上昇比較出力Ｐ２が作動すると停止前の低速運転を行い、カウントアップ出力Ｑ２が発生すると停止するように動作させることができる。
【００４５】
次に、比較回路の詳細について説明する。図２Ａは、本発明の実施の形態１における第１・第２の高速カウンタ１３０・１５０に含まれる比較回路の全体構成図である。第１の比較回路１３６・１５６は、第１の設定レジスタ１３３・１５３の値と現在値レジスタ１３１・１５１の値が一致しているときに、比較一致出力を発生して記憶回路Ｓ１をセットする。記憶回路Ｓ１によるセット出力が、カウントアップ出力Ｑ１・Ｑ２となっている。
【００４６】
第２の比較回路１３５・１５５は、第２の設定レジスタ１３２・１５２の値と現在値レジスタ１３１・１５１の値が一致しているときに、比較一致出力を発生して論理積素子１３８ａ・１５８ａまたは１３８ｂ・１５８ｂを介して記憶回路Ｓ２またはＳ３をセットする。記憶回路Ｓ２またはＳ３によるセット出力が、上昇比較出力Ｐ１・Ｐ２または下降比較出力Ｐ１・Ｐ２となっている。
【００４７】
論理積素子１３８ａ・１５８ａは、第１・第２の高速カウンタ１３０・１５０の加算モード端子ＵＰの論理レベルが「Ｈ」となって加算モードにあるときに、記憶回路Ｓ２に対するセット指令入力を有効にするゲート回路となっている。
【００４８】
論理積素子１３８ｂ・１５８ｂは、第１・第２の高速カウンタ１３０・１５０の減算モード端子ＤＮの論理レベルが「Ｈ」となって減算モードにあるときに、記憶回路Ｓ３に対するセット指令入力を有効にするゲート回路となっている。
【００４９】
第３の比較回路１３７・１５７は、現在値レジスタ１３１・１５１の値とゼロレジスタ１３４・１５４の値が一致しているときに、比較一致出力を発生して論理積素子１３９・１５９を介して記憶回路Ｓ４をセットする。記憶回路Ｓ４によるセット出力が、復帰出力Ｑ１・Ｑ２となっている。
論理積素子１３９・１５９は、第１・第２の高速カウンタ１３０・１５０の減算モード端子ＤＮの論理レベルが「Ｈ」となって減算モードにあるときに、記憶回路Ｓ４に対するセット指令入力を有効にするゲート回路となっている。
【００５０】
なお、各記憶回路Ｓ１〜Ｓ４の記憶状態は、マイクロプロセッサ１２０からのリセット指令によって消去されるようになっている。
【００５１】
図２Ｂは、本発明の実施の形態１における第１の比較回路１３６・１５６の詳細論理回路図である。第２の比較回路１３５・１５５や第３の比較回路１３７・１５７も、同様に構成されている。
【００５２】
図２Ｂにおいて、第１の設定レジスタ１３３・１５３には、最下位ビットをＢ０とし、最上位ビットをＢｎとするｎビットのバイナリデータが格納されている。また、現在値レジスタ１３１・１５１には、最下位ビットをＡ０とし、最上位ビットをＡｎとするｎビットのバイナリデータが格納されている。各ビットの論理信号が入力される排他的論理和素子Ｅｘ０〜Ｅｘｎは、入力論理レベルが一致していれば出力論理レベルが「Ｌ」となる論理回路によって構成されている。
【００５３】
論理和素子ＯＲ０〜ＯＲｎ−１は、排他的論理和素子Ｅｘ０〜Ｅｘｎの出力を順次論理和するようにカスケード接続されていて、最終段の論理和素子ＯＲ０の出力は、反転論理素子ＩＮＶを介して記憶回路Ｓ１に入力されている。
【００５４】
比較データＡｎ〜Ａ０とＢｎ〜Ｂ０のどれかのビットの論理レベルが不一致であれば、論理和素子ＯＲ０の出力論理は「Ｈ」となり、記憶回路Ｓ１に対する記憶指令が発生することはない。
【００５５】
比較データＡｎ〜Ａ０とＢｎ〜Ｂ０の全てのビットの論理レベルが一致していれば、論理和素子ＯＲ０の出力論理は、「Ｌ」となり、記憶回路Ｓ１に対する記憶指令が発生することになる。ただし、第１・第２の高速カウンタ１３０・１５０に対する計数入力が論理レベル「Ｈ」に変化して計数動作が行われた時点においては、論理和素子ＯＲ０の出力は、論理レベル「Ｈ」となっている。
【００５６】
そして、計数入力が「Ｌ」に変化した時点で論理和素子ＯＲ０の出力論理が「Ｌ」となり、記憶回路Ｓ１に対する記憶指令が発生することになる。これは、計数入力が「Ｈ」に変化した直後の不安定状態で一致判定するのを回避するための遅延判定手段となるものである。
【００５７】
以上の説明では、上昇通過と下降通過の判定を高速カウンタのアップ／ダウン指令の違いによって識別して記憶するようにした。しかしながら、これに代わって、カウントアップ出力が作動する前の一致であれば上昇通過であるとし、カウントアップ出力が作動した後の一致であれば下降通過であると判別することも可能である。
【００５８】
なお、本実施の形態１では、第１・第２の高速カウンタ１３０・１５０は、いずれも計数指令が論理レベル「Ｈ」に変化した時点において、１カウントだけ現在値レジスタ１３１・１５１の値が増加または減少するものであり、必ず比較一致点に到達してからさらに増加または減少する。従って、比較判定は、一致したか否かの比較一致判定によることができる。
【００５９】
これに対し、後述の実施の形態２の場合には、１回の計数動作によって現在値レジスタに対して変分値レジスタに格納されている数値の加算が行なわれるようになっているものがある。このように複数値（最小単位である１よりも大きな値）の増減が行なわれる場合には、現在値レジスタの値の増加・減少過程において、必ずしも比較一致点上を通過するとは限らず、飛び越し通過する状態が発生する。
【００６０】
このような場合には、「比較一致点以上または未満」、若しくは「比較一致点超過または以下」のような大小比較判定が必要であり、図１の回路構成の場合であっても、大小比較判定方式に変更することが可能である。
【００６１】
次に、本実施の形態１における位置決め制御装置の作用・動作の詳細について説明する。図３は、本発明の実施の形態１における位置決め制御装置の特性線図である。図３（Ａ）は、クロック信号発生回路１４０が発生する基準クロック信号ＣＬＫ１の波形を示したものである。
【００６２】
図３（Ｂ）は、第１の高速カウンタ１３０の現在値レジスタ１３１の値の増減特性を示したものである。高い山の高さは、第１の設定レジスタ１３３に格納されている第１の設定値Ｎ１に相当し、低い山の高さは、第２の設定レジスタ１３２に格納されている第２の設定値Ｎ２に相当する。
【００６３】
図３（Ｃ）は、交番出力回路１４２の出力信号であるパルス出力ＰＬＳの波形を示したものである。低速周期は、Ｔ１＝２×Ｎ１×τとなっており、高速周期は、Ｔ２＝２×Ｎ２×τ、（ただし、τは基準クロック信号ＣＬＫ１の周期）となっている。
【００６４】
図３（Ｄ）は、第２の高速カウンタ１５０の現在値レジスタ１５１の値の増減特性を示したものである。第２の設定レジスタ１５２に格納されている設定値が、Ｍ２で示されており、第１の設定レジスタ１５３に格納されている設定値が、Ｍ１で示されている。
【００６５】
図３（Ｅ）は、横軸を時間とし、縦軸を運転速度に相当する出力パルスの周波数（即ち、パルス周期の逆数）とし、移動量に相当する累積パルス発生数を面積として表した運転速度特性を示したものである。
【００６６】
上昇比較出力Ｐ２が作動して論理レベルが「Ｈ」に変化すると、選択切換回路１４１の作用によって低速運転から高速運転に切換る。そして、カウントアップ出力Ｑ２が作動して論理レベルが「Ｈ」に変化すると、第２の高速カウンタ１５０は、減算動作を開始する。そして、下降比較出力Ｐ２が作動して論理レベルが「Ｈ」になると高速運転から低速運転に切換る。そして最後に、復帰出力Ｑ２が作動して論理レベルが「Ｈ」になると、パルス発生が完了するようになっている。
【００６７】
以上の一連の動作によるパルス発生の総数Ｎは、次式で示される。
Ｎ＝Ｍ２（始動後の低速運転パルス数）
＋２×（Ｍ１−Ｍ２）（高速運転パルス数）
＋Ｍ２（停止前の低速運転パルス数）
＝２×Ｍ１
【００６８】
従って、総数Ｎは、偶数値となるが、運転開始に当たって、現在値レジスタ１５１に対して±１をバイアス加算しておくことにより、発生パルスの総数を奇数にすることができる。
【００６９】
次に、フローチャートを用いて一連の動作を説明する。図４は、本発明の実施の形態１における位置決め制御装置の一連動作を示すフローチャートである。
図４において、工程４００は、マイクロプロセッサ１２０がパルス出力動作を開始するステップである。続く工程４０１は、指令入力信号１０８から運転指令が入力されているか否かを判定するステップである。運転指令が入力されていなければ、ＮＯの判定を行なって動作終了工程４０２へ移行する。一方、運転指令が入力されていれば、ＹＥＳの判定を行なって工程４０３へ移行する。
【００７０】
工程４０２では、他の制御を実行し、所定時間以内には、再度動作開始工程４００へ復帰するようになっている。一方、工程４０３は、後述の工程４１０ａにおいて、初回フラグがセットされたか否かを判定するステップである。初回フラグがセットされていなければ、ＹＥＳの判定を行なって工程４０５へ移行する。一方、初回フラグがセット済であれば、ＮＯの判定を行なって工程４０４へ移行する。
【００７１】
なお、電源投入時には、初回フラグや第１・第２の高速カウンタ１３０・１５０は、リセットされているので、電源投入直後の動作では、工程４０３は、ＹＥＳの判定を行なうようになっている。
【００７２】
工程４０４は、第２の高速カウンタ１５０の復帰出力Ｑ２が作動して一連のパルス出力が完了したか否かを判定するステップである。未完了であれば、ＮＯの判定を行なって工程４２０へ移行する。一方、完了であれば、ＹＥＳの判定を行なって工程４０５へ移行する。工程４０５は、第１・第２の高速カウンタ１３０・１５０にリセット指令ＲＳＴを与え、各カウンタの動作を停止しておくステップである。
【００７３】
続く工程４０６は、第１の高速カウンタ１３０の第１の設定レジスタ１３３に対して低速周期の１／２の値である第１の設定値Ｎ１を格納し、第２の設定レジスタ１３２に対して高速周期の１／２の値である第２の設定値Ｎ２を格納するステップである。
【００７４】
続く工程４０７は、パルス発生の目標総数が奇数であるか偶数であるかを判定し、偶数であれば、ＹＥＳの判定を行なって工程４０８ａへ移行し、奇数であれば、ＮＯの判定を行なって工程４０８ｂへ移行する判定ステップである。
【００７５】
工程４０８ａは、第２の高速カウンタ１５０の現在値レジスタ１５１の値をゼロにし、第２の設定レジスタ１５２の設定値Ｍ２を低速移動パルス数に設定し、第１の設定レジスタ１５３の設定値Ｍ１を目標総数Ｎの１／２に設定するステップである。
【００７６】
工程４０８ｂは、第２の高速カウンタ１５０の現在値レジスタ１５１の値をマイナス１（またはプラス１）にし、第２の設定レジスタ１５２の設定値Ｍ２を低速移動パルス数に設定し、第１の設定レジスタ１５３の設定値Ｍ１を目標総数の前後の偶数Ｎ−１（またはＮ＋１）の１／２に設定するステップである。
【００７７】
上述した工程４０６から工程４０８ｂで構成される工程ブロック４０９は、換算設定手段となるものであり、マイクロプロセッサ１２０は、第１・第２の高速カウンタ１３０・１５０が動作しやすい値を演算設定するようになっている。例えば、運転速度の目標値としてパルス周波数を利用しないで、その逆数である周期を設定することによって手軽に２段速度運転が行えるものである。
【００７８】
工程４１０ａは、工程４０８ａまたは４０８ｂに続いて実行され、回転方向指令ＤＩＲを論理「Ｈ」または「Ｌ」にして方向を指定し、スタート指令ＳＴ／ＳＰを論理「Ｈ」にしてスタート指令を与え、リセット指令ＲＳＴを論理「Ｌ」にしてリセット解除し、初回フラグをセットする。
【００７９】
その結果、工程４１０ｂによってパルス出力回路部１００ｂがパルス出力を発生する。続く工程４１１は、第２の高速カウンタ１５０の復帰出力Ｑ２が作動してパルス発生総数が目標値Ｎに達したか否かを判定するステップである。パルス発生完了であれば、ＹＥＳの判定を行なって工程４１５へ移行する。一方、未完了であれば、ＮＯの判定を行なって工程４１２へ移行する。
【００８０】
工程４１２では、パルス発生を開始してから所定時間を経過したか否かを判定するステップである。未超過であれば、ＮＯの判定を行なって動作終了工程４０２へ移行する。一方、時間超過であれば、工程４１３へ移行して異常報知を行なってから、動作終了工程４０２へ移行する。
また、工程４１５では、工程４１０ａでセットされた初回フラグがリセットされ、その後、動作終了工程４０２へ移行する。
【００８１】
工程４２０は、正転限界スイッチ１０７、逆転限界スイッチ１０５、または強制停止指令スイッチが作動したか否かを判定するステップである。緊急停止を行なう必要があるときに、ＹＥＳの判定を行なって工程４２１へ移行する。一方、緊急停止が不要であるときには、ＮＯの判定を行なって工程４１１へ移行する。
【００８２】
工程４２１では、スタート指令ＳＴ／ＳＰの論理レベルを「Ｌ」にしてパルス発生を停止し、工程４１０ａでセットされていた初回フラグをリセットしてから動作終了工程４０２へ移行する。
【００８３】
以上の動作を概括説明すると、初回動作時、動作完了後の再起動時、または緊急停止後の初回動作時には、換算設定手段４０９によって第１・第２の設定レジスタに対する制御定数（パラメータ）の設定が行われ、一連のパルス出力の発生が完了する都度に、換算設定手段４０９による再設定が行われるようになっている。従って、マイクロプロセッサ１２０は、パルス発生の停止中に次回のパルス発生の制御定数を送信すればよいので、パルス発生動作と関連した割込み高速処理が不要となっている。
【００８４】
以上の説明では、マイクロプロセッサ１２０は、出力選択回路１４３に対して回転方向指令出力ＤＩＲとスタート指令ＳＴ／ＳＰを供給するようになっている。さらに、出力選択回路１４３は、回転方向指令ＤＩＲをそのままドライバ１０１に出力するとともに、スタート指令ＳＴ／ＳＰが論理「Ｈ」となったときに、交番出力回路１４２の出力信号を正逆転パルス出力ＦＲＰとして、ドライバ１０１に供給するようになっている。
【００８５】
これに代わって、マイクロプロセッサ１２０は、出力選択回路１４３に対して、正転パルス出力指令Ｆ／ＳＰと逆転パルス出力指令Ｒ／ＳＰを供給し、出力選択回路１４３は、正転パルス出力指令Ｆ／ＳＰが論理「Ｈ」であるときに正転パルス出力ＦＰを発生し、逆転パルス出力指令Ｒ／ＳＰが論理「Ｈ」であるときに逆転パルス出力ＲＰを発生し、正転パルス出力指令Ｆ／ＳＰと逆転パルス出力指令Ｒ／ＳＰがともに論理「Ｌ」であるときにパルス発生を停止するようにしてもよい。
【００８６】
以上の説明で明らかなとおり、本実施の形態１による位置決め制御装置は、マイクロプロセッサ１２０からの設定指令情報に基づいて、位置決め制御用のパルス出力を発生するパルス出力回路部１００ｂを備えた位置決め制御装置１００である。そして、パルス出力回路部１００ｂは、少なくとも第１・第２の高速カウンタ１３０・１５０を備えているとともに、マイクロプロセッサ１２０と協働するプログラムメモリ１２１は、換算設定手段４０９となる制御プログラムを包含している。
【００８７】
第１の高速カウンタ１３０は、目標とするパルス出力の周期を可変設定するものであって、クロック信号ＣＬＫ１の計数現在値が格納される現在値レジスタ１３１と、第１・第２の設定レジスタ１３３・１３２と、第１・第２の比較回路１３６・１３５とによって構成されている。
【００８８】
第２の高速カウンタ１５０は、発生パルス数の計数と速度切換え指令信号（選択切換回路に与えるリセットタイミング指令に相当）を発生するものであって、パルス発生数の経過状況が格納される現在値レジスタ１５１と、第１・第２の設定レジスタ１５３・１５２と、第１・第２の比較回路１５６・１５５とによって構成されている。
【００８９】
換算設定手段４０９は、第１・第２の高速カウンタ１３０・１５０の動作開始前に作用して、第２の高速カウンタ１５０に対して目標とするパルス発生数の設定を行うとともに、第１または第２の高速カウンタに対して目標運転速度パターンとなるパルス出力周期の変遷特性を設定する。すなわち、換算設定手段４０９は、所望の運転速度パターンを特定するためのパラメータを決定し、パルス出力回路部１００ｂ内のレジスタに決定したパラメータの設定を行う。
【００９０】
第１・第２の高速カウンタ１３０・１５０に設けられた第１の比較回路１３６・１５６は、現在値レジスタ１３１・１５１の値が第２の設定レジスタ１３２・１５２の設定値以上の値が設定される第１の設定レジスタ１３３・１５３の設定値と一致するか、または一致点以上または一致点超過したことによって、カウントアップ出力Ｑ１・Ｑ２を発生する。
【００９１】
第１・第２の高速カウンタ１３０・１５０に設けられた第２の比較回路１３５・１５５は、現在値レジスタ１３１・１５１の値が上昇している過程または下降している過程において、第２の設定レジスタ１３２・１５２の設定値と一致するか、または一致状態を通過したことによって、上昇比較出力Ｐ１・Ｐ２または下降比較出力Ｐ１・Ｐ２の少なくとも一方の出力を発生する。
【００９２】
パルス出力回路部１００ｂは、カウントアップ出力Ｑ１・Ｑ２の発生と、上昇比較出力Ｐ１・Ｐ２または下降比較出力Ｐ１・Ｐ２の少なくとも一方の出力の発生とに応動して、パルス出力周期の変遷特性に基づく運転パターンによるパルス出力ＰＬＳを発生する。さらに、パルス出力回路部１００ｂは、パルス発生の完了に伴ってパルス発生完了信号Ｍ４をマイクロプロセッサ１２０に送信し、パルス発生開始から完了までの期間においてマイクロプロセッサ１２０からの指令を受けることなく指定された特性のパルス出力を発生するようになっている。
【００９３】
第１の高速カウンタ１３０は、所定周期の基準クロック信号ＣＬＫ１を計数して目標とする周期のパルス出力を生成するためのものである。第１の高速カウンタ１３０の第１の設定レジスタ１３３には、目標とする低速運転用の第１のパルス周期Ｔ１に対応した第１の設定値Ｎ１が格納され、第２の設定レジスタ１３２には、目標とする高速運転用の第２のパルス周期Ｔ２に対応した第２の設定値Ｎ２が格納されている。そして、第１の高速カウンタ１３０には、選択切換回路１４１と交番出力回路１４２とが接続されている。
【００９４】
選択切換回路１４１は、第１の高速カウンタ１３０のカウントアップ出力Ｑ１が発生したときに現在値レジスタ１３１をリセットしてから基準クロック信号ＣＬＫ１の計数を再開させるか（第１のリセットタイミングに相当）、または第１の高速カウンタ１３０の上昇比較出力Ｐ１が発生したときに現在値レジスタ１３１をリセットしてから基準クロック信号ＣＬＫ１の計数を再開させるか（第２のリセットタイミングに相当）を選択して、第１の高速カウンタ１３０をリングカウンタとして作動させる回路である。
【００９５】
交番出力回路１４２は、第１の高速カウンタ１３０のカウントアップ出力Ｑ１または上昇比較出力Ｐ１が発生する都度に出力論理が反転し、基準クロック信号ＣＬＫ１の周期τと第１または第２の設定値Ｎ１・Ｎ２との積の２倍の周期のパルス出力ＰＬＳを発生する回路である。
【００９６】
第２の高速カウンタ１５０は、交番出力回路１４２のパルス出力ＰＬＳの発生回数を計数して、目標とするパルスの発生が完了したことに伴って、復帰出力Ｑ２を発生するものである。第２の高速カウンタ１５０の第１の設定レジスタ１５３には、目標とするパルス発生数Ｎの半分の値Ｍ１が格納され、第２の設定レジスタ１５２には、目標とする低速運転のパルス発生数Ｍ２が格納されている。
【００９７】
そして、第２の高速カウンタ１５０は、計数動作を開始してからカウントアップ出力Ｑ２が発生するまでは加算カウンタとして動作し、カウントアップ出力Ｑ２が作動してから後は減算カウンタとして作動する。さらに、第２の高速カウンタ１５０は、計数動作を開始してから上昇比較出力Ｐ２が発生するまでは、選択切換回路１４１を低速側に切換えるように第１のリセットタイミングを選択するための指令をする。また、上昇比較出力Ｐ２が発生してからカウントアップ出力Ｑ２が発生して計数方向が反転し、やがて下降比較出力Ｐ２が発生するまでは、選択切換回路１４１を高速側に切換えるように第２のリセットタイミングを選択するための指令をする。さらに、下降比較出力Ｐ２が発生してから復帰出力Ｑ２が発生するまでは、再び選択切換回路１４１を低速側に切換えるように第１のリセットタイミングを選択するための指令をする。
【００９８】
復帰出力Ｑ２は、第２の高速カウンタ１５０の現在値がゼロに復帰した時点でセットされる。そして、復帰出力Ｑ２をセットすることに伴って、第２の高速カウンタ１５０は、第１の高速カウンタ１３０のパルス発生または交番出力回路１４２のパルス出力ＰＬＳを停止させる。さらに、第２の高速カウンタ１５０は、パルス発生完了信号Ｍ４をマイクロプロセッサ１２０に送信する。復帰出力Ｑ２のセット状態は、マイクロプロセッサ１２０からのリセット指令ＲＳＴによってリセットされるものである。
【００９９】
以上のとおり、本実施の形態１における位置決め制御装置は、第１・第２の高速カウンタを用いて低速始動・高速運転・低速停止の２段速度運転によるパルス出力を発生するようになっている。従って、ステッピングモータを用いた簡易な位置決め制御において、脱調を防止しながら高速運転と高精度停止を行なうことができる特徴がある。
【０１００】
さらに、パルス出力回路部１００ｂが発生する目標パルス発生数Ｎが奇数である場合には、第２の高速カウンタ１５０の現在値レジスタ１５１にはマイナス１またはプラス１が初期値として設定され、目標パルス発生数の前後の偶数値の半分の値が第１の設定レジスタ１５３に設定値として格納される。
【０１０１】
すなわち、現在値レジスタに初期値として±１を設定して運転開始することができるように構成されている。従って、目標パルス発生数が奇数であっても、上昇比較出力とカウントアップ出力と下降比較出力を用いて、２段速度運転を行うことができる特徴がある。
【０１０２】
さらに、第１・第２の比較回路１３６・１３５、１５６・１５５は、比較一致または比較不一致による二値化論理出力を発生し、計数入力信号の論理が計数状態に反転した時点から所定の遅延時間をおいて記憶回路Ｓ１・Ｓ２・Ｓ３に更新格納する。この結果として、カウントアップ出力Ｑ１・Ｑ２と、上昇比較出力Ｐ１・Ｐ２または下降比較出力Ｐ１・Ｐ２とが得られる。
【０１０３】
すなわち、第１・第２の比較回路は、比較一致しているか否かの論理確定後に比較結果を記憶するようになっている。従って、比較数値が一致点を飛び越して通過することがない高速カウンタに対しては、簡易な比較回路によって比較結果が得られるとともに、高速カウンタの計数タイミングでは、比較判定を回避して誤検出を防止することができる特徴がある。
【０１０４】
さらに、上昇比較出力Ｐ１・Ｐ２は、第１・第２の高速カウンタ１３０・１５０がアップカウントモードであるときに、第２の比較回路１３５・１５５が一致判定または一致点を通過したと判定した場合に有効となって、上昇比較判定用の記憶回路Ｓ２に保存される。
【０１０５】
下降比較出力Ｐ１・Ｐ２、Ｐ２・Ｐ４は、第１・第２の高速カウンタ１３０・１５０がダウンカウントモードであるときに、第２の比較回路１３５・１５５が一致判定または一致点を通過したと判定した場合に有効となって、下降比較判定用の記憶回路Ｓ３に保存される。
【０１０６】
ここで、各記憶回路Ｓ２・Ｓ３の記憶状態は、マイクロプロセッサ１２０からのリセット指令ＲＳＴによって消去されるものである。
【０１０７】
すなわち、上昇比較出力と下降比較出力の区別は、第１・第２の高速カウンタがアップカウントモードであったか、ダウンカウントモードであったかによって区分されている。従って、第２の比較回路だけを用いて上昇比較出力と下降比較出力が得られるので、比較回路が簡略化される特徴がある。
【０１０８】
さらに、上昇比較出力Ｐ１・Ｐ２は、第１・第２の高速カウンタ１３０・１５０のカウントアップ出力Ｑ１・Ｑ２が作動する前に、第２の比較回路１３５・１５５が一致判定または一致点を通過したと判定した場合に有効となって、上昇比較判定用の記憶回路Ｓ２に保存される。
【０１０９】
下降比較出力Ｐ１・Ｐ２は、第１・第２の高速カウンタ１３０・１５０のカウントアップ出力Ｑ１・Ｑ２が作動した後に、第２の比較回路１３５・１５５が一致判定または一致点を通過したと判定した場合に有効となって、下降比較判定用の記憶回路Ｓ３に保存される。
【０１１０】
ここで、各記憶回路Ｓ２・Ｓ３の記憶状態は、マイクロプロセッサ１２０からのリセット指令ＲＳＴによって消去されるものである。
【０１１１】
すなわち、上昇比較出力と下降比較出力の区別は、第１・第２の高速カウンタのカウントアップ出力が作動する前であったか、作動した後であったかによって区分されている。従って、第２の比較回路だけを用いて上昇比較出力と下降比較出力が得られるので、比較回路が簡略化される特徴がある。
【０１１２】
さらに、マイクロプロセッサ１２０は、複数の入力センサと複数の電気負荷に対して接続され、入力センサの動作状態とプログラムメモリ１２１に格納された入出力制御プログラムの内容によって複数の電気負荷を駆動制御するプログラマブルコントローラのＣＰＵユニット１００ａに内蔵されている。
【０１１３】
パルス出力回路部１００ｂは、マイクロプロセッサ１２０とバス接続された入出力ユニットに内蔵されているとともに、出力選択回路１４３を備えている。換算設定手段４０９は、入出力制御プログラムの一部としてプログラムメモリ１２１に格納された特殊命令によって実行されるものである。
【０１１４】
特殊命令は、少なくとも目標とするパルス発生数と目標運転速度パターンとなるパルス出力周期の変遷特性を含む運転定数の設定を行うものであるとともに、回転方向指令と始動／停止指令、若しくは正転始動／停止指令と逆転始動／停止指令を包含している。
【０１１５】
出力選択回路１４３は、回転方向指令と始動／停止指令、若しくは正転始動／停止指令と逆転始動／停止指令に基づいて、回転方向指令ＤＩＲと正逆転パルス出力ＦＲＰ、若しくは正転パルス出力ＦＰと逆転パルス出力ＲＰを発生する。
【０１１６】
マイクロプロセッサ１２０は、パルス出力回路部１００ｂからパルス発生完了信号Ｍ４を受信した後、またはマイクロプロセッサ１２０が発生する運転停止指令によってパルス出力ＰＬＳの発生が中断停止されたときには、リセット指令ＲＳＴによってパルス出力回路部１００ｂの初期化を行なってから、次回の運転定数の設定を行う。
【０１１７】
ここで、パルス出力回路部と協働するマイクロプロセッサは、プログラマブルコントローラのＣＰＵユニットを構成するものであって、マイクロプロセッサによって位置決め制御定数の設定が行われるとともに、回転方向指令や始動指令が供給されるようになっている。従って、全体制御を行なうマイクロプロセッサと高速パルス出力を発生するパルス出力回路との機能分担によって、高速・高精度の位置決め制御を行なうことができる特徴がある。
【０１１８】
実施の形態２．
図５は、本発明の実施の形態２における位置決め制御装置のブロック図である。
図５において、例えば、プログラマブルコントローラを構成する位置決め制御装置５００は、ＣＰＵユニット５００ａと、入出力ユニットの一部であるパルス出力回路部５００ｂによって構成されている。
【０１１９】
ＣＰＵユニット５００ａは、例えば、ＡＣ１００Ｖ〜２４０Ｖの商用電源である外部電源から給電される電源回路５１０を介して、所定の安定化電圧Ｖｃｃが供給される。
【０１２０】
ＣＰＵユニット５００ａの内部には、マイクロプロセッサ５２０と、プログラムメモリ５２１と、ＲＡＭメモリ５２２が設けられている。ここで、プログラムメモリ５２１は、例えば、不揮発フラッシュメモリであって、ユーザが作成した入出力制御プログラムが格納される。また、ＲＡＭメモリ５２２の特定アドレスは、位置情報レジスタ５２３として占有されている。
【０１２１】
パルス出力回路部５００ｂは、マイクロプロセッサ５２０とバス接続されており、指令・監視信号の授受が行なわれる。
【０１２２】
サーボアンプ５０１は、パルス出力回路部５００ｂから正転パルス出力ＦＰまたは逆転パルス出力ＲＰを受けてサーボモータ５０２を駆動する。サーボモータ５０２が駆動されることにより、ワーク５０４は、正方向または逆方向に移動される。
【０１２３】
サーボモータ５０２には回転パルスを発生するエンコーダ５０３が設けられ、サーボアンプ５０１に対してワーク５０４の移動量をフィードバックするようになっている。
【０１２４】
マイクロプロセッサ５２０には、図示しないインタフェース回路を介して指令入力信号５０８が接続され、たとえば、強制停止指令、逆転限界スイッチ５０５による後退限界指令、正転限界スイッチ５０７による前進限界指令、手動前進指令、手動後退指令、原点復帰指令、自動運転指令などが入力される。
【０１２５】
強制停止指令や正転限界指令、逆転限界指令が入力されると、パルス出力回路部５００ｂは、直ちにパルス発生を停止する。また、手動前進指令や手動後退指令が与えられると、低速の正転パルス出力または逆転パルス出力を発生する。さらに、自動運転指令が与えられると、プログラムメモリ５２１に格納された制御プログラムに基づいた速度パターンによって指令された数のパルスを発生して停止する。
【０１２６】
原点位置の近傍で動作する近点ドグスイッチ５０６は、パルス出力回路部５００ｂに対して近点ドッグ信号ＤＯＧとして入力されている。また、エンコーダ５０３が発生するゼロ相信号は、ゼロ点信号ＺＥＲＯとしてパルス出力回路部５００ｂに入力されている。
【０１２７】
なお、本実施の形態２においては、目標運転速度を漸増・漸減するために、第１の前段高速カウンタ５３０が使用されているとともに、目標周波数の逆数によって発生パルス周期を決定するために、第２の前段高速カウンタ５６０が使用されている。
【０１２８】
第１の高速カウンタ５５０の前段に接続されている第１の前段高速カウンタ５３０は、クロック信号発生回路５４０が発生する基準クロック信号ＣＬＫ１をアップ計数するようになっている。そして、第１の設定レジスタ５３３には、目標とする漸増漸減のステップ時間ΔＴの１／２に相当した数値が、マイクロプロセッサ５２０から設定されている。
【０１２９】
第１の前段高速カウンタ５３０の現在値レジスタ５３１の計数現在値が増加して、第１の設定レジスタ５３３の設定値Ｎに達すると、カウントアップ出力Ｑ１が発生して、第１の前段高速カウンタ５３０をリセットする。これに伴って、第１の交番出力回路５４２ａの出力が交互に反転する。
【０１３０】
第１の前段高速カウンタ５３０がリセットされて現在値レジスタ５３１の値がゼロに復帰したことに伴って、カウントアップ出力Ｑ１もリセットされ、再び基準クロック信号ＣＬＫ１の計数が開始する。その結果、カウントアップ出力Ｑ１の発生周期は、設定値Ｎと基準クロック信号の周期τとの積であるＮ×τに等しくなる。そして、第１の交番出力回路５４２ａの出力パルスの周期は、その２倍の値である２×Ｎ×τとなり、これがステップ時間ΔＴに相当することになる。
【０１３１】
従って、第１の前段高速カウンタ５３０は、漸増漸減パターンのステップ時間生成手段となるものである。図５においては、現在値レジスタ５３１の計数現在値の変化が、鋸歯状波形５４１ａによって示されている。
【０１３２】
次段に接続された第１の高速カウンタ５５０は、第１の交番出力回路５４２ａの出力信号を計数入力としてアップまたはダウン計数する。さらに、１回のアップ／ダウン指令によって、変分値レジスタ５５１ａに格納されている漸減漸増周波数Δｆの値が、現在値レジスタ５５１に加算または減算されるようになっている。
【０１３３】
なお、第１の高速カウンタ５５０は、速度パターン５４１ｂを生成するためのものである。従って、第１の設定レジスタ５５３には、目標運転速度に対応したパルス周波数ｆ１の値が設定され、第２の設定レジスタ５５２には、停止前の低速速度に対応したパルス周波数ｆ２の値が設定され、現在値レジスタ５５１には、運転開始時の初速に対応したパルス周波数ｆ０の値が設定され、さらに、変分値レジスタ５５１ａには、漸増漸減周波数Δｆの値が設定されている。
【０１３４】
ただし、通常は、低速速度と初速とは同じ値が使用されｆ２＝ｆ０となっている。その結果、周期ΔＴによる計数入力信号が計数入力端子ＩＮに入力される都度に、現在値レジスタ５５１の値は、初速用のパルス周波数ｆ０を初期値として漸増周波数Δｆが順次加算される。そして、この加算現在値が第１の設定レジスタ５５３に格納されている目標運転速度に対応したパルス周波数ｆ１に達すると、カウントアップ出力Ｑ２が発生して否定論理素子５４４の出力によってアップ指令入力が停止する。従って、計数入力が発生しても、現在値レジスタ５５１の値は、一定値を維持するようになる。
【０１３５】
しかし、後述の第２の高速カウンタ５７０が減速開始指令を発生すると、論理和素子５４６ａとゲート素子５４６ｂの出力によって、第１の高速カウンタ５５０は、減算動作を開始する。そして、周期ΔＴによる計数入力信号が計数入力端子ＩＮに入力される都度に、現在値レジスタ５５１には、漸減周波数Δｆが順次減算される。
【０１３６】
やがて、現在値レジスタ５５１の値が、第２の設定レジスタ５５２に格納されている低速周波数ｆ２（＝ｆ０）以下になると、下降比較出力Ｐ２が論理レベル「Ｈ」となる。これにより、ゲート素子５４６ｂの出力が論理レベル「Ｌ」に反転することによって、減算動作が停止し、現在値レジスタ５５１の値は、低速周波数ｆ２（＝ｆ０）の値を維持するようになっている。
【０１３７】
第２の前段高速カウンタ５６０は、クロック信号発生回路５４０が発生する基準クロック信号ＣＬＫ１によって変分値レジスタ５６１ａに格納されている増分値を順次現在値レジスタ５６１に加算するようになっている。そして、第１の設定レジスタ５６３には、所定の係数Ｋ（例えば、Ｋ＝５００、０００）がマイクロプロセッサ５２０から設定されている。
【０１３８】
また、変分値レジスタ５６１ａには、第１の高速カウンタ５５０の現在値レジスタ５５１の値が、順次更新格納されるようになっている。従って、第２の前段高速カウンタ５６０の現在値レジスタ５６１の計数現在値は、基準クロック信号ＣＬＫ１のＯＮ／ＯＦＦ動作によって順次変分値レジスタ５６１ａに格納されている増分値が加算される。そして、やがて第１の設定レジスタ５６３に格納されている係数Ｋに達すると、カウントアップ出力Ｑ３を発生して第２の前段高速カウンタ５６０は、自己リセットされ、同じ動作を繰返すことになる。
【０１３９】
その結果、カウントアップ出力Ｑ３の発生周期は、変分値レジスタ５６１ａに格納されている増分値が大きいほど速い周期となる。そして、第２の交番出力回路５４２ｂの出力は、変分値レジスタ５６１ａに格納された増分値に反比例した周期のパルス出力となる。このパルス出力が、出力選択回路５４３を介して正転パルス出力ＦＰまたは逆転パルス出力ＲＰとしてサーボアンプ５０１に出力される。
【０１４０】
出力選択回路５４３は、マイクロプロセッサ５２０によって出力モードが決定され、たとえば、正転パルス出力ＦＰと逆転パルス出力ＲＰが出力されるか、または正逆転パルスＦＲＰと方向信号出力ＤＩＲが出力されるようになっている。
【０１４１】
第２の高速カウンタ５７０は、第２の交番出力回路５４２ｂの出力信号をアップカウントし、パルス発生回数を計数するカウンタとなっている。第２の高速カウンタ５７０の第１の設定レジスタ５７３には、目標パルス発生数が格納され、第２の設定レジスタ５７２には減速開始点までのパルス発生数が格納される。
【０１４２】
これらの設定値は、マイクロプロセッサ５２０からあらかじめ送信されたものとなっている。
【０１４３】
第２の高速カウンタ５７０がパルス発生数を計数し、やがて第２の設定レジスタ５７２に格納された減速開始点までのパルス数に達すると、上昇比較出力Ｐ４が論理レベル「Ｈ」となる。そして、論理和素子５４６ａとゲート素子５４６ｂを介して、第１の高速カウンタ５５０の減算動作が開始するようになっている。
【０１４４】
第２の高速カウンタ５７０がパルス発生数を計数し、やがて第１の設定レジスタ５７３に格納された目標パルス発生数に達すると、カウントアップ出力Ｑ４が論理レベル「Ｈ」となる。そして、第２の高速カウンタ５７０は、全ての可逆カウンタの動作を停止してパルス出力の発生を停止するとともに、パルス発生完了信号Ｍ４をマイクロプロセッサ５２０へ送信する。
【０１４５】
なお、図５の点線部分（符号５７０、５７１、５７３で示された部分）の動作については、図６を用いて説明する。図６は、本発明の実施の形態２における位置決め制御装置の別のブロック図である。先の図５における実線部分は、マイクロプロセッサ５２０に対する指令入力信号５０８が手動前進、手動後退、自動運転指令であった場合の接続回路である。これに対し、図６は、マイクロプロセッサ５２０に対する指令入力信号５０８が、原点復帰指令であった場合の接続回路となっている。
【０１４６】
図６において、第１の前段高速カウンタ５３０は、図５の場合と全く同様に動作し、クロック信号発生回路５４０が発生する基準クロック信号ＣＬＫ１をアップ計数しながら、第１の設定レジスタ５３３で設定された漸増漸減のステップ時間に対応した繰り返し動作を行う。現在値レジスタ５３１の計数現在値の変化は、図６中に示されたように、鋸歯状波形５４１ａに変化するようになっている。
【０１４７】
第１の高速カウンタ５５０も、先の図５の場合と略同様の動作を行って、図６中に特性線図５４１ｃで示したような速度パターンを生成する回路となっている。ただし、図６の場合は、現在値レジスタ５５１に対する初速設定が行われていないので、速度上昇パターンは、ゼロから徐々に上昇するようになっている。
【０１４８】
また、第１の高速カウンタ５５０が減算動作を開始するのは、近点ドッグ信号ＤＯＧの動作に依存している。この近点ドッグ信号ＤＯＧは、機械原点の手前でＯＮ動作するスイッチ信号に基づいて論理和素子５４６ａとゲート素子５４６ｂを介して、第１の高速カウンタ５５０にダウン指令を供給するものとなっている。
【０１４９】
さらに、減速完了段階では、第２の設定レジスタ５５２に格納された微速運転速度（クリープ速度）に対応した一定速度が維持されるようになっている。これは、下降比較出力Ｐ２によって、ゲート素子５４６ｂを介してダウン動作を停止するためである。
【０１５０】
第２の前段高速カウンタ５６０も、図５の場合と全く同様の動作を行い、前段の現在値レジスタ５５１の現在値が、変分値レジスタ５６１ａに順次転送される。そして、運転速度に対応した周波数に反比例した周期のパルス出力が、第２の交番出力回路５４２ｂの出力端子から得られるようになっている。
【０１５１】
第２の高速カウンタ５７０は、サーボモータ５０２に設けられたエンコーダ５０３が発生するゼロ相信号をアップ計数するカウンタである。その計数信号入力は、計数開始判定回路５４７の出力とゼロ点信号ＺＥＲＯが入力される論理積素子５４６ｃの出力信号となっている。
【０１５２】
計数開始判定回路５４７は、保持回路５４８とゲート素子５４９とによって構成されている。また、保持回路５４８は、近点ドッグ信号ＤＯＧがＯＦＦからＯＮに変化して、論理レベルが「Ｌ」から「Ｈ」になったことを記憶する。さらに、ゲート素子５４９の出力は、保持回路５４８がセットされた後に近点ドッグ信号ＤＯＧがＯＮからＯＦＦに変化したことによって、論理レベルが「Ｈ」となるように構成されている。
【０１５３】
その結果、近点ドッグ信号ＤＯＧが一旦動作してから不作動状態に復帰した後に、ゼロ点信号ＺＥＲＯが論理積素子５４６ｃを介して第２の高速カウンタ５７０の計数入力端子ＩＮに入力されるようになっている。
【０１５４】
近点ドッグ信号ＤＯＧとゼロ点信号ＺＥＲＯとの関連については、後に、図９を用いて改めて具体的に説明するが、概略、次のような動作をする。近点ドッグ信号ＤＯＧは、原点近傍で一旦論理レベル「Ｈ」となり、やがて減速が略完了した時点で、再び近点ドッグ信号ＤＯＧが論理レベル「Ｌ」になる。その後に、第２の高速カウンタ５７０が、ゼロ点信号ＺＥＲＯを計数開始するようになっている。
【０１５５】
第２の高速カウンタ５７０の現在値レジスタ５７１の計数現在値が、あらかじめ第１の設定レジスタ５７３に格納されているゼロ点信号数の値に達すると、カウントアップ出力Ｑ４が発生する。そして、第２の高速カウンタ５７０は、全ての高速カウンタの動作とパルス出力の発生を停止し、出力選択回路５４３を介してクリア信号ＣＬＲを発生する。さらに、第２の高速カウンタ５７０は、マイクロプロセッサ５２０に対してパルス発生完了信号Ｍ４を送信する。
【０１５６】
なお、クリア信号ＣＬＲは、サーボアンプの初期化を行なう信号として使用されるものである。また、第２の高速カウンタ５７０は、図５においては、発生パルス数の計数を行なったものが、図６においては、ゼロ点信号ＺＥＲＯを計数するためのものとして共用されており、高速カウンタの使用個数を抑制するようになっている。
【０１５７】
以上の説明では、第１・第２の前段高速カウンタ５３０・５６０における第２の設定レジスタ５３２・５６２と、図６における第２の高速カウンタ５７０の第２の設定レジスタ５７２とは、不使用となっている。しかしながら、いずれの場合も、第２の設定レジスタを使用して、第１の設定レジスタを使用しないようにすることもできる。この場合、カウントアップ出力に代わって、上昇比較出力が使用されることになる。
【０１５８】
次に、比較回路の詳細について説明する。図７Ａは、本発明の実施の形態１における第１・第２の高速カウンタ５５０・５７０に対する比較回路の全体構成図である。第１の前段高速カウンタ５３０や第２の前段高速カウンタ５６０の場合も、同様に構成されている。
【０１５９】
第１の比較回路５５６・５７６は、第１の設定レジスタ５５３・５７３の値が現在値レジスタ５５１・５７１の値以下となっているときに、比較判定出力を発生して記憶回路Ｓ１をセットする。記憶回路Ｓ１によるセット出力が、カウントアップ出力Ｑ２・Ｑ４となっている。
【０１６０】
第２の比較回路５５５・５７５は、第２の設定レジスタ５５２・５７２の値が現在値レジスタ５５１・５７１の値以下となっているとき、または設定値側の値が大きくなったときに、比較判定出力を発生して論理積素子５５８ａ・５７８ａまたは５５８ｂ・５７８ｂを介して記憶回路Ｓ２またはＳ３をセットする。記憶回路Ｓ２またはＳ３によるセット出力が、上昇比較出力Ｐ２・Ｐ４または下降比較出力Ｐ２・Ｐ４となっている。
【０１６１】
論理積素子５５８ａ・５７８ａは、第１・第２の高速カウンタ５５０・５７０の加算モード端子ＵＰの論理レベルが「Ｈ」となって、加算モードにあるときに、記憶回路Ｓ２に対するセット指令入力を有効にするゲート回路となっている。
【０１６２】
論理積素子５５８ｂ・５７８ｂは、第１・第２の高速カウンタ５５０・５７０の減算モード端子ＤＮの論理レベルが「Ｈ」となって減算モードにあるときに、記憶回路Ｓ３に対するセット指令入力を有効にするゲート回路となっている。
【０１６３】
第３の比較回路５５７・５７７は、現在値レジスタ５５１・５７１の値がゼロレジスタ５５４・５７４の値以下となっているときに、比較判定出力を発生して論理積素子５５９・５７９を介して記憶回路Ｓ４をセットする。記憶回路Ｓ４によるセット出力が、復帰出力Ｑ２・Ｑ４となっている。
【０１６４】
論理積素子５５９・５７９は、第１・第２の高速カウンタ５５０・５７０の減算モード端子ＤＮの論理レベルが「Ｈ」となって減算モードにあるときに、記憶回路Ｓ４に対するセット指令入力を有効にするゲート回路となっている。
【０１６５】
図７Ｂは、本発明の実施の形態２における第１の比較回路５５６・５７６の詳細論理回路図である。第２の比較回路５５５・５７５や第３の比較回路５５７・５７７も、同様に構成されている。
【０１６６】
図７Ｂにおいて、第１の設定レジスタ５５３・５７３には、最下位ビットをＢ０とし、最上位ビットをＢｎとするｎビットのバイナリデータが格納されている。また、現在値レジスタ５５１・５７１には、最下位ビットをＡ０とし、最上位ビットをＡｎとするｎビットのバイナリデータが格納されている。各ビットのＢｎの反転論理とＡｎとを入力とする混合論理和素子Ｌｘｎの出力は、Ｂｎ＝１、Ａｎ＝０の場合（すなわち、Ｂｎ＞Ａｎの場合）に限って論理「０」となる。
【０１６７】
このような混合論理和素子ＬｘｎからＬｘ０の出力を、論理積素子ＡＤｎ−１からＡＤ０によって順次カスケード接続して、最終段で否定論理和素子ＯＲＮによって論理反転した論理出力Ｘ１は、設定数値Ｂ＞現在数値Ａである場合に限って論理レベルが「Ｈ」となる。また、最終段の論理積出力からゲート素子ＧＡＴを介して得られる論理出力Ｘ２は、設定数値Ｂ≦現在数値Ａである場合に論理レベルが「Ｈ」となる。
【０１６８】
ただし、第１・第２の高速カウンタ５５０・５７０に対する計数入力が、論理レベル「Ｈ」に変化して計数動作が行われた時点においては、論理出力Ｘ１やＸ２の出力は、論理レベル「Ｌ」となっている。そして、計数入力が「Ｌ」に変化した時点で比較判定信号が有効となるようになっている。
【０１６９】
これは、計数入力が「Ｈ」に変化した直後の不安定状態で比較判定するのを回避するための遅延判定手段となるものである。
【０１７０】
論理出力Ｘ２による比較判定結果は、計数入力が「Ｌ」となった時点で記憶回路Ｓ１・Ｓ２・Ｓ４に記憶される。また、論理出力Ｘ２の反転出力は、計数入力が「Ｌ」となった時点で記憶回路Ｓ３に記憶される。
【０１７１】
以上の説明では、上昇通過と下降通過の判定を高速カウンタのアップ／ダウン指令の違いによって識別して記憶するようにした。しかしながら、これに代わって、カウントアップ出力が作動する前の一致であれば上昇通過であるとし、カウントアップ出力が作動した後の一致であれば下降通過であると判別することも可能である。
【０１７２】
なお、本実施の形態２では、第１の高速カウンタ５５０と第２の前段高速カウンタ５６０は、いずれも計数指令が論理レベル「Ｈ」に変化した時点において、現在値レジスタ５５１・５６１の値が大幅増加または大幅減少するものであり、必ず比較一致点に到達するとは限らない。そこで、「比較一致点以上または未満」、若しくは「比較一致点超過または以下」のような大小比較判定が必要となるものである。
【０１７３】
ただし、第１の高速カウンタ５５０の第１・第２の設定レジスタ５５３・５５２に対する設定値を第１の変分レジスタ５５１ａに格納される変分周波数Δｆの整数倍にするようにしておけば、第１の高速カウンタ５５０は、比較一致判定方式によることができるものである。
【０１７４】
次に、本実施の形態２における位置決め制御装置の作用・動作の詳細について説明する。図８は、本発明の実施の形態２における図５の構成に対応した位置決め制御装置の特性線図であり、通常運転時の運転速度パターンを示したものである。また、図９は、本発明の実施の形態２における図６の構成に対応した位置決め制御装置の特性線図であり、原点復帰運転時の運転速度パターンを示したものである。
【０１７５】
図８において、初速ｆ０は、現在値レジスタ５５１に格納される初期値に相当し、運転速度ｆ１は、第１の設定レジスタ５５３に格納される第１の設定値に相当し、低速ｆ２は、第２の設定レジスタ５５２に格納される第２の設定値に相当する。また、加減速時間ΔＴは、第１の設定レジスタ５３３に格納される変分時間の２倍の値に相当し、変分値Δｆは、第１の変分レジスタ５５１ａに格納される変分周波数に相当する。さらに、目標移動量Ｎは、第１の設定レジスタ５７３に格納されるパルス発生総数に相当し、減速開始Ｎｄは、第２の設定レジスタ５７２に格納される減速開始点までのパルス発生数に相当している。
【０１７６】
なお、減速開始後の残り移動量ΔＮは、運転速度ｆ１と減速勾配Δｆ／ΔＴによって、マイクロプロセッサ５２０により算出されたものである。
【０１７７】
一方、図９において、運転速度ｆ１は、第１の設定レジスタ５５３に格納される第１の設定値に相当し、微速ｆ２は、第２の設定レジスタ５５２に格納される第２の設定値に相当する。また、加減速時間ΔＴは、第１の設定レジスタ５３３に格納される変分時間の２倍の値に相当し、変分値Δｆは、第１の変分レジスタ５５１ａに格納される変分周波数に相当する。
【０１７８】
第１の高速カウンタ５５０の減速開始は、近点ドッグ信号ＤＯＧの動作によって開始する。そして、運転速度が十分低下した時点で近点ドッグ信号ＤＯＧが不作動復帰してからゼロ点信号ＺＥＲＯの発生数が所定値になった時点で、パルス発生が完了する。そして、最終的に、サーボアンプ５０１に対してクリア信号ＣＬＲが供給されるようになっている。
【０１７９】
次に、フローチャートを用いて一連の動作を説明する。図１０は、本発明の実施の形態２における図５、図６の構成に対応した位置決め制御装置の一連動作を示すフローチャートである。また、図１１は、本発明の実施の形態２における図１０の一部の工程に関する詳細動作を示すフローチャートである。
【０１８０】
図１０において、工程７００は、マイクロプロセッサ５２０がパルス出力動作を開始するステップである。続く工程７０１は、指令入力信号５０８から運転指令が入力されているか否かを判定するステップである。運転指令が入力されていなければ、ＮＯの判定を行なって動作終了工程７０２へ移行する。一方、運転指令が入力されていれば、ＹＥＳの判定を行なって工程７０３へ移行する。
【０１８１】
工程７０２では、他の制御を実行し、所定時間以内には、再度動作開始工程７００へ復帰するようになっている。一方、工程７０３は、後述の工程７１０ａにおいて、初回フラグがセットされたか否かを判定するステップである。初回フラグがセットされていなければ、ＹＥＳの判定を行なって工程７０５へ移行する。一方、初回フラグがセット済であれば、ＮＯの判定を行なって工程７０４へ移行する。
【０１８２】
なお、電源投入時には、初回フラグや各高速カウンタは、リセットされているので、電源投入直後の動作では、工程７０３は、ＹＥＳの判定を行なうようになっている。
【０１８３】
工程７０４は、第２の高速カウンタ５７０のカウントアップ出力Ｑ４が作動して一連のパルス出力が完了したか否かを判定するステップである。未完了であれば、ＮＯの判定を行なって工程７２０へ移行する。一方、完了であれば、ＹＥＳの判定を行なって工程７０５へ移行する。
【０１８４】
工程７０５は、各高速カウンタにリセット指令ＲＳＴを与え、各カウンタの動作を停止しておくステップである。続く工程７０６は、運転指令が原点復帰指令であるか否かを判定するステップである。原点復帰指令であれば、ＹＥＳの判定を行なって工程７０７ａへ移行する。一方、原点復帰でなければ、ＮＯの判定を行なって工程７０７ｂへ移行する。
【０１８５】
工程７０７ａでは、第２の高速カウンタ５７０の入出力回路を図６のとおりに構成してから、工程７０８ａへ移行する。一方、工程７０７ｂでは、第２の高速カウンタ５７０の入出力回路を図５のとおりに構成してから、工程７０８ｂへ移行する。工程７０８ａ・７０８ｂでは、図示しない配線切り替え用のゲート回路を作動させて回路変更を行なうようになっている。
【０１８６】
原点復帰運転における換算設定手段となる工程７０８ａでは、第１の前段高速カウンタ５３０の第１の設定レジスタ５３３に対しては、漸増・漸減周波数の変分時間ΔＴの１／２の値を設定し、現在値レジスタ５３１にはゼロを設定する。
【０１８７】
また、第１の高速カウンタ５５０の第１の設定レジスタ５５３に対しては、高速運転速度となる第１の設定値ｆ１を設定し、第２の設定レジスタ５５２には、停止前の微速運転速度となる第２の設定値ｆ２を設定し、現在値レジスタ５５１には、ゼロを設定する。さらに、第１の変分レジスタ５５１ａには、漸増・漸減周波数の変分周波数Δｆを設定し、第２の前段高速カウンタ５６０の第１の設定レジスタ５６３には、例えば、最大運転速度ｆｍａｘの５倍の値を設定し、現在値レジスタ５６１には、ゼロを設定する。また、第２の高速カウンタ５７０の第１の設定レジスタ５７３に対しては、ゼロ点信号数を設定し、現在値レジスタ５７１には、ゼロを設定する。
【０１８８】
通常運転における換算設定手段となる工程７０８ｂでは、第１の前段高速カウンタ５３０の第１の設定レジスタ５３３に対しては、漸増・漸減周波数の変分時間ΔＴの１／２の値を設定し、現在値レジスタ５３１にはゼロを設定する。
【０１８９】
また、第１の高速カウンタ５５０の第１の設定レジスタ５５３に対しては、高速運転速度となる第１の設定値ｆ１を設定し、第２の設定レジスタ５５２には、停止前の低速運転速度となる第２の設定値ｆ２を設定し、現在値レジスタ５５１には、運転開始時の初速ｆ０を設定する。さらに、第１の変分レジスタ５５１ａには、漸増・漸減周波数の変分周波数Δｆを設定し、第２の前段高速カウンタ５６０の第１の設定レジスタ５６３には、例えば、最大運転速度ｆｍａｘの５倍の値を設定し、現在値レジスタ５６１には、ゼロを設定する。また、第２の高速カウンタ５７０の第１の設定レジスタ５７３に対しては、目標となるパルス発生の総数Ｎを設定し、第２の設定レジスタ５７２には、減速開始点までの発生パルス数を設定し、現在値レジスタ５７１には、ゼロを設定する。
【０１９０】
上述した工程７０８ａ、７０８ｂで構成される工程ブロック７０９は、換算設定手段となるものであり、マイクロプロセッサ５２０は、第１・第２の高速カウンタ５５０・５７０や第１・第２の前段高速カウンタ５３０・５６０が動作しやすい値を演算設定するようになっている。
【０１９１】
工程７１０ａは、工程７０８ａまたは７０８ｂに続いて実行され、正転パルス出力指令Ｆ／ＳＰの論理を「Ｈ」にするか、または逆転パルス出力指令Ｒ／ＳＰの論理を「Ｈ」にする。これにより、回転方向指令とスタート指令を与え、リセット指令ＲＳＴを論理「Ｌ」にしてリセット解除し、初回フラグをセットする。
【０１９２】
その結果、工程７１０ｂによってパルス出力回路部１００ｂがパルス出力を発生する。続く工程７１１は、第２の高速カウンタ５７０のカウントアップ出力Ｑ４を作動させるための判定ステップである。パルス発生完了であれば、ＹＥＳの判定を行なって工程ブロック７１４へ移行する。一方、未完了であれば、ＮＯの判定を行なって工程７１２へ移行する。
【０１９３】
工程７１２は、パルス発生を開始してから所定時間を経過したか否かを判定するステップである。未超過であれば、ＮＯの判定を行なって動作終了工程７０２へ移行する。一方、時間超過であれば、工程７１３へ移行して、異常報知を行なってから動作終了工程７０２へ移行する。
【０１９４】
工程７２０は、正転限界スイッチ５０７、逆転限界スイッチ５０５、または強制停止指令スイッチが作動したかどうかを判定するステップである。緊急停止を行なう必要があるときに、ＹＥＳの判定を行なって工程７２１へ移行する。一方、緊急停止が不要であるときには、ＮＯの判定を行なって工程７１１へ移行する。
【０１９５】
工程７２１では、正転パルス出力指令Ｆ／ＳＰ、または逆転パルス出力指令Ｒ／ＳＰの論理レベルを「Ｌ」にしてパルス発生を停止し、工程７１０ａでセットされていた初回フラグをリセットしてから動作終了工程７０２へ移行する。
【０１９６】
上述した工程ブロック７１４の詳細を示す図１１において、工程８００は、工程７１１の判定がＹＥＳであったときに活性化されるサブルーチンの動作開始ステップである。続く工程８０１は、前述の工程７０６の判定が原点復帰であったか否かによって動作するステップである。原点復帰モードであれば、ＹＥＳの判定を行って工程８０２へ移行する。一方、原点復帰モードでなければ、ＮＯの判定を行なって工程８０３へ移行する。
【０１９７】
工程８０２では、ＲＡＭメモリ５２２の中に設けられた位置情報レジスタ５２３に対して、原点位置における座標値を書込み設定する。工程８０３では、第２の高速カウンタ５７０の現在値レジスタ５７１の値を読み出して、工程７１０ａで設定されていた回転方向指令に応じて読出現在値を位置情報レジスタ５２３に代数加算する。工程８０２または工程８０３に続いてサブルーチン動作終了工程８０４を経て、図１０の工程７１５へ移行するようになっている。
工程７１５では、工程７１０ａでセットされた初回フラグがリセットされ、その後、動作終了工程７０２へ移行する。
【０１９８】
以上の動作を概括説明すると、初回動作時、動作完了後の再起動時、または緊急停止後の初回動作時には、換算設定手段７０９によって各高速カウンタに対する制御定数の設定が行われ、一連のパルス出力の発生が完了する都度に、換算設定手段７０９による再設定が行われるようになっている。従って、マイクロプロセッサ５２０は、パルス発生の停止中に次回のパルス発生の制御定数を送信すればよいので、パルス発生動作と関連した割込み高速処理が不要となっている。
【０１９９】
以上の説明では、マイクロプロセッサ５２０は、出力選択回路５４３に対して正転パルス出力指令Ｆ／ＳＰと逆転パルス出力指令Ｒ／ＳＰを供給するようになっている。さらに、出力選択回路５４３は、正転パルス出力指令Ｆ／ＳＰが論理「Ｈ」であるときに、正転パルス出力ＦＰを発生し、逆転パルス出力指令Ｒ／ＳＰが論理「Ｈ」であるときに、逆転パルス出力ＲＰを発生し、正転パルス出力指令Ｆ／ＳＰと逆転パルス出力指令Ｒ／ＳＰがともに論理「Ｌ」であるときに、パルス発生を停止するようになっている。
【０２００】
これに代わって、マイクロプロセッサ５２０は、出力選択回路５４３に対して回転方向指令出力ＤＩＲとスタート指令ＳＴ／ＳＰを供給し、出力選択回路５４３は回転方向指令ＤＩＲをそのままサーボアンプ５０１に出力するとともに、スタート指令ＳＴ／ＳＰが論理「Ｈ」となったときに、第２の交番出力回路５４２ｂの出力信号を正逆転パルス出力ＦＲＰとしてサーボアンプ５０１に供給するようにしてもよい。
【０２０１】
マイクロプロセッサ５２０に対する指令入力信号５０８として、手動前進指令ボタンが押し続けられているとき、または手動後退指令ボタンが押し続けられているときの制御動作としては、指令ボタンが押された直後には漸増速度特性に基づいて目標速度まで上昇し、指令ボタンを押しやめると漸減速度特性に基づいて停止するような制御プログラムが適用される。指令ボタンが押し続けられていても、正転限界スイッチ、または逆転限界スイッチが作動すると自動停止するようになっている。
【０２０２】
また、正転限界スイッチや逆転限界スイッチが作動する前に指令ボタンを押すのをやめれば、以降は、始動時と逆の漸減速度パターンで減速して停止するようになっている。
【０２０３】
以上の説明で明らかなとおり、本実施の形態２による位置決め制御装置は、マイクロプロセッサ５２０からの設定指令情報に基づいて、位置決め制御用のパルス出力を発生するパルス出力回路部５００ｂを備えた位置決め制御装置５００である。そして、パルス出力回路部５００ｂは、少なくとも第１・第２の高速カウンタ５５０・５７０を備えているとともに、マイクロプロセッサ５２０と協働するプログラムメモリ５２１は、換算設定手段７０９となる制御プログラムを包含している。
【０２０４】
第１の高速カウンタ５５０は、目標とするパルス出力の周波数を可変設定するものであって、分周クロック信号ＣＬＫ２の計数現在値が格納される現在値レジスタ５５１と、第１・第２の設定レジスタ５５３・５５２と、第１・第２の比較回路５５６・５５５とによって構成されている。
【０２０５】
第２の高速カウンタ５７０は、パルス発生数の経過状況が格納される現在値レジスタ５７１と、第１・第２の設定レジスタ５７３・５７２と、第１・第２の比較回路５７６・５７５とによって構成されている。
【０２０６】
換算設定手段７０９は、第１・第２の高速カウンタ５５０・５７０の動作開始前に作用して、第２の高速カウンタ５７０に対して目標とするパルス発生数の設定を行うとともに、第１または第２の高速カウンタに対して目標運転速度パターンとなるパルス出力周波数の変遷特性を設定する。
【０２０７】
第１・第２の高速カウンタ５５０・５７０に設けられた第１の比較回路５５６・５７６は、現在値レジスタ５５１・５７１の値が第２の設定レジスタ５５２・５７２の設定値以上の値が設定される第１の設定レジスタ５５３・５７３の設定値と一致するか、または一致点以上または一致点超過したことによって、カウントアップ出力Ｑ２・Ｑ４を発生する。
【０２０８】
第１・第２の高速カウンタ５５０・５７０に設けられた第２の比較回路５５５・５７５は、現在値レジスタ５５１・５７１の値が上昇している過程または下降している過程において、第２の設定レジスタ５５２・５７２の設定値と一致するか、または一致状態を通過したことによって、上昇比較出力Ｐ２・Ｐ４または下降比較出力Ｐ２・Ｐ４の少なくとも一方の出力を発生する。
【０２０９】
パルス出力回路部５００ｂは、カウントアップ出力Ｑ２・Ｑ４と、上昇比較出力Ｐ２・Ｐ４または下降比較出力Ｐ２・Ｐ４の少なくとも一方の出力の発生に応動して、パルス出力周波数の変遷特性に基づく運転パターンによるパルス出力ＰＬＳを発生する。さらに、パルス出力回路部５００ｂは、パルス発生の完了に伴って、パルス発生完了信号Ｍ４をマイクロプロセッサ５２０に送信し、パルス発生開始から完了までの期間において、マイクロプロセッサ５２０からの指令を受けることなく指定された特性のパルス出力を発生するようになっている。
【０２１０】
第１の高速カウンタ５５０は、低速から高速、または高速から低速への漸増・漸減速度パターンとなる出力パルスの周波数変遷パターンを生成するためのものであって、第１の変分値レジスタ５５１ａを備えるとともに、第１の前段高速カウンタ５３０が接続されている。
【０２１１】
第１の前段高速カウンタ５３０は、所定周期の基準クロック信号ＣＬＫ１を計数するとともに、第１の交番出力回路５４２ａを介して可変周期の分周クロック信号ＣＬＫ２（第１の設定レジスタ５３３に設定された目標とする漸増漸減のステップ時間ΔＴの周期で第１の交番出力回路５４２ａから出力される計数入力信号に相当）を発生させる回路である。第１の前段高速カウンタ５３０の第１または第２の設定レジスタ５３３・５３２には、所定の漸増・漸減周波数の変分値Δｆに対応した所要変分時間ΔＴの半分の値が格納され、カウントアップ出力Ｑ１または上昇比較出力Ｐ１が発生して現在値レジスタ５３１がリセットされる都度に、第１の交番出力回路５４２ａの出力論理を反転させる。
【０２１２】
第１の変分値レジスタ５５１ａは、第１の高速カウンタ５５０に加算または減算計数入力が与えられたときに作用して、現在値レジスタ５５１に対して第１の変分値レジスタ５５１ａに格納されている周波数の変分値Δｆを加算または減算するための数値レジスタである。
【０２１３】
第１の高速カウンタ５５０は、第１の前段高速カウンタ５３０によって生成される可変周期の分周クロック信号ＣＬＫ２を計数するものである。第１の高速カウンタ５５０の第１の設定レジスタ５５３には、目標とする高速運転用の第１のパルス周波数に対応した第１の設定値ｆ１が格納され、第２の設定レジスタ５５２には、目標とする停止前の低速運転用の第２のパルス周波数に対応した第２の設定値ｆ２が格納され、現在値レジスタ５５１には、目標とする運転開始時の低速運転用の第３のパルス周波数に対応した第３の設定値ｆ０が初期値として格納され、さらに、第１の変分値レジスタ５５１ａには周波数の変分値Δｆが格納されている。
【０２１４】
第１の高速カウンタ５５０の現在値は、計数開始に伴って第３の設定値ｆ０から漸増し、カウントアップ出力Ｑ２が発生したことに伴って加算動作が停止して、第１の設定値ｆ１を持続する。一方、減速開始指令が与えられたことによって漸減し、下降比較出力Ｐ２が発生したことに伴って減算動作を停止して、第２の設定値ｆ２を持続する。
【０２１５】
第２の高速カウンタ５７０は、第１の高速カウンタ５５０の現在値レジスタ５５１の値の逆数に比例した周期のパルスを計数する。さらに、第２の高速カウンタ５７０の第１の設定レジスタ５７３には、目標とするパルスの発生数Ｎが設定され、第２の設定レジスタ５７２には、減速開始点までのパルスの発生数Ｎｄが設定されている。
【０２１６】
第２の高速カウンタ５７０の上昇比較出力Ｐ４が発生したことに伴って、第１の高速カウンタ５５０の減算動作が開始し、カウントアップ出力Ｑ４が発生したことに伴って、第１の高速カウンタ５５０のパルス発生が停止して、パルス発生完了信号Ｍ４をマイクロプロセッサ５２０に送信するようになっている。
【０２１７】
以上のとおり、本実施の形態２における位置決め制御装置は、変分値レジスタに格納された周波数の増減変分値が、現在値レジスタに加算または減算されるように構成されていて、目標とする漸増・漸減特性に応じた可変の周期のクロック信号によって第１の高速カウンタの現在値が増減するようになっている。
【０２１８】
特に、減速開始時期は、第２の高速カウンタに対してあらかじめマイクロプロセッサから設定されている減速開始点の情報に基づいて、自動的に決定されるようになっている。従って、上昇比較出力とカウントアップ出力と下降比較出力を用いて手軽に漸増・漸減の速度パターンを生成することができる特徴がある。
【０２１９】
さらに、第２の高速カウンタ５７０は、第１の高速カウンタ５５０の現在値の逆数を得るための第２の前段高速カウンタ５６０を備えている。第２の前段高速カウンタ５６０は、第２の変分値レジスタ５６１ａと第２の交番出力回路５４２ｂとを備える。そして、第２の前段高速カウンタ５６０の第１の設定レジスタ５６３または第２の設定レジスタ５６２には、所定の係数Ｋが設定されている。
【０２２０】
第２の変分値レジスタ５６１ａには、目標周波数となる第１の高速カウンタ５５０の現在値レジスタ５５１の値が格納されている。そして、第２の変分値レジスタ５６１ａは、第２の前段高速カウンタ５６０に加算計数入力が与えられたときに作用して、第２の前段高速カウンタ５６０の現在値レジスタ５６１に対して、第２の変分値レジスタ５６１ａに格納されている目標周波数の値を加算する。
【０２２１】
第２の交番出力回路５４２ｂは、第２の前段高速カウンタ５６０のカウントアップ出力Ｑ３または上昇比較出力Ｐ３が発生して、第２の前段高速カウンタ５６０の現在値がリセットされる都度に、その出力論理を反転し、所定の係数Ｋを第２の変分値レジスタ５６１ａの値で割った商の２倍の周期のパルス出力ＰＬＳを発生する。また、第２の高速カウンタ５７０は、第２の交番出力回路５４２ｂの出力信号を計数するものである。
【０２２２】
すなわち、第２の前段高速カウンタの現在値レジスタには、変分値レジスタに格納された目標周波数が加算されるように構成されていて、累積加算値が所定の係数値を超過することにより第２の前段高速カウンタが初期化されて再起動することによって、目標周波数に反比例した周期のパルス出力を発生するようになっている。従って、目標とする速度パターンに応じて時々刻々に変化するパルス周期の調整を、パルス出力回路側で実行して、マイクロプロセッサの制御負担を軽減することができる特徴がある。
【０２２３】
さらに、第１・第２の高速カウンタ５５０・５７０には、原点復帰指令に応動する位置決用入出力信号が接続されている。位置決用入力信号は、近点ドッグ信号ＤＯＧとゼロ点信号ＺＥＲＯとを含んでいる。近点ドッグ信号ＤＯＧは、原点近傍で作動し、原点側近位置で作動復帰する。また、ゼロ点信号ＺＥＲＯは、パルス出力ＰＬＳによって駆動されるサーボモータ５０２に設けられ、サーボモータ５０２の１回転当たりに１パルスの出力を発生するＺ相信号として入力される。
【０２２４】
位置決用出力信号は、原点出しが完了したときにサーボモータ５０２を駆動するサーボアンプ５０１の位置決め偏差残留パルスをリセットするためのクリア信号ＣＬＲである。
【０２２５】
第２の高速カウンタ５７０は、原点復帰指令が与えられたときには第２の交番出力回路５４２ｂの出力であるパルス出力ＰＬＳの計数を行なわない。そのかわり、近点ドッグ信号ＤＯＧの作動復帰に伴って、ゼロ点信号ＺＥＲＯである間欠パルス信号を計数し、ゼロ点信号数が所定の設定値に達したときに、パルス出力ＰＬＳの発生を停止する。そして、パルス発生完了信号Ｍ４をマイクロプロセッサ５２０に送信するとともに、サーボアンプ５０１に対してクリア信号ＣＬＲを供給する。
【０２２６】
第１の高速カウンタ５５０は、第１の前段高速カウンタ５３０によって生成される可変周期の分周クロック信号ＣＬＫ２を計数するものである。第１の高速カウンタ５５０の第１の設定レジスタ５５３には、目標とする原点復帰運転用の第１のパルス周波数に対応した第１の設定値ｆ１が格納され、第２の設定レジスタには、目標とする微速運転用の第２のパルス周波数に対応した第２の設定値ｆ２が格納され、現在値レジスタ５５１には、目標とする運転開始時の低速運転用の第３のパルス周波数に対応した第３の設定値ｆ０が初期値として格納され、さらに、第１の変分値レジスタ５５１ａには、周波数の変分値Δｆが格納される。
【０２２７】
第１の高速カウンタ５５０の現在値は、計数開始に伴って第３の設定値ｆ０から漸増し、カウントアップ出力Ｑ２が発生したことに伴って、加算動作が停止して、第１の設定値ｆ１を持続する。一方、第１の高速カウンタ５５０の現在値は、減速開始指令が与えられたことによって漸減し、下降比較出力Ｐ２が発生したことに伴って減算動作を停止して、第２の設定値ｆ２を持続する。なお、この減速開始指令は、目標原点の近傍位置に接近したときに動作する近点ドッグ信号ＤＯＧの作動によって発生するものである。
【０２２８】
すなわち、原点復帰指令が与えられると、第２の高速カウンタは、発生パルスの計数を行なわず、近点ドッグ信号が作動復帰した後のゼロ点信号数を計数して、ゼロ点信号数が所定値に到達したことによって動作完了するようになっている。また、近点ドッグ信号が作動することによって、第１の高速カウンタが減算動作を開始し、微速運転状態になってから停止するようになっている。従って、第２の高速カウンタは、通常の運転制御と原点復帰制御とが兼用されていて、必要とされるカウンタの個数を削減することができる特徴がある。
【０２２９】
さらに、マイクロプロセッサ５２０と協働するＲＡＭメモリ５２２は、絶対位置情報が格納される位置情報レジスタ５２３を備えるとともに、プログラムメモリ５２１は、現在位置初期化手段８０２と代数加算手段８０３とを備えている。
【０２３０】
ここで、現在位置初期化手段８０２は、原点復帰動作が完了した時点において、位置情報レジスタ５２３に対して所定の原点位置情報を書込み保存する手段である。また、代数加算手段８０３は、速度パターンによる１回の位置決め制御が完了した時点で第２の高速カウンタ５７０の現在値レジスタ５７１の値を読み出して、指令されていた回転方向に応じて位置情報レジスタ５２３に今回の移動量を代数加算する手段である。
【０２３１】
マイクロプロセッサ５２０は、次回の目標位置と位置情報レジスタ５２３の内容との偏差として算出された相対移動量と移動方向を、カウンタ回路５００ｂに対する設定情報として指令するものである。
【０２３２】
すなわち、マイクロプロセッサは、位置情報レジスタを用いて現在位置を常に把握するようになっている。従って、パルス出力回路部に対しては、常に相対移動量に基づく設定指令を行なうことができるので、パルス出力回路部側で絶対位置を記憶する必要がなく、簡易なパルス出力回路部が得られる特徴がある。
【０２３３】
さらに、第１・第２の比較回路５５６・５５５、５７６・５７５は、比較一致点を境として、一致点以上と未満、若しくは一致点超過と未満の大小の二値化論理出力を発生する。さらに、計数入力信号の論理が計数状態に反転した時点から所定の遅延時間をおいて、記憶回路Ｓ１・Ｓ２・Ｓ３に更新格納することによって、カウントアップ出力Ｑ２・Ｑ４と、上昇比較出力Ｐ２・Ｐ４または下降比較出力Ｐ２・Ｐ４とが得られる。
【０２３４】
すなわち、第１・第２の比較回路は、比較一致点を境として大小の二値化論理出力を発生し、論理確定後に比較結果を記憶するようになっている。従って、比較数値が一致点を飛び越して通過した場合であっても比較結果が得られるとともに、高速カウンタの計数タイミングでは、比較判定を回避して誤検出を防止することができる特徴がある。
【０２３５】
さらに、第１の高速カウンタ５５０の第１・第２の設定レジスタ５５３・５５２に格納される第１・第２の設定値ｆ１・ｆ２は、第１の変分値レジスタ５５１ａに格納される数値の整数倍の値である。第１の前段高速カウンタ５３０と第１の高速カウンタ５５０と第２の高速カウンタ５７０に設けられた第１・第２の比較回路は、比較一致または比較不一致による二値化論理出力を発生する。さらに、計数入力信号の論理が計数状態に反転した時点から所定の遅延時間をおいて、記憶回路Ｓ１・Ｓ２・Ｓ３に更新格納することによって、カウントアップ出力Ｑ１・Ｑ２・Ｑ４と、上昇比較出力Ｐ１・Ｐ２・Ｐ４または下降比較出力Ｐ１・Ｐ２・Ｐ４とが得られる。
【０２３６】
すなわち、第１の高速カウンタの第１・第２の設定レジスタに格納される第１・第２の設定値は、第１の変分値レジスタに格納される数値の整数倍の値となっている。従って、計数現在値の漸増・漸減過程において、比較一致点を必ず通過するので、簡易な比較回路方式によってカウントアップ出力・上昇比較出力・下降比較出力を得ることができる特徴がある。
【図面の簡単な説明】
【０２３７】
【図１】本発明の実施の形態１における位置決め制御装置のブロック図である。
【図２Ａ】本発明の実施の形態１における第１・第２の高速カウンタに対する比較回路の全体構成図である。
【図２Ｂ】本発明の実施の形態１における第１の比較回路の詳細論理回路図である。
【図３】本発明の実施の形態１における位置決め制御装置の特性線図である。
【図４】本発明の実施の形態１における位置決め制御装置の一連動作を示すフローチャートである。
【図５】本発明の実施の形態２における位置決め制御装置のブロック図である。
【図６】本発明の実施の形態２における位置決め制御装置の別のブロック図である。
【図７Ａ】本発明の実施の形態１における第１・第２の高速カウンタに対する比較回路の全体構成図である。
【図７Ｂ】本発明の実施の形態２における第１の比較回路の詳細論理回路図である。
【図８】本発明の実施の形態２における図５の構成に対応した位置決め制御装置の特性線図である。
【図９】本発明の実施の形態２における図６の構成に対応した位置決め制御装置の特性線図である。
【図１０】本発明の実施の形態２における図５、図６の構成に対応した位置決め制御装置の一連動作を示すフローチャートである。
【図１１】本発明の実施の形態２における図１０の一部の工程に関する詳細動作を示すフローチャートである。
【符号の説明】
【０２３８】
１００  位置決め制御装置、１００ａ  ＣＰＵユニット、１００ｂ  パルス出力回路部、１２０  マイクロプロセッサ、１２１  プログラムメモリ、１２２  ＲＡＭメモリ、１３０  第１の高速カウンタ、１３１  現在値レジスタ、１３２  第２の設定レジスタ、１３３  第１の設定レジスタ、１３５  第２の比較回路、１３６  第１の比較回路、１４１  選択切換回路、１４２  交番出力回路、１４３  出力選択回路、１５０  第２の高速カウンタ、１５１  現在値レジスタ、１５２  第２の設定レジスタ、１５３  第１の設定レジスタ、１５５  第２の比較回路、１５６  第１の比較回路、４０９  換算設定手段、５００  位置決め制御装置、５００ａ  ＣＰＵユニット、５００ｂ  パルス出力回路部、５０１  サーボアンプ、５０２  サーボモータ、５０３  エンコーダ、５２０  マイクロプロセッサ、５２１  プログラムメモリ、５２２  ＲＡＭメモリ、５２３  位置情報レジスタ、５３０  第１の前段高速カウンタ、５３１  現在値レジスタ、５３２  第２の設定レジスタ、５３３  第１の設定レジスタ、５３５  第２の比較回路、５３６  第１の比較回路、５４２ａ  第１の交番出力回路、５４２ｂ  第２の交番出力回路、５４３  出力選択回路、５５０  第１の高速カウンタ、５５１  現在値レジスタ、５５１ａ  第１の変分レジスタ、５５２  第２の設定レジスタ、５５３  第１の設定レジスタ、５５５  第２の比較回路、５５６  第１の比較回路、５６０  第２の前段高速カウンタ、５６１  現在値レジスタ、５６１ａ  第２の変分レジスタ、５６２  第２の設定レジスタ、５６３  第１の設定レジスタ、５６５  第２の比較回路、５６６  第１の比較回路、５７０  第２の高速カウンタ、５７１  現在値レジスタ、５７２  第２の設定レジスタ、５７３  第１の設定レジスタ、５７５  第２の比較回路、５７６  第１の比較回路、７０９  換算設定手段、８０２  現在位置初期化手段、８０３  代数加算手段、Ｑ１〜Ｑ４  カウントアップ出力、Ｑ１〜Ｑ４  復帰出力、Ｐ１〜Ｐ４  上昇比較出力、Ｐ１〜Ｐ４  下降比較出力、ＤＩＲ  回転方向指令出力、ＦＲＰ  正逆転パルス出力、ＦＰ  正転パルス出力、ＲＰ  逆転パルス出力、Ｍ４  パルス発生完了信号、ＣＬＲ  クリア信号、ＺＥＲＯ  ゼロ点信号、ＤＯＧ  近点ドグ信号、ＣＬＫ１  基準クロック信号、ＣＬＫ２  分周クロック信号。
【図１】
0004385066.tif 000002
【図２Ａ】
0004385066.tif 000003
【図２Ｂ】
0004385066.tif 000004
【図３】
0004385066.tif 000005
【図４】
0004385066.tif 000006
【図５】
0004385066.tif 000007
【図６】
0004385066.tif 000008
【図７Ａ】
0004385066.tif 000009
【図７Ｂ】
0004385066.tif 000010
【図８】
0004385066.tif 000011
【図９】
0004385066.tif 000012
【図１０】
0004385066.tif 000013
【図１１】
0004385066.tif 000014