(57)【要約】【課題】同期対象機器の駆動速度の変化に応じて同期動作開始時において生じる同期対象機器の位置のバラツキを解消し、制御対象機器の正確な同期動作を達成すること。【解決手段】制御対象機器に同期動作させるための同期対象機器の駆動速度を検出する速度検出部２３と、制御対象機器を目標位置に位置決めさせるためのモーションプログラムを起動させるシーケンスプログラムを格納し、シーケンスプログラムにおいて指定されたモーションプログラムを起動させるための起動信号を出力するシーケンス制御部１と、モーションプログラムを格納するモーションプログラム部９とモーションプログラムにおいて利用するデータを記憶するデータ記憶部７とを備え、起動信号を受信して起動信号の示すモーションプログラムに基づいて位置決め指令を出力し、速度検出部２３において検出される駆動速度に基づくタイミングで前記駆動速度に応じた駆動指令を出力するモーション制御部５と、位置決め指令および前記駆動指令に応じて制御対象機器を制御するサーボアンプ１１とを備える。【選択図】        図１１
2004265441.tif 000002
【特許請求の範囲】
【請求項１】
制御対象機器を目標位置に位置決めさせる位置決め制御装置において、
前記制御対象機器に同期動作させるための同期対象機器の駆動速度を検出する速度検出部と、
前記制御対象機器を目標位置に位置決めさせるためのモーションプログラムを起動させるシーケンスプログラムを格納し、前記シーケンスプログラムにおいて指定されたモーションプログラムを起動させるための起動信号を出力するシーケンス制御部と、
前記モーションプログラムを格納するモーションプログラム部と前記モーションプログラムにおいて利用するデータを記憶するデータ記憶部とを備え、前記起動信号を受信して前記起動信号の示すモーションプログラムに基づいて位置決め指令を出力し、前記速度検出部において検出される駆動速度に基づくタイミングで前記駆動速度に応じた駆動指令を出力するモーション制御部と、
前記位置決め指令および前記駆動指令に応じて前記制御対象機器を制御するサーボアンプと、
を備えることを特徴とする位置決め制御装置。
【請求項２】
前記モーション制御部は、前記データ記憶部のデータとして、前記駆動指令を出力するタイミングを判定するための判定カウント値を記憶し、前記速度検出部において検出される駆動速度から前記同期対象機器の加減速量を算出し、さらに当該加減速量を累積したカウント値を算出して、前記カウント値が前記判定カウント値を超えた場合に、前記駆動指令を出力することを特徴とする請求項１に記載の位置決め制御装置。
【請求項３】
前記判定カウント値は、モーションプログラムにおいて示されることを特徴とする請求項２に記載の位置決め制御装置。
【請求項４】
前記モーション制御部は、前記駆動指令として、前記速度検出部において検出される駆動速度から算出される前記同期対象機器の加減速量と前記位置決め指令において示される速度とを用いて生成する速度増減信号を出力することを特徴とする請求項１〜３のいずれか一つに記載の位置決め制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、サーボモータを目標位置に位置決めさせる位置決め制御装置に関する。
【背景技術】
【０００２】
図１５は、従来の位置決め制御装置の一例を示したブロック図である。図１５において、従来の位置決め制御装置は、制御対象機器となるサーボモータ１３と、サーボモータ１３の位置および速度を検出するエンコーダ１４と、サーボモータ１３を駆動させるサーボアンプ１１と、サーボアンプ１１にサーボモータ１３を駆動させるための駆動信号を送信するモーション制御部５と、予め定められたシーケンスプログラムに基づいてモーション制御部５に制御信号を送信するシーケンス制御部１と、から構成される。
【０００３】
また、シーケンス制御部１は、図１６に示すようなシーケンスプログラムを格納するシーケンスプログラム部３と、そのシーケンスプログラム部３に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部２と、制御部２において生成された起動信号等をモーション制御部５に送信するインターフェース部４と、から構成される。なお、図１６のシーケンスプログラムは、ユーザにより周辺機器であるキーボード等を介して入力設定されるプログラムの一例である。
【０００４】
また、モーション制御部５は、シーケンス制御部１（詳しくはインターフェース部４）から送信される起動信号等を受信するインターフェース部８と、図１７に示すようなモーションプログラム（ここでは、サーボモータを駆動する際に工作機械等で一般に使用されるＧコードとして示されている）を格納するモーションプログラム部９と、インターフェース部８において受信した起動信号およびモーションプログラム部９に格納されたモーションプログラムに基づいて駆動信号を生成する制御部６と、制御部６において生成された駆動信号をサーボアンプ１１に送信するインターフェース部１０と、から構成される。なお、図１７のモーションプログラムは、ユーザにより周辺機器であるキーボード等を介して入力設定されるプログラムの一例である。
【０００５】
また、サーボアンプ１１は、モーション制御部５（詳しくはインターフェース部１０）から送信される駆動信号を受信するインターフェース部１２を備え、インターフェース部１２において受信した駆動信号と、エンコーダ１４において検出された位置信号および速度信号と、からサーボモータ１３を駆動する。
【０００６】
つぎに、この従来の位置決め制御装置の動作を説明する。まず、シーケンス制御部１において、制御部２は、シーケンスプログラムの格納されているシーケンスプログラム部３から図１６に示すシーケンスプログラムを読み出す。ここで、制御部２は、読み出したシーケンスプログラムにおける運転条件が成立したかを判定し、運転条件が成立すると、実行すべきモーションプログラムの番号（ここでは、"Ｎｏ１"）を示すプログラム番号信号と起動信号とを生成して、それら信号をインターフェース部４に送信する。インターフェース部４は、制御部２から送信されるプログラム番号信号と起動信号とを受信し、それら信号をモーション制御部５（詳しくはインターフェース部８）に送信する。
【０００７】
続くモーション制御部５における動作を図１８および図１９に示すフローチャートを参照しつつ説明する。まず、図１８において、モーション制御部５の制御部６が、インターフェース部８において起動信号が受信されたかを判定する。特にインターフェース部８においては、起動信号のＯＮ／ＯＦＦ状態を示す起動フラグが用意され、起動信号が受信された際にこの起動フラグをＯＮ状態にする。制御部６は、この起動フラグの状態がＯＮ状態であるかを判定する（ステップＳ１００１）。ステップＳ１００１において、起動フラグがＯＮ状態でないならば、図１８のフローチャートにおける処理を終了する。
【０００８】
ステップＳ１００１において、起動フラグがＯＮ状態であるならば、モーション制御部５において実行される処理（この場合、前回のシーケンスプログラムの指令に基づく処理）の動作状態を示す動作フラグがＯＮ状態を示しているかを判定する（ステップＳ１００２）。ステップＳ１００２において、動作フラグがＯＮ状態を示していない場合は、すなわち動作フラグがＯＦＦ状態を示している場合は、インターフェース部８において受信されたプログラム番号信号の示すプログラム番号を読み込み、そのプログラム番号の示すモーションプログラムをモーションプログラム部９から選択する（ステップＳ１００３）。また、起動フラグをＯＦＦ状態におよび動作フラグをＯＮ状態に変更する（ステップＳ１００４）。そして、ステップＳ１００３において選択されたモーションプログラムに基づく処理（後述する）を行い（ステップＳ１００５）、図１８のフローチャートにおける処理を終了する。
【０００９】
ステップＳ１００２において、動作フラグがＯＮ状態を示す場合は、エラー処理（ステップＳ１００６）を行い、図１８のフローチャートにおける処理を終了する。
【００１０】
つぎに、図１８のステップＳ１００５の処理について図１９を参照しつつ説明する。ここでは、ステップＳ１００３において読み込まれたモーションプログラム番号が"Ｎｏ１"を示し、図１７に示すモーションプログラムの番号"Ｎｏ１"のモーションプログラムが実行されるものとする。まず、モーション制御部５の制御部６は、図１７に示すモーションプログラムを以下のように解読する（ステップＳ１００７）。
Ｇ０１              ＰＯＩＮＴ  ＴＯ  ＰＯＩＮＴの位置決め動作
Ｘ１００．          Ｘ軸を目標位置＝１００ｍｍに位置決め
Ｆ１０００．        送り速度＝１０００ｍｍ／ｍｉｎ
【００１１】
制御部６によるモーションプログラムの解読後、特にＸ軸に対応したサーボアンプ１１（詳しくは、インターフェース部１２）に対して、目標位置＝１００ｍｍに送り速度１０００ｍｍ／ｍｉｎで位置決めを行う位置指令を示す駆動信号を送信する（ステップＳ１００８）。サーボアンプ１１は、インターフェース部１２において駆動信号を受信すると、サーボモータ１３を受信した駆動信号の示す速度で目標位置まで回転させる。また、エンコーダ１４は、サーボモータ１３の位置を検出しており、サーボモータ１３が目標位置に達した際には、サーボモータ１３の動作完了を示す動作完了信号を、サーボアンプ１１のインターフェース部１２を介してモーション制御部５に向けて送信する。モーション制御部５の制御部６は、この動作完了信号を受信したかを判定することで、サーボモータ１３が目標位置に達したことを確認する（ステップＳ１００９）。
【００１２】
ステップＳ１００９において、サーボモータ１３の動作の完了を検出した場合は、前述した動作フラグをＯＦＦ状態に変更し（ステップＳ１０１０）、図１９のフローチャートにおける処理すなわちモーションプログラムの処理を終了する。また、ステップＳ１００９において、サーボモータ１３の動作の完了を検出しない場合は、モーションプログラムが動作中であることを示し、ステップＳ１００９における動作完了確認を繰り返す。
【００１３】
以上に説明したように、この従来の位置決め制御装置によれば、シーケンスプログラムの示す運転条件の成立とともに、指定したモーションプログラムが実行され、そのモーションプログラムに基づいて、サーボモータの位置決めを達成している。
【００１４】
図２０は、従来の位置決め制御装置の他の例を示したブロック図である。図２０において、従来の位置決め制御装置は、制御対象機器となるサーボモータ１３と、サーボモータ１３の位置および速度を検出するエンコーダ１４と、コンベア等の駆動軸（図示せず）に取り付けて速度を検出するエンコーダ２３と、サーボモータ１３を駆動させるサーボアンプ１１と、サーボアンプ１１にサーボモータ１３を駆動させるための駆動信号を送信するモーション制御部５と、予め定められたシーケンスプログラムに基づいてモーション制御部５に制御信号を送信するシーケンス制御部１と、から構成される。
【００１５】
また、シーケンス制御部１は、図１６に示すようなシーケンスプログラムを格納するシーケンスプログラム部３と、そのシーケンスプログラム部３に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部２と、制御部２において生成された起動信号等をモーション制御部５に送信するインターフェース部４と、から構成される。
【００１６】
また、モーション制御部５は、シーケンス制御部１（詳しくはインターフェース部４）から送信される起動信号等を受信するインターフェース部８と、図２１に示すようなモーションプログラム（ここでは、サーボモータを駆動する際に工作機械等で一般に使用されるＧコードで示されている）を格納するモーションプログラム部９と、インターフェース部８において受信した起動信号およびモーションプログラム部９に格納されたモーションプログラムに基づいて駆動信号を生成する制御部６と、制御部６において生成された駆動信号をサーボアンプ１１に送信するインターフェース部１０と、エンコーダ２３によって検出された速度に基づくパルス数を入力するインターフェース部２４と、インターフェース部２４において受信したパルス数等を記憶するメモリ７と、から構成される。なお、図２１のモーションプログラムは、ユーザにより周辺機器であるキーボード等を介して入力設定されるプログラムの一例である。
【００１７】
また、サーボアンプ１１は、モーション制御部５（詳しくはインターフェース部１０）から送信される駆動信号を受信するインターフェース部１２を備え、インターフェース部１２において受信した駆動信号と、エンコーダ１４において検出された位置信号および速度信号と、からサーボモータ１３を駆動する。
【００１８】
つぎに、この従来の位置決め制御装置の動作を説明する。まず、シーケンス制御部１において、制御部２は、シーケンスプログラムの格納されているシーケンスプログラム部３から図１６に示すシーケンスプログラムを読み出す。ここで、制御部２は、読み出したシーケンスプログラムにおける運転条件が成立したかを判定し、運転条件が成立すると、実行すべきモーションプログラムの番号（ここでは、"Ｎｏ１"）を示すプログラム番号信号と起動信号とを生成して、それら信号をインターフェース部４に送信する。インターフェース部４は、制御部２から送信されるプログラム番号信号と起動信号とを受信し、それら信号をモーション制御部５（詳しくはインターフェース部８）に送信する。
【００１９】
続くモーション制御部５における動作は、上述した図１８および図１９のフローチャートに示す処理と同様であるので、この部分の説明を省略する。ここでは、図２１に示すモーションプログラムに基づく具体的な処理について図２２を参照しつつ説明する。なお、図１９のステップＳ１００７において、モーション制御部５の制御部６は、図２１に示すモーションプログラムを以下のように解読する。
Ｇ９５              送り速度を主軸１回転当りに変更
Ｘ１００．          Ｘ軸を目標位置＝１００ｍｍに位置決め
Ｆ１０．            送り速度＝１０ｍｍ／ｒｅｖ
【００２０】
制御部６は、図２１に示すモーションプログラムに基づいて、Ｘ軸に対応したサーボアンプ１１（詳しくは、インターフェース部１２）に対し、目標位置＝１００ｍｍに送り速度１０ｍｍ／ｒｅｖで位置決めを行う位置指令を示す駆動信号を送信する。サーボアンプ１１は、インターフェース部１２において駆動信号を受信すると、サーボモータ１３を受信した駆動信号の示す速度で目標位置まで回転させる。
【００２１】
この回転動作が実行されている間に、モーション制御部５の制御部６は、エンコーダ２３においてある一定時間において検出されたパルス数（以下、エンコーダ検出値と称する）をインターフェース部２４から読み込む（ステップＳ１１０１）。このエンコーダ検出値は、コンベア等の駆動軸の回転速度を表す。つぎに、読み込んだエンコーダ検出値をメモリ７に今回値として書き込む（ステップＳ１１０２）。すなわち、今回値は、最新のエンコーダ検出値を示す。そして、今回値と前回に読み込まれたエンコーダ検出値（前回値）とを以下の式により減算することでΔＰを算出する（ステップＳ１１０３）。
ΔＰ＝今回値−前回値
【００２２】
ここで、ΔＰは、検出された２つの回転速度（この場合、前回値と今回値）間の変化量すなわち加減速量を示しており、今回値と同様にメモリ７に書き込まれる。
【００２３】
続いて、ステップＳ１１０３において算出されたΔＰと、予め定められた基準となる１回転パルス数（メモリ７に書き込まれている）と、モーションプログラムにおいて設定された送り速度Ｆ（ここでは、１０ｍｍ／ｒｅｖ）と、を用いた以下の式により、ΔＬを算出する（ステップＳ１１０４）。
ΔＬ＝Ｆ×ΔＰ／１回転パルス数
【００２４】
ここで、ΔＰ／１回転パルス数は、一定時間当りの回転数の増減を示しており、これにサーボモータ１３に設定された送り速度Ｆを乗算することで、エンコーダ２３において検出される駆動軸の回転速度に追従するための回転速度増減分ΔＬが得られる。
【００２５】
つぎに、ステップＳ１１０４において算出したΔＬの示す信号をサーボアンプ指令値としてインターフェース部１０に送信する。インターフェース部１０は、受信したΔＬ信号をサーボアンプ１１（詳しくはインターフェース部１２）に送信し（ステップＳ１１０５）、サーボアンプ１１は、このΔＬ信号に基づいて増減させた送り速度でサーボモータ１３を駆動させる。これにより、コンベアの駆動軸等の異なる駆動系の動作速度と同期したサーボモータ１３の回転駆動が達成される。
【００２６】
ステップＳ１１０５の処理後は、次回処理のために、今回値の示す値を前回値として設定する（ステップＳ１１０６）。なお、ΔＰ、今回値、前回値、モータ１回転パルス数は、図２３に示すように、メモリ７に記憶される。
【００２７】
以上に説明したように、この従来の位置決め制御装置によれば、シーケンスプログラムの示す運転条件の成立とともに実行されるモーションプログラムに基づいたサーボモータの設定と、サーボモータの送り速度をコンベア等の駆動軸の回転速度（ここでは、パルス数）から算出されるサーボアンプ指令値に基づいて変化させることでサーボモータの同期動作、を達成している。
【発明の開示】
【発明が解決しようとする課題】
【００２８】
しかしながら、上述した従来の位置決め制御装置の一例は、モーション制御部５において実行される処理（この場合、前回のシーケンスプログラムの指令に基づく処理）が動作中である場合には、新たなシーケンスプログラムの指令に基づく処理を起動させる起動信号を受け付けることができずにエラー処理が実行されていた。よって、新たなシーケンスプログラムの指令に基づく処理を起動されるためには、前回のシーケンスプログラムの指令に基づく処理が終了したことを知ってからあらためて新たなシーケンスプログラムの読み込みを開始しなければならず、複数のシーケンスプログラムを間断無く連続的に実行させることができなかった。
【００２９】
また、これにより、シーケンスプログラムの指令に基づく処理を起動させるための起動フラグが常時ＯＮ状態を示す場合には、新たなシーケンスプログラムの指令に基づく処理を実行することができなかった。
【００３０】
また、上述した従来の位置決め制御装置の他の例は、コンベア等の駆動軸の回転速度を検出するのに一定時間を必要とするため、例えば急激な回転速度の増加がコンベア等の駆動軸に生じた場合には、その一定時間後における駆動軸の回転位置もまた大きく変位してしまう。サーボモータは、この大きな変位が生じた後に初めて速度の追従を行うので、この変位分のずれが生じてしまう。ここで、このサーボモータの同期動作のタイミングにおけるずれの量は、コンベア等の駆動軸の回転速度における変化量すなわち加減速量によって異なってしまい、これにより、ずれ量のバラツキが生じてしまうという問題があった。
【００３１】
さらに、上記した速度を検出するための一定時間は、比較的大きな値に固定して設定されることで、コンベア等の駆動軸の十分な速度変化を得ているので、その一定時間を小さくして急激な速度変化の検出を即座に行うことはできなかった。
【００３２】
この発明は、上記に鑑みてなされたものであって、モーションプログラムが動作中であっても、つぎのモーションプログラムの起動信号を受信し、また、サーボモータの同期動作における同期位置のずれ量のバラツキを防止する位置決め制御装置を得ることを目的とする。
【課題を解決するための手段】
【００３３】
上述した課題を解決し、目的を達成するために、本発明に係る位置決め制御装置は、制御対象機器を目標位置に位置決めさせる位置決め制御装置において、前記制御対象機器に同期動作させるための同期対象機器の駆動速度を検出する速度検出部と、前記制御対象機器を目標位置に位置決めさせるためのモーションプログラムを指定して起動させるシーケンスプログラムを格納し、前記シーケンスプログラムにおいて指定されたモーションプログラムを起動させるための起動信号を出力するシーケンス制御部と、前記モーションプログラムを格納するモーションプログラム部と前記モーションプログラムにおいて利用するデータを記憶するデータ記憶部とを備え、前記起動信号を受信して前記起動信号の示すモーションプログラムに基づいて位置決め指令を出力し、前記速度検出部において検出される駆動速度に基づくタイミングで前記駆動速度に応じた駆動指令を出力するモーション制御部と、前記位置決め指令および前記駆動指令に応じて前記制御対象機器を制御するサーボアンプと、を備えることを特徴とする。
【００３４】
この発明によれば、シーケンス制御部が、実行されるシーケンスプログラム内で指定されるモーションプログラムの起動信号をモーション制御部に出力し、モーション制御部がその起動信号を受信して指定されたモーションプログラムを実行することができ、かつ、モーション制御部は、制御対象機器を、同期対象機器と同期して動作させるために、前記駆動速度に応じた駆動指令を、速度検出部から検出される同期対象機器の駆動速度に基づくタイミングでサーボアンプに出力するので、同期対象機器の駆動速度の変化に応じて同期動作開始時において生じる同期対象機器の位置のバラツキを解消することができ、制御対象機器の正確な同期動作が達成される。
【００３５】
つぎの発明に係る位置決め制御装置は、前記モーション制御部が、前記データ記憶部のデータとして、前記駆動指令を出力するタイミングを判定するための判定カウント値を記憶し、前記速度検出部において検出される駆動速度から前記同期対象機器の加減速量を算出し、さらに当該加減速量を累積したカウント値を算出して、前記カウント値が前記判定カウント値を超えた場合に、前記駆動指令を出力することを特徴とする。
【００３６】
この発明によれば、モーション制御部において、駆動指令を出力するタイミングを、前記速度検出部において検出される駆動速度から前記同期対象機器の加減速量を累積することで算出されるカウント値がデータ記憶部に記憶された判定カウント値を超えた時点としているので、同期対象機器の駆動速度の変化に応じて同期動作開始時において生じる同期対象機器の位置のバラツキを解消した、より正確な制御対象機器の同期動作が達成される。
【００３７】
つぎの発明に係る位置決め制御装置は、前記判定カウント値が、モーションプログラムにおいて示されることを特徴とする。
【００３８】
この発明によれば、判定カウント値が、モーションプログラムにおいて示されるので、モーションプログラム毎に判定カウント値を設定でき、モーションプログラムの示す制御内容に応じた制御対象機器の最適な同期動作が可能になる。
【００３９】
つぎの発明に係る位置決め制御装置は、前記モーション制御部が、前記駆動指令として、前記速度検出部において検出される駆動速度から算出される前記同期対象機器の加減速量と前記位置決め指令において示される速度とを用いて生成する速度増減信号を出力することを特徴とする。
【００４０】
この発明によれば、モーション制御部が、前記駆動指令として、前記速度検出部において検出される駆動速度から算出される前記同期対象機器の加減速量と前記位置決め指令において示される速度とを用いて算出される速度増減信号を出力するので、同期対象機器の加減速量に応じた速度によって制御対象機器を正確に同期動作させることができる。
【発明の効果】
【００４１】
この発明によれば、シーケンス制御部が、実行されるシーケンスプログラム内で指定されるモーションプログラムの起動信号をモーション制御部に出力し、モーション制御部がその起動信号を受信して指定されたモーションプログラムを実行することができ、かつ、モーション制御部は、制御対象機器を、同期対象機器と同期して動作させるために、前記駆動速度に応じた駆動指令を、速度検出部から検出される同期対象機器の駆動速度に基づくタイミングでサーボアンプに出力するので、同期対象機器の駆動速度の変化に応じて同期動作開始時において生じる同期対象機器の位置のバラツキを解消することができ、制御対象機器の正確な同期動作が達成される。
【００４２】
つぎの発明によれば、モーション制御部において、駆動指令を出力するタイミングを、前記速度検出部において検出される駆動速度から前記同期対象機器の加減速量を累積することで算出されるカウント値が、データ記憶部に記憶された判定カウント値を超えた場合としているので、同期対象機器の駆動速度の変化に応じて同期動作開始時において生じる同期対象機器の位置のバラツキを解消したより正確な制御対象機器の同期動作が達成される。
【００４３】
つぎの発明によれば、判定カウント値が、モーションプログラムにおいて示されるので、モーションプログラム毎に判定カウント値を設定でき、モーションプログラムの示す制御内容に応じた制御対象機器の最適な同期動作が可能になる。
【００４４】
つぎの発明によれば、モーション制御部が、前記駆動指令として、前記速度検出部において検出される駆動速度から算出される前記同期対象機器の加減速量と前記位置決め指令において示される速度とを用いて算出される速度増減信号を出力するので、同期対象機器の加減速量に応じた速度によって制御対象機器を正確に同期動作させることができる。
【発明を実施するための最良の形態】
【００４５】
以下に、本発明に係る位置決め制御装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。
【００４６】
実施の形態１．
図１は、実施の形態１に係る位置決め制御装置の概略構成を示したブロック図である。図１において、実施の形態１に係る位置決め制御装置は、制御対象機器となるサーボモータ１３と、サーボモータ１３の位置および速度を検出するエンコーダ１４と、サーボモータ１３を駆動させるサーボアンプ１１と、サーボモータ１３を駆動させるための駆動信号をサーボアンプ１１に送信するモーション制御部５と、シーケンスプログラムに基づいてモーション制御部５に制御信号を送信するシーケンス制御部１と、から構成される。
【００４７】
また、シーケンス制御部１は、図２に示すようなシーケンスプログラムを格納するシーケンスプログラム部３と、シーケンスプログラム部３に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部２と、制御部２において生成された起動信号等をモーション制御部５に送信するインターフェース部４と、から構成される。なお、図２のシーケンスプログラムは、ユーザーにより周辺機器であるキーボード等（図示せず）を介して入力設定されるプログラムの一例である。
【００４８】
また、モーション制御部５は、シーケンス制御部１（詳しくはインターフェース部４）から送信される起動信号等を受信するインターフェース部８と、図３に示すようなモーションプログラムを格納するモーションプログラム部９と、インターフェース部８において受信した起動信号等とモーションプログラム部９に格納されたモーションプログラムとに基づいて駆動信号を生成する制御部６と、制御部６において利用されるデータを記憶するメモリ７と、制御部６において生成された駆動信号をサーボアンプ１１に送信するインターフェース部１０と、から構成される。なお、図３のモーションプログラムは、ユーザーにより周辺機器であるキーボード等（図示せず）を介して入力設定されるプログラムの一例である。
【００４９】
ここで、インターフェース部８は、シーケンス制御部１から送信される起動信号等を逐次的に記憶可能なメモリ（図示せず）を備えており、連続して送信されたシーケンスプログラムのそれぞれに対応する起動信号等を制御部６により読み込むことができる。
【００５０】
また、サーボアンプ１１は、モーション制御部５（詳しくはインターフェース部１０）から送信される駆動信号を受信するインターフェース部１２を備え、インターフェース部１２において受信した駆動信号と、エンコーダ１４において検出された位置信号および速度信号と、からサーボモータ１３を駆動する。
【００５１】
つぎに、この位置決め制御装置の動作を説明する。まず、シーケンス制御部１において、制御部２は、シーケンスプログラムの格納されているシーケンスプログラム部３から図２に示すシーケンスプログラムを読み出す。ここで、制御部２は、読み出したシーケンスプログラムに示される運転条件が成立したかを判定し、運転条件が成立すると、実行すべきモーションプログラムの番号（ここでは、"Ｎｏ１"）を示すプログラム番号信号とモーションプログラムの起動を促す起動信号とを生成して、それら信号をインターフェース部４に送信する。インターフェース部４は、制御部２から送信されるプログラム番号信号と起動信号とを受信し、それら信号をモーション制御部５（詳しくはインターフェース部８）に送信する。
【００５２】
続くモーション制御部５における動作を図４および図５に示すフローチャートを参照しつつ説明する。まず、図４において、モーション制御部５の制御部６が、インターフェース部８において起動信号が受信されたかを判定する。特にインターフェース部８においては、起動信号のＯＮ／ＯＦＦ状態を示す起動フラグが用意され、起動信号が受信された際にこの起動フラグをＯＮ状態にする。制御部６は、この起動フラグの状態がＯＮ状態であるかを判定する（ステップＳ１０１）。ステップＳ１０１において、起動フラグがＯＮ状態でない場合は、図４のフローチャートにおける処理を終了する。
【００５３】
ステップＳ１０１において、起動フラグがＯＮ状態である場合は、モーション制御部５において実行される処理（この場合、前回のシーケンスプログラムの指令に基づく処理）の動作状態を示す動作フラグがＯＮ状態を示しているかを判定する（ステップＳ１０２）。ステップＳ１０２において、動作フラグがＯＮ状態を示していない場合は、すなわち動作フラグがＯＦＦ状態を示している場合は、インターフェース部８において受信されたプログラム番号信号からプログラム番号を取得し、そのプログラム番号の示すモーションプログラムをモーションプログラム部９から指定する（ステップＳ１０３）。また、起動フラグをＯＦＦ状態に、および動作フラグをＯＮ状態に変更する（ステップＳ１０４）。そして、ステップＳ１０３において指定されたモーションプログラムに基づく処理（後述する）を行い（ステップＳ１０５）、図４のフローチャートにおける処理を終了する。
【００５４】
ステップＳ１０２において、動作フラグがＯＮ状態を示す場合は、エラー処理等を行わずに、図４のフローチャートにおける処理を終了する。
【００５５】
つぎに、図４のステップＳ１０５の処理について図５を参照しつつ説明する。ここでは、ステップＳ１０３において取得したモーションプログラム番号が"Ｎｏ１"を示し、かつ図３に示すモーションプログラムの番号"Ｎｏ１"のモーションプログラムが実行されるものとする。まず、モーション制御部５の制御部６は、起動フラグがＯＦＦ状態からＯＮ状態になった回数を示す起動カウント値を初期化する（ステップＳ２０１）。この起動カウント値は、モーションプログラムの動作中においてインターフェース部８が起動信号を受信した回数すなわち連続して動作されるモーションプログラムの数を意味する。
【００５６】
つぎに、制御部６は、図３に示すモーションプログラムを以下のように解読する（ステップＳ２０２）。
ＩＮＣ−１          ＰＯＩＮＴ ＴＯ ＰＯＩＮＴの増分値指令位置決め動作
軸１，１０００．    １軸を現在位置から＋方向へ１０００ｍｍの位置に位置決め
速度  １００．      送り速度＝１００ｍｍ／ｍｉｎ
カウントＭＡＸ．１  最大起動カウント値＝１
【００５７】
ここで、最大起動カウント値は、連続して動作されるモーションプログラムの最大の数を示し、上記した起動カウント値とともに、図６に示すように、メモリ７に記憶される（ステップＳ２０３）。これにより、モーションプログラム毎に最大カウント値を設定でき、モーションプログラムの示す制御内容に応じた最適なモーションプログラムの連続動作が可能になる。
【００５８】
ステップＳ２０３の処理後、特に軸１に対応したサーボアンプ１１（詳しくは、インターフェース部１２）に対して、軸１を現在位置から＋方向へ１０００ｍｍの位置に送り速度１００ｍｍ／ｍｉｎでの位置決めを行うことを示す駆動信号を送信する（ステップＳ２０４）。サーボアンプ１１は、インターフェース部１２において駆動信号を受信すると、サーボモータ１３を受信した駆動信号の示す速度で目標位置まで回転させる。また、エンコーダ１４は、サーボモータ１３の位置を検出しており、サーボモータ１３が目標位置に達した際には、サーボモータ１３の動作完了を示す動作完了信号を、サーボアンプ１１のインターフェース部１２を介してモーション制御部５に向けて送信する。モーション制御部５の制御部６は、この動作完了信号を受信したかを判定することで、サーボモータ１３が目標位置に達したことを確認する（ステップＳ２０５）。
【００５９】
ステップＳ２０５において、サーボモータ１３の動作完了を検出した場合は、起動カウント値が０を示すかを判定する（ステップＳ２０６）。ステップＳ２０６において、起動カウント値が０を示す場合は、前述した動作フラグをＯＦＦ状態に変更し（ステップＳ２０７）、図５のフローチャートに示す処理すなわちモーションプログラムの処理を終了する。
【００６０】
ステップＳ２０６において、起動カウント値が０を示さない場合、すなわちモーションプログラムの動作中においてインターフェース部８が起動信号を受信していた場合は、起動カウント値に１だけ減算した結果を改めて起動カウント値としてメモリ７に書き込む。すなわち、ここで起動カウント値のデクリメント処理を行う（ステップＳ２１２）。
【００６１】
続いて、インターフェース部８に受信されて記憶されている最古のプログラム番号信号からプログラム番号を取得し、そのプログラム番号の示すモーションプログラムをモーションプログラム部９から指定する（ステップＳ２１３）。そして、ステップＳ２０２に処理を戻し、指定されたモーションプログラムの実行を開始する。
【００６２】
ステップＳ２０５において、サーボモータ１３の動作完了を検出しない場合、すなわちモーションプログラムが動作中である場合は、起動フラグの状態がＯＮ状態であるかを判定する（ステップＳ２０８）。ステップＳ２０８において、起動フラグの状態がＯＮ状態を示す場合は、起動カウント値が最大起動カウント値以上の値を示すかを判定する（ステップＳ２０９）。この判定により、多数のモーションプログラムの長時間による連続的な動作を防止し、さらには、モーションプログラムの起動信号等を記憶するための記憶容量を無駄に使用することを防ぐことができる。
【００６３】
ステップＳ２０９において、起動カウント値が最大起動カウント値以上の値を示さない場合は、起動カウント値に１だけ加算した結果を改めて起動カウント値としてメモリ７に書き込む。すなわち、ここで起動カウント値のインクリメント処理を行う（ステップＳ２１０）。そして、起動フラグをＯＦＦ状態に変更する（ステップＳ２１１）。
【００６４】
ステップＳ２１１の処理後、ステップＳ２０８において起動フラグの状態がＯＮ状態を示さない場合、およびステップＳ２０９において起動カウント値が最大起動カウント値以上の値を示す場合は、モーションプログラムが動作中であることを示し、ステップＳ２０５における動作完了確認を繰り返す。
【００６５】
以上に説明したように、実施の形態１に係る位置決め制御装置によれば、シーケンスプログラムの示す運転条件の成立とともに、指定したモーションプログラムを実行し、そのモーションプログラムの動作中において新たなシーケンスプログラムの起動信号を受信した場合には、その受信回数を示す起動カウント値を加算していくので、モーションプログラムの完了後に起動カウント値を調べることにより、つぎに実行すべきモーションプログラムを迅速に間断無く動作させることができ、複数の連続的に実行されるモーションプログラムに基づいた円滑なサーボモータの位置決めが可能となる。
【００６６】
実施の形態２．
図７は、実施の形態２に係る位置決め制御装置の概略構成を示したブロック図である。図７において、実施の形態２に係る位置決め制御装置は、制御対象機器となるサーボモータ１３と、サーボモータ１３の位置および速度を検出するエンコーダ１４と、サーボモータ１３を駆動させるサーボアンプ１１と、サーボモータ１３を駆動させるための駆動信号をサーボアンプ１１に送信するモーション制御部５と、シーケンスプログラムに基づいてモーション制御部５に制御信号を送信するシーケンス制御部１と、ユーザによって入力可能な信号入力部２１と、から構成される。
【００６７】
また、シーケンス制御部１は、図２に示すようなシーケンスプログラムを格納するシーケンスプログラム部３と、シーケンスプログラム部３に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部２と、信号入力部２１から入力される信号を受信して再起動信号を識別するインターフェース部２０と、制御部２において生成された起動信号等とインターフェース部２０において受信された再起動信号とをモーション制御部５に送信するインターフェース部４と、から構成される。
【００６８】
また、モーション制御部５は、シーケンス制御部１（詳しくはインターフェース部４）から送信される起動信号等と再起動信号とを受信するインターフェース部８と、図８に示すようなモーションプログラムを格納するモーションプログラム部９と、インターフェース部８において受信した起動信号等とモーションプログラム部９に格納されたモーションプログラムとに基づいて駆動信号を生成する制御部６と、制御部６において利用されるデータを記憶するメモリ７と、制御部６において生成された駆動信号をサーボアンプ１１に送信するインターフェース部１０と、から構成される。なお、図８のモーションプログラムは、ユーザにより周辺機器であるキーボード等（図示せず）を介して入力設定されるプログラムの一例である。
【００６９】
また、サーボアンプ１１は、モーション制御部５（詳しくはインターフェース部１０）から送信される駆動信号を受信するインターフェース部１２を備え、インターフェース部１２において受信した駆動信号と、エンコーダ１４において検出された位置信号および速度信号と、からサーボモータ１３を駆動する。
【００７０】
つぎに、この位置決め制御装置の動作を説明する。まず、シーケンス制御部１において、制御部２は、シーケンスプログラムの格納されているシーケンスプログラム部３から図２に示すシーケンスプログラムを読み出す。ここで、制御部２は、読み出したシーケンスプログラムに示される運転条件が成立したかを判定し、運転条件が成立すると、実行すべきモーションプログラムの番号（ここでは、"Ｎｏ１"）を示すプログラム番号信号とモーションプログラムの起動を促す起動信号とを生成して、それら信号をインターフェース部４に送信する。インターフェース部４は、制御部２から送信されるプログラム番号信号と起動信号とを受信し、それら信号をモーション制御部５（詳しくはインターフェース部８）に送信する。
【００７１】
続くモーション制御部５における動作を図４および図９に示すフローチャートを参照しつつ説明する。図４に示すフローチャートは、実施の形態１において説明したためにここでは省略する。よって、図４のステップＳ１０５の処理すなわちモーションプログラムの処理について説明する。
【００７２】
ここでは、ステップＳ１０５において取得したモーションプログラム番号が"Ｎｏ１"を示し、かつ図８に示すモーションプログラムの番号"Ｎｏ１"のモーションプログラムが実行されるものとする。図９において、まず、モーション制御部５の制御部６は、信号入力部２１からの再起動信号の有無を示す再起動信号情報を初期化する（ステップＳ３０１）。この再起動信号情報は、信号入力部２１から再起動信号が発せられた際に、インターフェース部２０、インターフェース部４およびインターフェース部８を介して、図１０に示すようにメモリ７に記憶されるデータである。
【００７３】
つぎに、制御部６は、図８に示すモーションプログラムを以下のように解読する（ステップＳ３０２）。
ＩＮＣ−１          ＰＯＩＮＴ ＴＯ ＰＯＩＮＴの増分値指令位置決め動作
軸１，１０００．    １軸を現在位置から＋方向へ１０００ｍｍの位置に位置決め
速度  １００．      送り速度＝１００ｍｍ／ｍｉｎ
再起動信号  Ｘ１    再起動信号として認識する信号＝Ｘ１
【００７４】
ここで、再起動信号Ｘ１は、インターフェース部２０が"Ｘ１"を示す信号を受信した際に、再起動信号として認識される信号であり、モーションプログラムが動作中であっても再起動信号情報をＯＮ状態に変更させることができる。
【００７５】
ステップＳ３０２の処理後、特に軸１に対応したサーボアンプ１１（詳しくは、インターフェース部１２）に対して、軸１を現在位置から＋方向へ１０００ｍｍの位置に送り速度１００ｍｍ／ｍｉｎでの位置決めを行うことを示す駆動信号を送信する（ステップＳ３０３）。サーボアンプ１１は、インターフェース部１２において駆動信号を受信すると、サーボモータ１３を受信した駆動信号の示す速度で目標位置まで回転させる。また、エンコーダ１４は、サーボモータ１３の位置を検出しており、サーボモータ１３が目標位置に達した際には、サーボモータ１３の動作完了を示す動作完了信号を、サーボアンプ１１のインターフェース部１２を介してモーション制御部５に向けて送信する。モーション制御部５の制御部６は、この動作完了信号を受信したかを判定することで、サーボモータ１３が目標位置に達したことを確認する（ステップＳ３０４）。
【００７６】
ステップＳ３０４において、サーボモータ１３の動作完了を検出した場合は、再起動信号情報がＯＮ状態を示すかを判定する（ステップＳ３０５）。ステップＳ３０５において、再起動信号情報がＯＮ状態を示さない場合、すなわち再起動信号情報がＯＦＦ状態を示す場合は、前述した動作フラグをＯＦＦ状態に変更し（ステップＳ３０６）、図９のフローチャートに示す処理すなわちモーションプログラムの処理を終了する。
【００７７】
ステップＳ３０５において、再起動信号情報がＯＮ状態を示す場合、すなわちモーションプログラムの動作中または動作完了直後に信号入力部２１から再起動信号が入力された場合は、直前に動作完了したモーションプログラムを再び動作させるようにステップＳ３０１に処理を戻す。また、ステップＳ３０４において、サーボモータ１３の動作の完了を検出しない場合は、モーションプログラムが動作中であることを示し、ステップＳ３０４における動作完了確認を繰り返す。
【００７８】
以上に説明したように、実施の形態２に係る位置決め制御装置によれば、シーケンスプログラムの示す運転条件の成立とともに、指定したモーションプログラムを実行し、そのモーションプログラムの動作中において、信号入力部より再起動信号が発せられた場合は、動作中のモーションプログラムの終了後に、再び同じモーションプログラムを動作させることができるので、サーボモータに同じ動作を繰り返し行わせるのに、その回数分のシーケンスプログラムを用意することなく、信号入力部からの簡単な入力のみによって同じモーションプログラムを迅速に間断無く繰り返して動作させることができ、所望のスムーズなサーボモータの位置決めが可能となる。
【００７９】
また、モーション制御部５は、モーションプログラムの動作中であっても、再起動信号を受信して再起動信号情報をＯＮ状態に変更することが可能であるので、モーションプログラムの動作の完了を待たずに連続的な効率の良いモーションプログラムの再起動動作を実行することができ、さらに、モーションプログラムの動作の完了後に、再起動信号を受信して再起動信号情報をＯＮ状態に変更することもできるので、その場合は、所望のタイミングによってモーションプログラムの再起動動作が実行可能である。
【００８０】
実施の形態３．
図１１は、実施の形態３に係る位置決め制御装置を示したブロック図である。図１１において、この位置決め制御装置は、制御対象機器となるサーボモータ１３と、サーボモータ１３の位置および速度を検出するエンコーダ１４と、コンベア等の駆動軸（図示せず）に取り付けて速度を検出するエンコーダ２３と、サーボモータ１３を駆動させるサーボアンプ１１と、サーボアンプ１１にサーボモータ１３を駆動させるための駆動信号を送信するモーション制御部５と、予め定められたシーケンスプログラムに基づいてモーション制御部５に制御信号を送信するシーケンス制御部１と、から構成される。
【００８１】
また、シーケンス制御部１は、図２に示すようなシーケンスプログラムを格納するシーケンスプログラム部３と、そのシーケンスプログラム部３に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部２と、制御部２において生成された起動信号等をモーション制御部５に送信するインターフェース部４と、から構成される。
【００８２】
また、モーション制御部５は、シーケンス制御部１（詳しくはインターフェース部４）から送信される起動信号等を受信するインターフェース部８と、図１２に示すようなモーションプログラムを格納するモーションプログラム部９と、インターフェース部８において受信した起動信号およびモーションプログラム部９に格納されたモーションプログラムに基づいて駆動信号を生成する制御部６と、制御部６において生成された駆動信号をサーボアンプ１１に送信するインターフェース部１０と、エンコーダ２３によって検出された速度に基づくパルス数を入力するインターフェース部２４と、インターフェース部２４において受信したパルス数等を記憶するメモリ７と、から構成される。なお、図１２のモーションプログラムは、ユーザにより周辺機器であるキーボード等を介して入力設定されるプログラムの一例である。
【００８３】
また、サーボアンプ１１は、モーション制御部５（詳しくはインターフェース部１０）から送信される駆動信号を受信するインターフェース部１２を備え、インターフェース部１２において受信した駆動信号と、エンコーダ１４において検出された位置信号および速度信号と、からサーボモータ１３を駆動する。
【００８４】
つぎに、この位置決め制御装置の動作を説明する。まず、シーケンス制御部１において、制御部２は、シーケンスプログラムの格納されているシーケンスプログラム部３から図２に示すシーケンスプログラムを読み出す。ここで、制御部２は、読み出したシーケンスプログラムにおける運転条件が成立したかを判定し、運転条件が成立すると、実行すべきモーションプログラムの番号（ここでは、"Ｎｏ１"）を示すプログラム番号信号と起動信号とを生成して、それら信号をインターフェース部４に送信する。インターフェース部４は、制御部２から送信されるプログラム番号信号と起動信号とを受信し、それら信号をモーション制御部５（詳しくはインターフェース部８）に送信する。
【００８５】
続くモーション制御部５における動作は、上述した図４および図５のフローチャートに示す処理と同様であるので、この部分の説明を省略する。ここでは、図１２に示すモーションプログラムに基づく具体的な処理について図１３を参照しつつ説明する。なお、図５のステップＳ２０２において、モーション制御部５の制御部６は、図１２に示すモーションプログラムを以下のように解読する。
ＩＮＣ−１          ＰＯＩＮＴ ＴＯ ＰＯＩＮＴの増分値指令位置決め動作
軸１，１０００．    軸１を現在位置から＋方向へ１０００ｍｍの位置に位置決め
速度  １００．      送り速度＝１００ｍｍ／ｒｅｖ
Ｖ１  ２０００      判定速度パルスＶ１＝２０００
Ｅ１  ２０００      Ｖ１における最適変位パルス＝２０００
Ｖ２  ３００        判定速度パルスＶ２＝３００
Ｅ２  ６０００      Ｖ２における最適変位パルス＝６０００
【００８６】
なお、図１２に示すモーションプログラムにおいて、Ｖ１、Ｅ１、Ｖ２、Ｅ２は、図１４に示すようにメモリ７に記憶される。このように、これらの値を使用することにより算出する判定カウント値（後述する）が、モーションプログラムにおいて指定されるので、モーションプログラム毎に判定カウント値を設定でき、モーションプログラムの示す制御内容に応じた制御対象機器の最適な同期動作が可能になる。
【００８７】
制御部６は、図１２に示すモーションプログラムに基づいて、特に軸１に対応したサーボアンプ１１（詳しくは、インターフェース部１２）に対して、軸１を現在位置から＋方向へ１０００ｍｍの位置に送り速度１００ｍｍ／ｒｅｖでの位置決めを行うことを示す駆動信号を送信する。サーボアンプ１１は、インターフェース部１２において駆動信号を受信すると、サーボモータ１３を受信した駆動信号の示す速度で目標位置まで回転させる。
【００８８】
この回転動作が実行されている間に、モーション制御部５の制御部６は、エンコーダ２３において、ある一定時間に検出されたパルス数（以下、エンコーダ検出値と称する）をインターフェース部２４から読み込む（ステップＳ４０１）。このエンコーダ検出値は、コンベア等の駆動軸（以下、コンベア駆動軸と称する）の回転速度を表す。なお、このエンコーダ検出値を検出するためにパルス数を計測した時間（上記した一定時間）は、例えば数ミリ秒といった十分短い時間である。
【００８９】
つぎに、読み込んだエンコーダ検出値を、図１４に示すように、メモリ７に今回値として書き込む（ステップＳ４０２）。すなわち、今回値は、最新のエンコーダ検出値を示す。そして、今回値と前回に読み込まれたエンコーダ検出値（前回値）とを以下の式により減算することでΔＰを算出する（ステップＳ４０３）。
ΔＰ＝今回値−前回値
【００９０】
ここで、ΔＰは、検出された２つの回転速度（この場合、前回値と今回値）間の変化量すなわち加速量を示しており、今回値と同様にメモリ７に書き込まれる。ステップＳ４０３の処理後は、次回処理のために、今回値の示す値を前回値として設定する（ステップＳ４０４）。
【００９１】
つぎに、あるタイミングから現在において、コンベア駆動軸の加減速増減分に相当するパルス数の累積値を示す変位カウント値を求める（ステップＳ４０５）。すなわち、変位カウント値は、ステップＳ４０３において算出したΔＰの累積値を示し、前回の変位カウント値にΔＰを加算していくことで算出される。
【００９２】
そして、ステップＳ４０２において設定された今回値を、ステップＳ４０１においてパルス数を計測した一定時間（計測時間）で除算することで、以下の式に示すように、コンベア駆動軸の現在の回転速度Ｖを算出する（ステップＳ４０６）。
Ｖ＝今回値／演算周期
【００９３】
続いて、ステップＳ４０６において算出されたＶと、メモリ７に記憶されたＶ１、Ｅ１、Ｖ２、Ｅ２と、を用いて、以下の式に示すように、判定カウント値を算出する。
判定カウント値＝（Ｖ−Ｖ１）×( Ｅ２−Ｅ１）／（Ｖ２−Ｖ１）＋Ｅ１
【００９４】
ここで、判定カウント値は、コンベア駆動軸の現在の回転速度Ｖ毎に定まる値であり、この判定カウント値に依存して、サーボモータ１３に送り速度の増減を示す駆動信号を送信するタイミングが決定する。
【００９５】
続いて、ステップＳ４０５において算出された変位カウント値が、ステップＳ４０７において算出された判定カウント値より大きな値を示すかを判定する（ステップＳ４０８）。ステップＳ４０８において、変位カウント値が、判定カウント値より大きな値を示さない場合は、サーボモータ１３の同期動作のための駆動信号を送信せずに、このフローチャートの処理を終了する。
【００９６】
ステップＳ４０８において、変位カウント値が、判定カウント値より大きな値を示す場合は、ステップＳ４０３において算出されたΔＰと、予め定められた基準となる１回転パルス数（メモリ７に書き込まれている）と、モーションプログラムにおいて設定された送り速度Ｆ（ここでは、１００ｍｍ／ｒｅｖ）と、を用いた以下の式により、ΔＬを算出する（ステップＳ４０９）。
ΔＬ＝Ｆ×ΔＰ／１回転パルス数
【００９７】
ここで、ΔＰ／１回転パルス数は、一定時間当りのコンベア駆動軸の回転数の増減を示しており、これにサーボモータ１３に設定された送り速度Ｆを乗算することで、エンコーダ２３において検出されるコンベア駆動軸の回転速度に追従するための回転速度増減分ΔＬが得られる。
【００９８】
つぎに、ステップＳ４０９において算出したΔＬの示す信号をサーボアンプ指令値としてインターフェース部１０に送信する。インターフェース部１０は、受信したΔＬ信号をサーボアンプ１１（詳しくはインターフェース部１２）に送信し（ステップＳ４１０）、サーボアンプ１１は、このΔＬ信号に基づいて増減させた送り速度でサーボモータ１３を駆動させる。これにより、コンベア駆動軸等の異なる駆動系の動作速度と同期したサーボモータ１３の回転駆動が達成される。
【００９９】
ステップＳ４１０の処理後は、次回の駆動信号送信の判定（ステップＳ４０８の処理に相当）のために、変位カウント値を初期化して（ステップＳ４１１）、このフローチャートの処理を終了する。
【０１００】
以上に説明したように、実施の形態３に係る位置決め制御装置によれば、シーケンスプログラムの示す運転条件の成立とともに実行されるモーションプログラムに基づいたサーボモータの動作において、コンベア等の駆動軸の速度に応じた判定カウント値を定め、この判定カウント値とコンベア等の駆動軸の回転速度に相当するパルスの増減累積値とを比較することにより、サーボモータの送り速度を、その際のコンベア等の駆動軸の回転速度から算出されるサーボアンプ指令値に基づいて変化させることでサーボモータの同期動作を達成している。
【０１０１】
特に、実施の形態３に係る位置決め制御装置においては、コンベア等の駆動軸の変位量に相当する変位カウント値に依存して、サーボモータへの速度指令を行っているので、例えば、コンベア等の駆動軸の回転速度が急激に増加した場合には、より短周期でサーボモータの速度追従動作が行われるといった、コンベア等の駆動軸の回転速度の変化によって生じる同期ずれのバラツキが防止される。
【図面の簡単な説明】
【０１０２】
【図１】実施の形態１に係る位置決め制御装置の概略構成を示すブロック図である。
【図２】実施の形態１に係る位置決め制御装置におけるシーケンスプログラムの例を示した図である。
【図３】実施の形態１に係る位置決め制御装置におけるモーションプログラムの例を示した図である。
【図４】実施の形態１に係る位置決め制御装置の動作を示すフローチャートである。
【図５】実施の形態１に係る位置決め制御装置の動作を示すフローチャートである。
【図６】実施の形態１に係る位置決め制御装置においてメモリに格納される値を説明する図である。
【図７】実施の形態２に係る位置決め制御装置の概略構成を示すブロック図である。
【図８】実施の形態２に係る位置決め制御装置におけるモーションプログラムの例を示した図である。
【図９】実施の形態２に係る位置決め制御装置の動作を示すフローチャートである。
【図１０】実施の形態２に係る位置決め制御装置においてメモリに格納される値を説明する図である。
【図１１】実施の形態３に係る位置決め制御装置の概略構成を示すブロック図である。
【図１２】実施の形態３に係る位置決め制御装置におけるモーションプログラムの例を示した図である。
【図１３】実施の形態３に係る位置決め制御装置の動作を示すフローチャートである。
【図１４】実施の形態３に係る位置決め制御装置においてメモリに格納される値を説明する図である。
【図１５】従来の位置決め制御装置における概略構成を示すブロック図である。
【図１６】従来の位置決め制御装置におけるシーケンスプログラムの例を示した図である。
【図１７】従来の位置決め制御装置におけるモーションプログラムの例を示した図である。
【図１８】従来の位置決め制御装置の動作を示すフローチャートである。
【図１９】従来の位置決め制御装置の動作を示すフローチャートである。
【図２０】従来の位置決め制御装置の他の例における概略構成を示したブロック図である。
【図２１】従来の位置決め制御装置の他の例におけるモーションプログラムの例を示した図である。
【図２２】従来の位置決め制御装置の他の例の動作を示すフローチャートである。
【図２３】従来の位置決め制御装置の他の例においてメモリに格納される値を説明する図である。
【符号の説明】
【０１０３】
１  シーケンス制御部、
２，６  制御部、
３  シーケンスプログラム部、
４，８，１２，２０，２４  インターフェース部、
５  モーション制御部、
７  メモリ、
９  モーションプログラム部、
１１  サーボアンプ、
１３  サーボモータ、
１４，２３  エンコーダ、
２１  信号入力部。
【図１】
2004265441.tif 000003
【図２】
2004265441.tif 000004
【図３】
2004265441.tif 000005
【図４】
2004265441.tif 000006
【図５】
2004265441.tif 000007
【図６】
2004265441.tif 000008
【図７】
2004265441.tif 000009
【図８】
2004265441.tif 000010
【図９】
2004265441.tif 000011
【図１０】
2004265441.tif 000012
【図１１】
2004265441.tif 000013
【図１２】
2004265441.tif 000014
【図１３】
2004265441.tif 000015
【図１４】
2004265441.tif 000016
【図１５】
2004265441.tif 000017
【図１６】
2004265441.tif 000018
【図１７】
2004265441.tif 000019
【図１８】
2004265441.tif 000020
【図１９】
2004265441.tif 000021
【図２０】
2004265441.tif 000022
【図２１】
2004265441.tif 000023
【図２２】
2004265441.tif 000024
【図２３】
2004265441.tif 000025