JP4219298B2 - Positioning control device - Google Patents
Positioning control device Download PDFInfo
- Publication number
- JP4219298B2 JP4219298B2 JP2004133049A JP2004133049A JP4219298B2 JP 4219298 B2 JP4219298 B2 JP 4219298B2 JP 2004133049 A JP2004133049 A JP 2004133049A JP 2004133049 A JP2004133049 A JP 2004133049A JP 4219298 B2 JP4219298 B2 JP 4219298B2
- Authority
- JP
- Japan
- Prior art keywords
- motion
- program
- control unit
- speed
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Numerical Control (AREA)
- Control Of Position Or Direction (AREA)
Description
この発明は、サーボモータを目標位置に位置決めさせる位置決め制御装置に関する。 The present invention relates to a positioning control device that positions a servo motor at a target position.
図15は、従来の位置決め制御装置の一例を示したブロック図である。図15において、従来の位置決め制御装置は、制御対象機器となるサーボモータ13と、サーボモータ13の位置および速度を検出するエンコーダ14と、サーボモータ13を駆動させるサーボアンプ11と、サーボアンプ11にサーボモータ13を駆動させるための駆動信号を送信するモーション制御部5と、予め定められたシーケンスプログラムに基づいてモーション制御部5に制御信号を送信するシーケンス制御部1と、から構成される。
FIG. 15 is a block diagram showing an example of a conventional positioning control device. In FIG. 15, a conventional positioning control device includes a
また、シーケンス制御部1は、図16に示すようなシーケンスプログラムを格納するシーケンスプログラム部3と、そのシーケンスプログラム部3に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部2と、制御部2において生成された起動信号等をモーション制御部5に送信するインターフェース部4と、から構成される。なお、図16のシーケンスプログラムは、ユーザにより周辺機器であるキーボード等を介して入力設定されるプログラムの一例である。
The
また、モーション制御部5は、シーケンス制御部1(詳しくはインターフェース部4)から送信される起動信号等を受信するインターフェース部8と、図17に示すようなモーションプログラム(ここでは、サーボモータを駆動する際に工作機械等で一般に使用されるGコードとして示されている)を格納するモーションプログラム部9と、インターフェース部8において受信した起動信号およびモーションプログラム部9に格納されたモーションプログラムに基づいて駆動信号を生成する制御部6と、制御部6において生成された駆動信号をサーボアンプ11に送信するインターフェース部10と、から構成される。なお、図17のモーションプログラムは、ユーザにより周辺機器であるキーボード等を介して入力設定されるプログラムの一例である。
The
また、サーボアンプ11は、モーション制御部5(詳しくはインターフェース部10)から送信される駆動信号を受信するインターフェース部12を備え、インターフェース部12において受信した駆動信号と、エンコーダ14において検出された位置信号および速度信号と、からサーボモータ13を駆動する。
The
つぎに、この従来の位置決め制御装置の動作を説明する。まず、シーケンス制御部1において、制御部2は、シーケンスプログラムの格納されているシーケンスプログラム部3から図16に示すシーケンスプログラムを読み出す。ここで、制御部2は、読み出したシーケンスプログラムにおける運転条件が成立したかを判定し、運転条件が成立すると、実行すべきモーションプログラムの番号(ここでは、"No1")を示すプログラム番号信号と起動信号とを生成して、それら信号をインターフェース部4に送信する。インターフェース部4は、制御部2から送信されるプログラム番号信号と起動信号とを受信し、それら信号をモーション制御部5(詳しくはインターフェース部8)に送信する。
Next, the operation of this conventional positioning control device will be described. First, in the
続くモーション制御部5における動作を図18および図19に示すフローチャートを参照しつつ説明する。まず、図18において、モーション制御部5の制御部6が、インターフェース部8において起動信号が受信されたかを判定する。特にインターフェース部8においては、起動信号のON/OFF状態を示す起動フラグが用意され、起動信号が受信された際にこの起動フラグをON状態にする。制御部6は、この起動フラグの状態がON状態であるかを判定する(ステップS1001)。ステップS1001において、起動フラグがON状態でないならば、図18のフローチャートにおける処理を終了する。
The subsequent operation in the
ステップS1001において、起動フラグがON状態であるならば、モーション制御部5において実行される処理(この場合、前回のシーケンスプログラムの指令に基づく処理)の動作状態を示す動作フラグがON状態を示しているかを判定する(ステップS1002)。ステップS1002において、動作フラグがON状態を示していない場合は、すなわち動作フラグがOFF状態を示している場合は、インターフェース部8において受信されたプログラム番号信号の示すプログラム番号を読み込み、そのプログラム番号の示すモーションプログラムをモーションプログラム部9から選択する(ステップS1003)。また、起動フラグをOFF状態におよび動作フラグをON状態に変更する(ステップS1004)。そして、ステップS1003において選択されたモーションプログラムに基づく処理(後述する)を行い(ステップS1005)、図18のフローチャートにおける処理を終了する。
If the start flag is in the ON state in step S1001, the operation flag indicating the operation state of the process executed in the motion control unit 5 (in this case, the process based on the previous sequence program command) indicates the ON state. (Step S1002). In step S1002, when the operation flag does not indicate the ON state, that is, when the operation flag indicates the OFF state, the program number indicated by the program number signal received by the
ステップS1002において、動作フラグがON状態を示す場合は、エラー処理(ステップS1006)を行い、図18のフローチャートにおける処理を終了する。 If the operation flag indicates ON in step S1002, an error process (step S1006) is performed, and the process in the flowchart of FIG. 18 ends.
つぎに、図18のステップS1005の処理について図19を参照しつつ説明する。ここでは、ステップS1003において読み込まれたモーションプログラム番号が"No1"を示し、図17に示すモーションプログラムの番号"No1"のモーションプログラムが実行されるものとする。まず、モーション制御部5の制御部6は、図17に示すモーションプログラムを以下のように解読する(ステップS1007)。
G01 POINT TO POINTの位置決め動作
X100. X軸を目標位置=100mmに位置決め
F1000. 送り速度=1000mm/min
Next, the processing in step S1005 in FIG. 18 will be described with reference to FIG. Here, it is assumed that the motion program number read in step S1003 indicates “No1”, and the motion program number “No1” shown in FIG. 17 is executed. First, the
Positioning operation of G01 POINT TO POINT X100. Position X-axis at target position = 100 mm F1000. Feed rate = 1000mm / min
制御部6によるモーションプログラムの解読後、特にX軸に対応したサーボアンプ11(詳しくは、インターフェース部12)に対して、目標位置=100mmに送り速度1000mm/minで位置決めを行う位置指令を示す駆動信号を送信する(ステップS1008)。サーボアンプ11は、インターフェース部12において駆動信号を受信すると、サーボモータ13を受信した駆動信号の示す速度で目標位置まで回転させる。また、エンコーダ14は、サーボモータ13の位置を検出しており、サーボモータ13が目標位置に達した際には、サーボモータ13の動作完了を示す動作完了信号を、サーボアンプ11のインターフェース部12を介してモーション制御部5に向けて送信する。モーション制御部5の制御部6は、この動作完了信号を受信したかを判定することで、サーボモータ13が目標位置に達したことを確認する(ステップS1009)。
After the decoding of the motion program by the
ステップS1009において、サーボモータ13の動作の完了を検出した場合は、前述した動作フラグをOFF状態に変更し(ステップS1010)、図19のフローチャートにおける処理すなわちモーションプログラムの処理を終了する。また、ステップS1009において、サーボモータ13の動作の完了を検出しない場合は、モーションプログラムが動作中であることを示し、ステップS1009における動作完了確認を繰り返す。
If the completion of the operation of the
以上に説明したように、この従来の位置決め制御装置によれば、シーケンスプログラムの示す運転条件の成立とともに、指定したモーションプログラムが実行され、そのモーションプログラムに基づいて、サーボモータの位置決めを達成している。 As described above, according to this conventional positioning control device, the specified motion program is executed along with the establishment of the operation condition indicated by the sequence program, and the servo motor is positioned based on the motion program. Yes.
図20は、従来の位置決め制御装置の他の例を示したブロック図である。図20において、従来の位置決め制御装置は、制御対象機器となるサーボモータ13と、サーボモータ13の位置および速度を検出するエンコーダ14と、コンベア等の駆動軸(図示せず)に取り付けて速度を検出するエンコーダ23と、サーボモータ13を駆動させるサーボアンプ11と、サーボアンプ11にサーボモータ13を駆動させるための駆動信号を送信するモーション制御部5と、予め定められたシーケンスプログラムに基づいてモーション制御部5に制御信号を送信するシーケンス制御部1と、から構成される。
FIG. 20 is a block diagram showing another example of a conventional positioning control device. In FIG. 20, a conventional positioning control device is attached to a
また、シーケンス制御部1は、図16に示すようなシーケンスプログラムを格納するシーケンスプログラム部3と、そのシーケンスプログラム部3に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部2と、制御部2において生成された起動信号等をモーション制御部5に送信するインターフェース部4と、から構成される。
The
また、モーション制御部5は、シーケンス制御部1(詳しくはインターフェース部4)から送信される起動信号等を受信するインターフェース部8と、図21に示すようなモーションプログラム(ここでは、サーボモータを駆動する際に工作機械等で一般に使用されるGコードで示されている)を格納するモーションプログラム部9と、インターフェース部8において受信した起動信号およびモーションプログラム部9に格納されたモーションプログラムに基づいて駆動信号を生成する制御部6と、制御部6において生成された駆動信号をサーボアンプ11に送信するインターフェース部10と、エンコーダ23によって検出された速度に基づくパルス数を入力するインターフェース部24と、インターフェース部24において受信したパルス数等を記憶するメモリ7と、から構成される。なお、図21のモーションプログラムは、ユーザにより周辺機器であるキーボード等を介して入力設定されるプログラムの一例である。
In addition, the
また、サーボアンプ11は、モーション制御部5(詳しくはインターフェース部10)から送信される駆動信号を受信するインターフェース部12を備え、インターフェース部12において受信した駆動信号と、エンコーダ14において検出された位置信号および速度信号と、からサーボモータ13を駆動する。
The
つぎに、この従来の位置決め制御装置の動作を説明する。まず、シーケンス制御部1において、制御部2は、シーケンスプログラムの格納されているシーケンスプログラム部3から図16に示すシーケンスプログラムを読み出す。ここで、制御部2は、読み出したシーケンスプログラムにおける運転条件が成立したかを判定し、運転条件が成立すると、実行すべきモーションプログラムの番号(ここでは、"No1")を示すプログラム番号信号と起動信号とを生成して、それら信号をインターフェース部4に送信する。インターフェース部4は、制御部2から送信されるプログラム番号信号と起動信号とを受信し、それら信号をモーション制御部5(詳しくはインターフェース部8)に送信する。
Next, the operation of this conventional positioning control device will be described. First, in the
続くモーション制御部5における動作は、上述した図18および図19のフローチャートに示す処理と同様であるので、この部分の説明を省略する。ここでは、図21に示すモーションプログラムに基づく具体的な処理について図22を参照しつつ説明する。なお、図19のステップS1007において、モーション制御部5の制御部6は、図21に示すモーションプログラムを以下のように解読する。
G95 送り速度を主軸1回転当りに変更
X100. X軸を目標位置=100mmに位置決め
F10. 送り速度=10mm/rev
The subsequent operation in the
G95 Change feed speed per revolution of main shaft X100. Position X-axis at target position = 100 mm F10. Feed rate = 10mm / rev
制御部6は、図21に示すモーションプログラムに基づいて、X軸に対応したサーボアンプ11(詳しくは、インターフェース部12)に対し、目標位置=100mmに送り速度10mm/revで位置決めを行う位置指令を示す駆動信号を送信する。サーボアンプ11は、インターフェース部12において駆動信号を受信すると、サーボモータ13を受信した駆動信号の示す速度で目標位置まで回転させる。
Based on the motion program shown in FIG. 21, the
この回転動作が実行されている間に、モーション制御部5の制御部6は、エンコーダ23においてある一定時間において検出されたパルス数(以下、エンコーダ検出値と称する)をインターフェース部24から読み込む(ステップS1101)。このエンコーダ検出値は、コンベア等の駆動軸の回転速度を表す。つぎに、読み込んだエンコーダ検出値をメモリ7に今回値として書き込む(ステップS1102)。すなわち、今回値は、最新のエンコーダ検出値を示す。そして、今回値と前回に読み込まれたエンコーダ検出値(前回値)とを以下の式により減算することでΔPを算出する(ステップS1103)。
ΔP=今回値−前回値
While this rotation operation is being performed, the
ΔP = current value-previous value
ここで、ΔPは、検出された2つの回転速度(この場合、前回値と今回値)間の変化量すなわち加減速量を示しており、今回値と同様にメモリ7に書き込まれる。
Here, ΔP indicates the amount of change between the two detected rotational speeds (in this case, the previous value and the current value), that is, the acceleration / deceleration amount, and is written in the
続いて、ステップS1103において算出されたΔPと、予め定められた基準となる1回転パルス数(メモリ7に書き込まれている)と、モーションプログラムにおいて設定された送り速度F(ここでは、10mm/rev)と、を用いた以下の式により、ΔLを算出する(ステップS1104)。
ΔL=F×ΔP/1回転パルス数
Subsequently, ΔP calculated in step S1103, a predetermined number of rotation pulses (written in the memory 7) serving as a reference, and a feed speed F set in the motion program (here, 10 mm / rev). ) And ΔL are calculated by the following formula using (Step S1104).
ΔL = F × ΔP / number of rotation pulses
ここで、ΔP/1回転パルス数は、一定時間当りの回転数の増減を示しており、これにサーボモータ13に設定された送り速度Fを乗算することで、エンコーダ23において検出される駆動軸の回転速度に追従するための回転速度増減分ΔLが得られる。
Here, the ΔP / 1 number of rotation pulses indicates an increase / decrease in the number of rotations per fixed time, and by multiplying this by the feed speed F set in the
つぎに、ステップS1104において算出したΔLの示す信号をサーボアンプ指令値としてインターフェース部10に送信する。インターフェース部10は、受信したΔL信号をサーボアンプ11(詳しくはインターフェース部12)に送信し(ステップS1105)、サーボアンプ11は、このΔL信号に基づいて増減させた送り速度でサーボモータ13を駆動させる。これにより、コンベアの駆動軸等の異なる駆動系の動作速度と同期したサーボモータ13の回転駆動が達成される。
Next, the signal indicated by ΔL calculated in step S1104 is transmitted to the
ステップS1105の処理後は、次回処理のために、今回値の示す値を前回値として設定する(ステップS1106)。なお、ΔP、今回値、前回値、モータ1回転パルス数は、図23に示すように、メモリ7に記憶される。
After the process in step S1105, the value indicated by the current value is set as the previous value for the next process (step S1106). Note that ΔP, the current value, the previous value, and the number of rotation pulses of the motor are stored in the
以上に説明したように、この従来の位置決め制御装置によれば、シーケンスプログラムの示す運転条件の成立とともに実行されるモーションプログラムに基づいたサーボモータの設定と、サーボモータの送り速度をコンベア等の駆動軸の回転速度(ここでは、パルス数)から算出されるサーボアンプ指令値に基づいて変化させることでサーボモータの同期動作、を達成している。 As described above, according to this conventional positioning control device, the setting of the servo motor based on the motion program executed along with the establishment of the operation condition indicated by the sequence program and the drive speed of the servo motor are driven by a conveyor or the like. The synchronous operation of the servo motor is achieved by changing it based on the servo amplifier command value calculated from the rotational speed of the shaft (here, the number of pulses).
しかしながら、上述した従来の位置決め制御装置の一例は、モーション制御部5において実行される処理(この場合、前回のシーケンスプログラムの指令に基づく処理)が動作中である場合には、新たなシーケンスプログラムの指令に基づく処理を起動させる起動信号を受け付けることができずにエラー処理が実行されていた。よって、新たなシーケンスプログラムの指令に基づく処理を起動されるためには、前回のシーケンスプログラムの指令に基づく処理が終了したことを知ってからあらためて新たなシーケンスプログラムの読み込みを開始しなければならず、複数のシーケンスプログラムを間断無く連続的に実行させることができなかった。 However, in the example of the conventional positioning control device described above, when a process executed in the motion control unit 5 (in this case, a process based on a command of the previous sequence program) is in operation, a new sequence program Error processing was executed without receiving a start signal for starting processing based on the command. Therefore, in order to start processing based on a new sequence program command, it is necessary to start reading a new sequence program again after knowing that processing based on the previous sequence program command has ended. A plurality of sequence programs could not be executed continuously without interruption.
また、これにより、シーケンスプログラムの指令に基づく処理を起動させるための起動フラグが常時ON状態を示す場合には、新たなシーケンスプログラムの指令に基づく処理を実行することができなかった。 As a result, when the activation flag for activating the process based on the command of the sequence program always indicates the ON state, the process based on the command of the new sequence program cannot be executed.
また、上述した従来の位置決め制御装置の他の例は、コンベア等の駆動軸の回転速度を検出するのに一定時間を必要とするため、例えば急激な回転速度の増加がコンベア等の駆動軸に生じた場合には、その一定時間後における駆動軸の回転位置もまた大きく変位してしまう。サーボモータは、この大きな変位が生じた後に初めて速度の追従を行うので、この変位分のずれが生じてしまう。ここで、このサーボモータの同期動作のタイミングにおけるずれの量は、コンベア等の駆動軸の回転速度における変化量すなわち加減速量によって異なってしまい、これにより、ずれ量のバラツキが生じてしまうという問題があった。 In addition, another example of the above-described conventional positioning control device requires a certain time to detect the rotational speed of a drive shaft such as a conveyor. For example, a sudden increase in the rotational speed is applied to the drive shaft of a conveyor or the like. If it occurs, the rotational position of the drive shaft after a certain time will also be greatly displaced. Since the servo motor follows the speed for the first time after this large displacement has occurred, a deviation corresponding to this displacement occurs. Here, the amount of deviation at the timing of the synchronous operation of the servo motor varies depending on the amount of change in the rotational speed of the drive shaft of the conveyor or the like, that is, the amount of acceleration / deceleration, thereby causing variation in the amount of deviation. was there.
さらに、上記した速度を検出するための一定時間は、比較的大きな値に固定して設定されることで、コンベア等の駆動軸の十分な速度変化を得ているので、その一定時間を小さくして急激な速度変化の検出を即座に行うことはできなかった。 Furthermore, the fixed time for detecting the speed is set to a relatively large value so that a sufficient speed change of the drive shaft of the conveyor or the like is obtained. Therefore, it was impossible to detect a rapid speed change immediately.
この発明は、上記に鑑みてなされたものであって、モーションプログラムが動作中であっても、つぎのモーションプログラムの起動信号を受信し、また、サーボモータの同期動作における同期位置のずれ量のバラツキを防止する位置決め制御装置を得ることを目的とする。 The present invention has been made in view of the above, and even when a motion program is in operation, the start signal of the next motion program is received, and the amount of shift of the synchronization position in the synchronous operation of the servo motor is also determined. An object of the present invention is to obtain a positioning control device that prevents variations.
この発明では、制御対象機器を目標位置に位置決めさせる位置決め制御装置において、前記制御対象機器に同期動作させるための同期対象機器の駆動速度を検出する速度検出部と、前記制御対象機器を目標位置に位置決めさせるためのモーションプログラムを起動させるシーケンスプログラムを格納し、前記シーケンスプログラムにおいて指定されたモーションプログラムを起動させるための起動信号を出力するシーケンス制御部と、前記モーションプログラムを格納するモーションプログラム部と、前記モーションプログラムにおいて利用するデータを記憶するデータ記憶部と、前記起動信号を受信して前記起動信号の示すモーションプログラムおよび前記データ記憶部のデータに基づいて目標速度を含む位置決め指令を順次作成し出力する第1の制御部と、前記速度検出部において検出される駆動速度に基づくタイミングで前記同期対象機器の駆動速度に同期させるための駆動指令を出力する第2の制御部とを有するモーション制御部と、前記位置決め指令に従って前記制御対象機器を制御するサーボアンプであって、前記駆動指令が入力されたときには、該駆動指令に基づき前記位置決め指令の目標速度を増減させ、当該目標速度を増減させた位置決め指令に従って前記制御対象機器を制御するサーボアンプと、を備え、同期対象機器の駆動速度に同期させて制御対象機器を位置決めさせることを特徴とする。 According to the present invention, in the positioning control device that positions the control target device at the target position, a speed detection unit that detects a driving speed of the synchronization target device for causing the control target device to synchronize, and the control target device at the target position. A sequence control unit that stores a sequence program for starting a motion program for positioning and outputs a start signal for starting a motion program specified in the sequence program, a motion program unit for storing the motion program, A data storage unit for storing data used in the motion program, and a positioning command including a target speed based on the motion program indicated by the activation signal and the data in the data storage unit upon receipt of the activation signal and output You A first control unit, and a motion control unit and a second control unit for outputting a drive command for synchronizing the driving speed of the synchronized device at a timing based on the driving speed detected in the speed detecting unit , a servo amplifier for controlling the control target device according to the positioning command, when the driving instruction is input, to increase or decrease the target speed of the positioning command on the basis of the drive command, increase or decrease the target speed And a servo amplifier for controlling the device to be controlled in accordance with the positioning command , and positioning the device to be controlled in synchronization with the drive speed of the device to be synchronized .
この発明によれば、シーケンス制御部が、実行されるシーケンスプログラム内で指定されるモーションプログラムの起動信号をモーション制御部に出力し、モーション制御部がその起動信号を受信して指定されたモーションプログラムを実行することができ、かつ、モーション制御部は、制御対象機器を、同期対象機器と同期して動作させるために、前記駆動速度に応じた駆動指令を、速度検出部から検出される同期対象機器の駆動速度に基づくタイミングでサーボアンプに出力するので、同期対象機器の駆動速度の変化に応じて同期動作開始時において生じる同期対象機器の位置のバラツキを解消することができ、制御対象機器の正確な同期動作が達成される。 According to the present invention, the sequence control unit outputs a motion program start signal specified in the sequence program to be executed to the motion control unit, and the motion control unit receives the start signal to specify the motion program. And the motion control unit can synchronize the drive command corresponding to the drive speed detected by the speed detection unit in order to operate the control target device in synchronization with the synchronization target device. Since it is output to the servo amplifier at a timing based on the drive speed of the device, it is possible to eliminate the variation in the position of the synchronization target device that occurs when the synchronization operation starts according to the change in the drive speed of the synchronization target device. Accurate synchronous operation is achieved.
つぎの発明では、前記データ記憶部のデータとして、前記駆動指令を出力するタイミングを判定するための判定カウント値を計算するために用いる定数値を記憶し、前記モーション制御部の第2の制御部は、前記速度検出部において検出される駆動速度と前記定数値を用いて判定カウント値を計算し、前記速度検出部において検出される駆動速度から前記同期対象機器の加減速量を算出し、さらに当該加減速量を所定の期間の間累積した変位カウント値を算出して、前記変位カウント値が前記判定カウント値を超えた時点に、前記駆動指令を出力することを特徴とする。 In the next invention, the data before Symbol data storage unit stores the constant value used to calculate the determination count value for determining the timing of outputting the drive command, the second control of the motion control unit The unit calculates a determination count value using the driving speed detected by the speed detection unit and the constant value, calculates an acceleration / deceleration amount of the synchronization target device from the driving speed detected by the speed detection unit, Further, a displacement count value obtained by accumulating the acceleration / deceleration amount for a predetermined period is calculated, and the drive command is output when the displacement count value exceeds the determination count value.
この発明によれば、モーション制御部において、駆動指令を出力するタイミングを、前記速度検出部において検出される駆動速度から前記同期対象機器の加減速量を累積することで算出されるカウント値がデータ記憶部に記憶された判定カウント値を超えた時点としているので、同期対象機器の駆動速度の変化に応じて同期動作開始時において生じる同期対象機器の位置のバラツキを解消した、より正確な制御対象機器の同期動作が達成される。 According to this invention, in the motion control unit, the count value calculated by accumulating the acceleration / deceleration amount of the synchronization target device from the driving speed detected by the speed detection unit is the data. Since it is the time when the judgment count value stored in the storage unit has been exceeded, a more accurate control target that eliminates the variation in the position of the synchronization target device that occurs when the synchronization operation starts according to the change in the drive speed of the synchronization target device A synchronized operation of the device is achieved.
つぎの発明に係る位置決め制御装置は、前記判定カウント値が、モーションプログラムにおいて示されることを特徴とする。 The positioning control device according to the next invention is characterized in that the determination count value is indicated in a motion program.
この発明によれば、判定カウント値が、モーションプログラムにおいて示されるので、モーションプログラム毎に判定カウント値を設定でき、モーションプログラムの示す制御内容に応じた制御対象機器の最適な同期動作が可能になる。 According to the present invention, since the determination count value is indicated in the motion program, the determination count value can be set for each motion program, and the optimal synchronous operation of the control target device according to the control content indicated by the motion program becomes possible. .
つぎの発明に係る位置決め制御装置は、前記モーション制御部が、前記駆動指令として、前記速度検出部において検出される駆動速度から算出される前記同期対象機器の加減速量と前記位置決め指令において示される速度とを用いて生成する速度増減信号を出力することを特徴とする。 In the positioning control device according to the next invention, the motion control unit is indicated by the acceleration / deceleration amount of the synchronization target device calculated from the driving speed detected by the speed detecting unit and the positioning command as the driving command. A speed increase / decrease signal generated using the speed is output.
この発明によれば、モーション制御部が、前記駆動指令として、前記速度検出部において検出される駆動速度から算出される前記同期対象機器の加減速量と前記位置決め指令において示される速度とを用いて算出される速度増減信号を出力するので、同期対象機器の加減速量に応じた速度によって制御対象機器を正確に同期動作させることができる。 According to this invention, the motion control unit uses, as the drive command, the acceleration / deceleration amount of the synchronization target device calculated from the drive speed detected by the speed detection unit and the speed indicated in the positioning command. Since the calculated speed increase / decrease signal is output, the control target device can be accurately synchronized with the speed corresponding to the acceleration / deceleration amount of the synchronization target device.
この発明によれば、シーケンス制御部が、実行されるシーケンスプログラム内で指定されるモーションプログラムの起動信号をモーション制御部に出力し、モーション制御部がその起動信号を受信して指定されたモーションプログラムを実行することができ、かつ、モーション制御部は、制御対象機器を、同期対象機器と同期して動作させるために、前記駆動速度に応じた駆動指令を、速度検出部から検出される同期対象機器の駆動速度に基づくタイミングでサーボアンプに出力するので、同期対象機器の駆動速度の変化に応じて同期動作開始時において生じる同期対象機器の位置のバラツキを解消することができ、制御対象機器の正確な同期動作が達成される。 According to the present invention, the sequence control unit outputs a motion program start signal specified in the sequence program to be executed to the motion control unit, and the motion control unit receives the start signal to specify the motion program. And the motion control unit can synchronize the drive command corresponding to the drive speed detected by the speed detection unit in order to operate the control target device in synchronization with the synchronization target device. Since it is output to the servo amplifier at a timing based on the drive speed of the device, it is possible to eliminate the variation in the position of the synchronization target device that occurs when the synchronization operation starts according to the change in the drive speed of the synchronization target device. Accurate synchronous operation is achieved.
つぎの発明によれば、モーション制御部において、駆動指令を出力するタイミングを、前記速度検出部において検出される駆動速度から前記同期対象機器の加減速量を累積することで算出されるカウント値が、データ記憶部に記憶された判定カウント値を超えた場合としているので、同期対象機器の駆動速度の変化に応じて同期動作開始時において生じる同期対象機器の位置のバラツキを解消したより正確な制御対象機器の同期動作が達成される。 According to the next invention, in the motion control unit, the count value calculated by accumulating the acceleration / deceleration amount of the synchronization target device from the drive speed detected by the speed detection unit is the timing at which the drive command is output. Since the determination count value stored in the data storage unit is exceeded, more accurate control that eliminates the variation in the position of the synchronization target device that occurs when the synchronization operation starts according to the change in the drive speed of the synchronization target device Synchronous operation of the target device is achieved.
つぎの発明によれば、判定カウント値が、モーションプログラムにおいて示されるので、モーションプログラム毎に判定カウント値を設定でき、モーションプログラムの示す制御内容に応じた制御対象機器の最適な同期動作が可能になる。 According to the next invention, since the determination count value is indicated in the motion program, it is possible to set the determination count value for each motion program, and it is possible to perform the optimum synchronous operation of the control target device according to the control content indicated by the motion program. Become.
つぎの発明によれば、モーション制御部が、前記駆動指令として、前記速度検出部において検出される駆動速度から算出される前記同期対象機器の加減速量と前記位置決め指令において示される速度とを用いて算出される速度増減信号を出力するので、同期対象機器の加減速量に応じた速度によって制御対象機器を正確に同期動作させることができる。 According to the next invention, the motion control unit uses, as the drive command, the acceleration / deceleration amount of the synchronization target device calculated from the drive speed detected by the speed detection unit and the speed indicated in the positioning command. Since the speed increase / decrease signal calculated in this way is output, the control target device can be accurately synchronized with the speed corresponding to the acceleration / deceleration amount of the synchronization target device.
以下に、本発明に係る位置決め制御装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。 Embodiments of a positioning control device according to the present invention will be described below in detail with reference to the drawings. In addition, this invention is not limited by this embodiment.
実施の形態1.
図1は、実施の形態1に係る位置決め制御装置の概略構成を示したブロック図である。図1において、実施の形態1に係る位置決め制御装置は、制御対象機器となるサーボモータ13と、サーボモータ13の位置および速度を検出するエンコーダ14と、サーボモータ13を駆動させるサーボアンプ11と、サーボモータ13を駆動させるための駆動信号をサーボアンプ11に送信するモーション制御部5と、シーケンスプログラムに基づいてモーション制御部5に制御信号を送信するシーケンス制御部1と、から構成される。
FIG. 1 is a block diagram showing a schematic configuration of the positioning control device according to the first embodiment. In FIG. 1, a positioning control device according to the first embodiment includes a
また、シーケンス制御部1は、図2に示すようなシーケンスプログラムを格納するシーケンスプログラム部3と、シーケンスプログラム部3に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部2と、制御部2において生成された起動信号等をモーション制御部5に送信するインターフェース部4と、から構成される。なお、図2のシーケンスプログラムは、ユーザーにより周辺機器であるキーボード等(図示せず)を介して入力設定されるプログラムの一例である。
Further, the
また、モーション制御部5は、シーケンス制御部1(詳しくはインターフェース部4)から送信される起動信号等を受信するインターフェース部8と、図3に示すようなモーションプログラムを格納するモーションプログラム部9と、インターフェース部8において受信した起動信号等とモーションプログラム部9に格納されたモーションプログラムとに基づいて駆動信号を生成する制御部6と、制御部6において利用されるデータを記憶するメモリ7と、制御部6において生成された駆動信号をサーボアンプ11に送信するインターフェース部10と、から構成される。なお、図3のモーションプログラムは、ユーザーにより周辺機器であるキーボード等(図示せず)を介して入力設定されるプログラムの一例である。
The
ここで、インターフェース部8は、シーケンス制御部1から送信される起動信号等を逐次的に記憶可能なメモリ(図示せず)を備えており、連続して送信されたシーケンスプログラムのそれぞれに対応する起動信号等を制御部6により読み込むことができる。
Here, the
また、サーボアンプ11は、モーション制御部5(詳しくはインターフェース部10)から送信される駆動信号を受信するインターフェース部12を備え、インターフェース部12において受信した駆動信号と、エンコーダ14において検出された位置信号および速度信号と、からサーボモータ13を駆動する。
The
つぎに、この位置決め制御装置の動作を説明する。まず、シーケンス制御部1において、制御部2は、シーケンスプログラムの格納されているシーケンスプログラム部3から図2に示すシーケンスプログラムを読み出す。ここで、制御部2は、読み出したシーケンスプログラムに示される運転条件が成立したかを判定し、運転条件が成立すると、実行すべきモーションプログラムの番号(ここでは、"No1")を示すプログラム番号信号とモーションプログラムの起動を促す起動信号とを生成して、それら信号をインターフェース部4に送信する。インターフェース部4は、制御部2から送信されるプログラム番号信号と起動信号とを受信し、それら信号をモーション制御部5(詳しくはインターフェース部8)に送信する。
Next, the operation of this positioning control device will be described. First, in the
続くモーション制御部5における動作を図4および図5に示すフローチャートを参照しつつ説明する。まず、図4において、モーション制御部5の制御部6が、インターフェース部8において起動信号が受信されたかを判定する。特にインターフェース部8においては、起動信号のON/OFF状態を示す起動フラグが用意され、起動信号が受信された際にこの起動フラグをON状態にする。制御部6は、この起動フラグの状態がON状態であるかを判定する(ステップS101)。ステップS101において、起動フラグがON状態でない場合は、図4のフローチャートにおける処理を終了する。
The subsequent operation in the
ステップS101において、起動フラグがON状態である場合は、モーション制御部5において実行される処理(この場合、前回のシーケンスプログラムの指令に基づく処理)の動作状態を示す動作フラグがON状態を示しているかを判定する(ステップS102)。ステップS102において、動作フラグがON状態を示していない場合は、すなわち動作フラグがOFF状態を示している場合は、インターフェース部8において受信されたプログラム番号信号からプログラム番号を取得し、そのプログラム番号の示すモーションプログラムをモーションプログラム部9から指定する(ステップS103)。また、起動フラグをOFF状態に、および動作フラグをON状態に変更する(ステップS104)。そして、ステップS103において指定されたモーションプログラムに基づく処理(後述する)を行い(ステップS105)、図4のフローチャートにおける処理を終了する。
In step S101, when the activation flag is in the ON state, the operation flag indicating the operation state of the process executed in the motion control unit 5 (in this case, the process based on the instruction of the previous sequence program) indicates the ON state. (Step S102). In step S102, when the operation flag does not indicate the ON state, that is, when the operation flag indicates the OFF state, the program number is acquired from the program number signal received by the
ステップS102において、動作フラグがON状態を示す場合は、エラー処理等を行わずに、図4のフローチャートにおける処理を終了する。 In step S102, when the operation flag indicates the ON state, the processing in the flowchart of FIG. 4 is terminated without performing error processing or the like.
つぎに、図4のステップS105の処理について図5を参照しつつ説明する。ここでは、ステップS103において取得したモーションプログラム番号が"No1"を示し、かつ図3に示すモーションプログラムの番号"No1"のモーションプログラムが実行されるものとする。まず、モーション制御部5の制御部6は、起動フラグがOFF状態からON状態になった回数を示す起動カウント値を初期化する(ステップS201)。この起動カウント値は、モーションプログラムの動作中においてインターフェース部8が起動信号を受信した回数すなわち連続して動作されるモーションプログラムの数を意味する。
Next, the process of step S105 in FIG. 4 will be described with reference to FIG. Here, it is assumed that the motion program number acquired in step S103 indicates “No1” and the motion program number “No1” shown in FIG. 3 is executed. First, the
つぎに、制御部6は、図3に示すモーションプログラムを以下のように解読する(ステップS202)。
INC−1 POINT TO POINTの増分値指令位置決め動作
軸1,1000. 1軸を現在位置から+方向へ1000mmの位置に位置決め
速度 100. 送り速度=100mm/min
カウントMAX.1 最大起動カウント値=1
Next, the
INC-1 POINT TO POINT incremental value command
Count MAX. 1 Maximum start count value = 1
ここで、最大起動カウント値は、連続して動作されるモーションプログラムの最大の数を示し、上記した起動カウント値とともに、図6に示すように、メモリ7に記憶される(ステップS203)。これにより、モーションプログラム毎に最大カウント値を設定でき、モーションプログラムの示す制御内容に応じた最適なモーションプログラムの連続動作が可能になる。
Here, the maximum activation count value indicates the maximum number of motion programs that are continuously operated, and is stored in the
ステップS203の処理後、特に軸1に対応したサーボアンプ11(詳しくは、インターフェース部12)に対して、軸1を現在位置から+方向へ1000mmの位置に送り速度100mm/minでの位置決めを行うことを示す駆動信号を送信する(ステップS204)。サーボアンプ11は、インターフェース部12において駆動信号を受信すると、サーボモータ13を受信した駆動信号の示す速度で目標位置まで回転させる。また、エンコーダ14は、サーボモータ13の位置を検出しており、サーボモータ13が目標位置に達した際には、サーボモータ13の動作完了を示す動作完了信号を、サーボアンプ11のインターフェース部12を介してモーション制御部5に向けて送信する。モーション制御部5の制御部6は、この動作完了信号を受信したかを判定することで、サーボモータ13が目標位置に達したことを確認する(ステップS205)。
After the processing in step S203, the servo amplifier 11 (specifically, the interface unit 12) corresponding to the
ステップS205において、サーボモータ13の動作完了を検出した場合は、起動カウント値が0を示すかを判定する(ステップS206)。ステップS206において、起動カウント値が0を示す場合は、前述した動作フラグをOFF状態に変更し(ステップS207)、図5のフローチャートに示す処理すなわちモーションプログラムの処理を終了する。
When the completion of the operation of the
ステップS206において、起動カウント値が0を示さない場合、すなわちモーションプログラムの動作中においてインターフェース部8が起動信号を受信していた場合は、起動カウント値に1だけ減算した結果を改めて起動カウント値としてメモリ7に書き込む。すなわち、ここで起動カウント値のデクリメント処理を行う(ステップS212)。
In step S206, if the activation count value does not indicate 0, that is, if the
続いて、インターフェース部8に受信されて記憶されている最古のプログラム番号信号からプログラム番号を取得し、そのプログラム番号の示すモーションプログラムをモーションプログラム部9から指定する(ステップS213)。そして、ステップS202に処理を戻し、指定されたモーションプログラムの実行を開始する。
Subsequently, the program number is acquired from the oldest program number signal received and stored in the
ステップS205において、サーボモータ13の動作完了を検出しない場合、すなわちモーションプログラムが動作中である場合は、起動フラグの状態がON状態であるかを判定する(ステップS208)。ステップS208において、起動フラグの状態がON状態を示す場合は、起動カウント値が最大起動カウント値以上の値を示すかを判定する(ステップS209)。この判定により、多数のモーションプログラムの長時間による連続的な動作を防止し、さらには、モーションプログラムの起動信号等を記憶するための記憶容量を無駄に使用することを防ぐことができる。
If the completion of the operation of the
ステップS209において、起動カウント値が最大起動カウント値以上の値を示さない場合は、起動カウント値に1だけ加算した結果を改めて起動カウント値としてメモリ7に書き込む。すなわち、ここで起動カウント値のインクリメント処理を行う(ステップS210)。そして、起動フラグをOFF状態に変更する(ステップS211)。
In step S209, if the activation count value does not indicate a value greater than or equal to the maximum activation count value, the result obtained by adding 1 to the activation count value is written again into the
ステップS211の処理後、ステップS208において起動フラグの状態がON状態を示さない場合、およびステップS209において起動カウント値が最大起動カウント値以上の値を示す場合は、モーションプログラムが動作中であることを示し、ステップS205における動作完了確認を繰り返す。 After the processing in step S211, if the start flag does not indicate an ON state in step S208, and if the start count value indicates a value greater than or equal to the maximum start count value in step S209, it indicates that the motion program is in operation. The operation completion confirmation in step S205 is repeated.
以上に説明したように、実施の形態1に係る位置決め制御装置によれば、シーケンスプログラムの示す運転条件の成立とともに、指定したモーションプログラムを実行し、そのモーションプログラムの動作中において新たなシーケンスプログラムの起動信号を受信した場合には、その受信回数を示す起動カウント値を加算していくので、モーションプログラムの完了後に起動カウント値を調べることにより、つぎに実行すべきモーションプログラムを迅速に間断無く動作させることができ、複数の連続的に実行されるモーションプログラムに基づいた円滑なサーボモータの位置決めが可能となる。 As described above, according to the positioning control apparatus according to the first embodiment, the specified motion program is executed along with the establishment of the operation condition indicated by the sequence program, and a new sequence program is executed during the operation of the motion program. When an activation signal is received, the activation count value indicating the number of times it is received is added, so by checking the activation count value after completion of the motion program, the motion program to be executed next can be operated quickly and without interruption. Therefore, the servo motor can be positioned smoothly based on a plurality of continuously executed motion programs.
実施の形態2.
図7は、実施の形態2に係る位置決め制御装置の概略構成を示したブロック図である。図7において、実施の形態2に係る位置決め制御装置は、制御対象機器となるサーボモータ13と、サーボモータ13の位置および速度を検出するエンコーダ14と、サーボモータ13を駆動させるサーボアンプ11と、サーボモータ13を駆動させるための駆動信号をサーボアンプ11に送信するモーション制御部5と、シーケンスプログラムに基づいてモーション制御部5に制御信号を送信するシーケンス制御部1と、ユーザによって入力可能な信号入力部21と、から構成される。
FIG. 7 is a block diagram showing a schematic configuration of the positioning control apparatus according to the second embodiment. In FIG. 7, the positioning control apparatus according to the second embodiment includes a
また、シーケンス制御部1は、図2に示すようなシーケンスプログラムを格納するシーケンスプログラム部3と、シーケンスプログラム部3に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部2と、信号入力部21から入力される信号を受信して再起動信号を識別するインターフェース部20と、制御部2において生成された起動信号等とインターフェース部20において受信された再起動信号とをモーション制御部5に送信するインターフェース部4と、から構成される。
Further, the
また、モーション制御部5は、シーケンス制御部1(詳しくはインターフェース部4)から送信される起動信号等と再起動信号とを受信するインターフェース部8と、図8に示すようなモーションプログラムを格納するモーションプログラム部9と、インターフェース部8において受信した起動信号等とモーションプログラム部9に格納されたモーションプログラムとに基づいて駆動信号を生成する制御部6と、制御部6において利用されるデータを記憶するメモリ7と、制御部6において生成された駆動信号をサーボアンプ11に送信するインターフェース部10と、から構成される。なお、図8のモーションプログラムは、ユーザにより周辺機器であるキーボード等(図示せず)を介して入力設定されるプログラムの一例である。
The
また、サーボアンプ11は、モーション制御部5(詳しくはインターフェース部10)から送信される駆動信号を受信するインターフェース部12を備え、インターフェース部12において受信した駆動信号と、エンコーダ14において検出された位置信号および速度信号と、からサーボモータ13を駆動する。
The
つぎに、この位置決め制御装置の動作を説明する。まず、シーケンス制御部1において、制御部2は、シーケンスプログラムの格納されているシーケンスプログラム部3から図2に示すシーケンスプログラムを読み出す。ここで、制御部2は、読み出したシーケンスプログラムに示される運転条件が成立したかを判定し、運転条件が成立すると、実行すべきモーションプログラムの番号(ここでは、"No1")を示すプログラム番号信号とモーションプログラムの起動を促す起動信号とを生成して、それら信号をインターフェース部4に送信する。インターフェース部4は、制御部2から送信されるプログラム番号信号と起動信号とを受信し、それら信号をモーション制御部5(詳しくはインターフェース部8)に送信する。
Next, the operation of this positioning control device will be described. First, in the
続くモーション制御部5における動作を図4および図9に示すフローチャートを参照しつつ説明する。図4に示すフローチャートは、実施の形態1において説明したためにここでは省略する。よって、図4のステップS105の処理すなわちモーションプログラムの処理について説明する。
The subsequent operation in the
ここでは、ステップS105において取得したモーションプログラム番号が"No1"を示し、かつ図8に示すモーションプログラムの番号"No1"のモーションプログラムが実行されるものとする。図9において、まず、モーション制御部5の制御部6は、信号入力部21からの再起動信号の有無を示す再起動信号情報を初期化する(ステップS301)。この再起動信号情報は、信号入力部21から再起動信号が発せられた際に、インターフェース部20、インターフェース部4およびインターフェース部8を介して、図10に示すようにメモリ7に記憶されるデータである。
Here, it is assumed that the motion program number acquired in step S105 indicates “No1” and the motion program number “No1” shown in FIG. 8 is executed. 9, first, the
つぎに、制御部6は、図8に示すモーションプログラムを以下のように解読する(ステップS302)。
INC−1 POINT TO POINTの増分値指令位置決め動作
軸1,1000. 1軸を現在位置から+方向へ1000mmの位置に位置決め
速度 100. 送り速度=100mm/min
再起動信号 X1 再起動信号として認識する信号=X1
Next, the
INC-1 POINT TO POINT incremental value command
Restart signal X1 Signal recognized as restart signal = X1
ここで、再起動信号X1は、インターフェース部20が"X1"を示す信号を受信した際に、再起動信号として認識される信号であり、モーションプログラムが動作中であっても再起動信号情報をON状態に変更させることができる。
Here, the restart signal X1 is a signal that is recognized as a restart signal when the
ステップS302の処理後、特に軸1に対応したサーボアンプ11(詳しくは、インターフェース部12)に対して、軸1を現在位置から+方向へ1000mmの位置に送り速度100mm/minでの位置決めを行うことを示す駆動信号を送信する(ステップS303)。サーボアンプ11は、インターフェース部12において駆動信号を受信すると、サーボモータ13を受信した駆動信号の示す速度で目標位置まで回転させる。また、エンコーダ14は、サーボモータ13の位置を検出しており、サーボモータ13が目標位置に達した際には、サーボモータ13の動作完了を示す動作完了信号を、サーボアンプ11のインターフェース部12を介してモーション制御部5に向けて送信する。モーション制御部5の制御部6は、この動作完了信号を受信したかを判定することで、サーボモータ13が目標位置に達したことを確認する(ステップS304)。
After the processing in step S302, the servo amplifier 11 (specifically, the interface unit 12) corresponding to the
ステップS304において、サーボモータ13の動作完了を検出した場合は、再起動信号情報がON状態を示すかを判定する(ステップS305)。ステップS305において、再起動信号情報がON状態を示さない場合、すなわち再起動信号情報がOFF状態を示す場合は、前述した動作フラグをOFF状態に変更し(ステップS306)、図9のフローチャートに示す処理すなわちモーションプログラムの処理を終了する。
If the completion of the operation of the
ステップS305において、再起動信号情報がON状態を示す場合、すなわちモーションプログラムの動作中または動作完了直後に信号入力部21から再起動信号が入力された場合は、直前に動作完了したモーションプログラムを再び動作させるようにステップS301に処理を戻す。また、ステップS304において、サーボモータ13の動作の完了を検出しない場合は、モーションプログラムが動作中であることを示し、ステップS304における動作完了確認を繰り返す。
In step S305, when the restart signal information indicates the ON state, that is, when the restart signal is input from the
以上に説明したように、実施の形態2に係る位置決め制御装置によれば、シーケンスプログラムの示す運転条件の成立とともに、指定したモーションプログラムを実行し、そのモーションプログラムの動作中において、信号入力部より再起動信号が発せられた場合は、動作中のモーションプログラムの終了後に、再び同じモーションプログラムを動作させることができるので、サーボモータに同じ動作を繰り返し行わせるのに、その回数分のシーケンスプログラムを用意することなく、信号入力部からの簡単な入力のみによって同じモーションプログラムを迅速に間断無く繰り返して動作させることができ、所望のスムーズなサーボモータの位置決めが可能となる。 As described above, according to the positioning control device according to the second embodiment, the specified motion program is executed along with the establishment of the operation condition indicated by the sequence program, and the signal input unit operates during the operation of the motion program. When a restart signal is issued, the same motion program can be operated again after the motion program being operated is completed.Therefore, the sequence program for the number of times is executed to make the servo motor repeat the same operation. Without preparation, the same motion program can be quickly and repeatedly operated without any interruption by only a simple input from the signal input unit, and a desired smooth servo motor positioning can be achieved.
また、モーション制御部5は、モーションプログラムの動作中であっても、再起動信号を受信して再起動信号情報をON状態に変更することが可能であるので、モーションプログラムの動作の完了を待たずに連続的な効率の良いモーションプログラムの再起動動作を実行することができ、さらに、モーションプログラムの動作の完了後に、再起動信号を受信して再起動信号情報をON状態に変更することもできるので、その場合は、所望のタイミングによってモーションプログラムの再起動動作が実行可能である。
In addition, the
実施の形態3.
図11は、実施の形態3に係る位置決め制御装置を示したブロック図である。図11において、この位置決め制御装置は、制御対象機器となるサーボモータ13と、サーボモータ13の位置および速度を検出するエンコーダ14と、コンベア等の駆動軸(図示せず)に取り付けて速度を検出するエンコーダ23と、サーボモータ13を駆動させるサーボアンプ11と、サーボアンプ11にサーボモータ13を駆動させるための駆動信号を送信するモーション制御部5と、予め定められたシーケンスプログラムに基づいてモーション制御部5に制御信号を送信するシーケンス制御部1と、から構成される。
FIG. 11 is a block diagram showing a positioning control device according to the third embodiment. In FIG. 11, this positioning control device detects a speed by being attached to a
また、シーケンス制御部1は、図2に示すようなシーケンスプログラムを格納するシーケンスプログラム部3と、そのシーケンスプログラム部3に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部2と、制御部2において生成された起動信号等をモーション制御部5に送信するインターフェース部4と、から構成される。
The
また、モーション制御部5は、シーケンス制御部1(詳しくはインターフェース部4)から送信される起動信号等を受信するインターフェース部8と、図12に示すようなモーションプログラムを格納するモーションプログラム部9と、インターフェース部8において受信した起動信号およびモーションプログラム部9に格納されたモーションプログラムに基づいて駆動信号を生成する制御部6と、制御部6において生成された駆動信号をサーボアンプ11に送信するインターフェース部10と、エンコーダ23によって検出された速度に基づくパルス数を入力するインターフェース部24と、インターフェース部24において受信したパルス数等を記憶するメモリ7と、から構成される。なお、図12のモーションプログラムは、ユーザにより周辺機器であるキーボード等を介して入力設定されるプログラムの一例である。
The
また、サーボアンプ11は、モーション制御部5(詳しくはインターフェース部10)から送信される駆動信号を受信するインターフェース部12を備え、インターフェース部12において受信した駆動信号と、エンコーダ14において検出された位置信号および速度信号と、からサーボモータ13を駆動する。
The
つぎに、この位置決め制御装置の動作を説明する。まず、シーケンス制御部1において、制御部2は、シーケンスプログラムの格納されているシーケンスプログラム部3から図2に示すシーケンスプログラムを読み出す。ここで、制御部2は、読み出したシーケンスプログラムにおける運転条件が成立したかを判定し、運転条件が成立すると、実行すべきモーションプログラムの番号(ここでは、"No1")を示すプログラム番号信号と起動信号とを生成して、それら信号をインターフェース部4に送信する。インターフェース部4は、制御部2から送信されるプログラム番号信号と起動信号とを受信し、それら信号をモーション制御部5(詳しくはインターフェース部8)に送信する。
Next, the operation of this positioning control device will be described. First, in the
続くモーション制御部5における動作は、上述した図4および図5のフローチャートに示す処理と同様であるので、この部分の説明を省略する。ここでは、図12に示すモーションプログラムに基づく具体的な処理について図13を参照しつつ説明する。なお、図5のステップS202において、モーション制御部5の制御部6は、図12に示すモーションプログラムを以下のように解読する。
INC−1 POINT TO POINTの増分値指令位置決め動作
軸1,1000. 軸1を現在位置から+方向へ1000mmの位置に位置決め
速度 100. 送り速度=100mm/rev
V1 2000 判定速度パルスV1=2000
E1 2000 V1における最適変位パルス=2000
V2 300 判定速度パルスV2=300
E2 6000 V2における最適変位パルス=6000
The subsequent operation in the
INC-1 POINT TO POINT incremental value command
V1 2000 judgment speed pulse V1 = 2000
E1 2000 Optimal displacement pulse at V1 = 2000
V2 300 judgment speed pulse V2 = 300
Optimal displacement pulse at E2 6000 V2 = 6000
なお、図12に示すモーションプログラムにおいて、V1、E1、V2、E2は、図14に示すようにメモリ7に記憶される。このように、これらの値を使用することにより算出する判定カウント値(後述する)が、モーションプログラムにおいて指定されるので、モーションプログラム毎に判定カウント値を設定でき、モーションプログラムの示す制御内容に応じた制御対象機器の最適な同期動作が可能になる。
In the motion program shown in FIG. 12, V1, E1, V2, and E2 are stored in the
制御部6は、図12に示すモーションプログラムに基づいて、特に軸1に対応したサーボアンプ11(詳しくは、インターフェース部12)に対して、軸1を現在位置から+方向へ1000mmの位置に送り速度100mm/revでの位置決めを行うことを示す駆動信号を送信する。サーボアンプ11は、インターフェース部12において駆動信号を受信すると、サーボモータ13を受信した駆動信号の示す速度で目標位置まで回転させる。
Based on the motion program shown in FIG. 12, the
この回転動作が実行されている間に、モーション制御部5の制御部6は、エンコーダ23において、ある一定時間に検出されたパルス数(以下、エンコーダ検出値と称する)をインターフェース部24から読み込む(ステップS401)。このエンコーダ検出値は、コンベア等の駆動軸(以下、コンベア駆動軸と称する)の回転速度を表す。なお、このエンコーダ検出値を検出するためにパルス数を計測した時間(上記した一定時間)は、例えば数ミリ秒といった十分短い時間である。
While this rotation operation is being executed, the
つぎに、読み込んだエンコーダ検出値を、図14に示すように、メモリ7に今回値として書き込む(ステップS402)。すなわち、今回値は、最新のエンコーダ検出値を示す。そして、今回値と前回に読み込まれたエンコーダ検出値(前回値)とを以下の式により減算することでΔPを算出する(ステップS403)。
ΔP=今回値−前回値
Next, the read encoder detection value is written in the
ΔP = current value-previous value
ここで、ΔPは、検出された2つの回転速度(この場合、前回値と今回値)間の変化量すなわち加速量を示しており、今回値と同様にメモリ7に書き込まれる。ステップS403の処理後は、次回処理のために、今回値の示す値を前回値として設定する(ステップS404)。
Here, ΔP indicates the amount of change between the two detected rotation speeds (in this case, the previous value and the current value), that is, the acceleration amount, and is written in the
つぎに、あるタイミングから現在において、コンベア駆動軸の加減速増減分に相当するパルス数の累積値を示す変位カウント値を求める(ステップS405)。すなわち、変位カウント値は、ステップS403において算出したΔPの累積値を示し、前回の変位カウント値にΔPを加算していくことで算出される。 Next, a displacement count value indicating a cumulative value of the number of pulses corresponding to acceleration / deceleration increase / decrease of the conveyor drive shaft is obtained from a certain timing (step S405). That is, the displacement count value indicates the cumulative value of ΔP calculated in step S403, and is calculated by adding ΔP to the previous displacement count value.
そして、ステップS402において設定された今回値を、ステップS401においてパルス数を計測した一定時間(計測時間)で除算することで、以下の式に示すように、コンベア駆動軸の現在の回転速度Vを算出する(ステップS406)。
V=今回値/演算周期
Then, by dividing the current value set in step S402 by the fixed time (measurement time) in which the number of pulses is measured in step S401, the current rotation speed V of the conveyor drive shaft is obtained as shown in the following equation. Calculate (step S406).
V = current value / calculation cycle
続いて、ステップS406において算出されたVと、メモリ7に記憶されたV1、E1、V2、E2と、を用いて、以下の式に示すように、判定カウント値を算出する。
判定カウント値=(V−V1)×( E2−E1)/(V2−V1)+E1
Subsequently, using the V calculated in step S406 and V1, E1, V2, and E2 stored in the
Determination count value = (V−V1) × (E2−E1) / (V2−V1) + E1
ここで、判定カウント値は、コンベア駆動軸の現在の回転速度V毎に定まる値であり、この判定カウント値に依存して、サーボモータ13に送り速度の増減を示す駆動信号を送信するタイミングが決定する。
Here, the determination count value is a value determined for each current rotation speed V of the conveyor drive shaft, and depending on the determination count value, the timing at which the drive signal indicating increase / decrease of the feed speed is transmitted to the
続いて、ステップS405において算出された変位カウント値が、ステップS407において算出された判定カウント値より大きな値を示すかを判定する(ステップS408)。ステップS408において、変位カウント値が、判定カウント値より大きな値を示さない場合は、サーボモータ13の同期動作のための駆動信号を送信せずに、このフローチャートの処理を終了する。
Subsequently, it is determined whether the displacement count value calculated in step S405 is larger than the determination count value calculated in step S407 (step S408). In step S408, if the displacement count value does not indicate a value larger than the determination count value, the process of this flowchart is terminated without transmitting a drive signal for the synchronous operation of the
ステップS408において、変位カウント値が、判定カウント値より大きな値を示す場合は、ステップS403において算出されたΔPと、予め定められた基準となる1回転パルス数(メモリ7に書き込まれている)と、モーションプログラムにおいて設定された送り速度F(ここでは、100mm/rev)と、を用いた以下の式により、ΔLを算出する(ステップS409)。
ΔL=F×ΔP/1回転パルス数
In step S408, if the displacement count value is larger than the determination count value, ΔP calculated in step S403, and the number of one rotation pulse serving as a predetermined reference (written in the memory 7) are set. ΔL is calculated by the following equation using the feed speed F (100 mm / rev in this case) set in the motion program (step S409).
ΔL = F × ΔP / number of rotation pulses
ここで、ΔP/1回転パルス数は、一定時間当りのコンベア駆動軸の回転数の増減を示しており、これにサーボモータ13に設定された送り速度Fを乗算することで、エンコーダ23において検出されるコンベア駆動軸の回転速度に追従するための回転速度増減分ΔLが得られる。
Here, ΔP / 1 number of rotation pulses indicates an increase / decrease in the number of rotations of the conveyor drive shaft per fixed time, and is detected by the
つぎに、ステップS409において算出したΔLの示す信号をサーボアンプ指令値としてインターフェース部10に送信する。インターフェース部10は、受信したΔL信号をサーボアンプ11(詳しくはインターフェース部12)に送信し(ステップS410)、サーボアンプ11は、このΔL信号に基づいて増減させた送り速度でサーボモータ13を駆動させる。これにより、コンベア駆動軸等の異なる駆動系の動作速度と同期したサーボモータ13の回転駆動が達成される。
Next, the signal indicated by ΔL calculated in step S409 is transmitted to the
ステップS410の処理後は、次回の駆動信号送信の判定(ステップS408の処理に相当)のために、変位カウント値を初期化して(ステップS411)、このフローチャートの処理を終了する。 After the process in step S410, the displacement count value is initialized (step S411) in order to determine the next drive signal transmission (corresponding to the process in step S408), and the process in this flowchart ends.
以上に説明したように、実施の形態3に係る位置決め制御装置によれば、シーケンスプログラムの示す運転条件の成立とともに実行されるモーションプログラムに基づいたサーボモータの動作において、コンベア等の駆動軸の速度に応じた判定カウント値を定め、この判定カウント値とコンベア等の駆動軸の回転速度に相当するパルスの増減累積値とを比較することにより、サーボモータの送り速度を、その際のコンベア等の駆動軸の回転速度から算出されるサーボアンプ指令値に基づいて変化させることでサーボモータの同期動作を達成している。 As described above, according to the positioning control device according to the third embodiment, the speed of the drive shaft such as the conveyor in the operation of the servo motor based on the motion program executed together with the establishment of the operation condition indicated by the sequence program. By determining the determination count value according to the frequency and comparing the determination count value with the cumulative increase / decrease value of the pulse corresponding to the rotational speed of the drive shaft of the conveyor, the feed rate of the servo motor The synchronous operation of the servo motor is achieved by changing it based on the servo amplifier command value calculated from the rotational speed of the drive shaft.
特に、実施の形態3に係る位置決め制御装置においては、コンベア等の駆動軸の変位量に相当する変位カウント値に依存して、サーボモータへの速度指令を行っているので、例えば、コンベア等の駆動軸の回転速度が急激に増加した場合には、より短周期でサーボモータの速度追従動作が行われるといった、コンベア等の駆動軸の回転速度の変化によって生じる同期ずれのバラツキが防止される。 In particular, in the positioning control device according to the third embodiment, the speed command to the servo motor is given depending on the displacement count value corresponding to the displacement amount of the drive shaft of the conveyor, etc. When the rotational speed of the drive shaft increases abruptly, variations in synchronization deviation caused by changes in the rotational speed of the drive shaft such as a conveyor are prevented such that the speed following operation of the servo motor is performed in a shorter cycle.
1 シーケンス制御部、
2,6 制御部、
3 シーケンスプログラム部、
4,8,12,20,24 インターフェース部、
5 モーション制御部、
7 メモリ、
9 モーションプログラム部、
11 サーボアンプ、
13 サーボモータ、
14,23 エンコーダ、
21 信号入力部。
1 sequence controller,
2,6 control unit,
3 Sequence program part,
4, 8, 12, 20, 24 interface part,
5 Motion controller,
7 memory,
9 Motion program part,
11 Servo amplifier,
13 Servo motor,
14,23 Encoder,
21 Signal input section.
Claims (4)
前記制御対象機器に同期動作させるための同期対象機器の駆動速度を検出する速度検出部と、
前記制御対象機器を目標位置に位置決めさせるためのモーションプログラムを起動させるシーケンスプログラムを格納し、前記シーケンスプログラムにおいて指定されたモーションプログラムを起動させるための起動信号を出力するシーケンス制御部と、
前記モーションプログラムを格納するモーションプログラム部と、前記モーションプログラムにおいて利用するデータを記憶するデータ記憶部と、前記起動信号を受信して前記起動信号の示すモーションプログラムおよび前記データ記憶部のデータに基づいて目標速度を含む位置決め指令を順次作成し出力する第1の制御部と、前記速度検出部において検出される駆動速度に基づくタイミングで前記同期対象機器の駆動速度に同期させるための駆動指令を出力する第2の制御部とを有するモーション制御部と、
前記位置決め指令に従って前記制御対象機器を制御するサーボアンプであって、前記駆動指令が入力されたときには、該駆動指令に基づき前記位置決め指令の目標速度を増減させ、当該目標速度を増減させた位置決め指令に従って前記制御対象機器を制御するサーボアンプと、
を備え、同期対象機器の駆動速度に同期させて制御対象機器を位置決めさせることを特徴とする位置決め制御装置。 In a positioning control device for positioning a control target device at a target position,
A speed detection unit for detecting a driving speed of the synchronization target device for causing the control target device to perform a synchronous operation;
Storing a sequence program for starting a motion program for positioning the device to be controlled at a target position, and outputting a start signal for starting a motion program specified in the sequence program; and
Based on a motion program unit that stores the motion program, a data storage unit that stores data used in the motion program, a motion program that receives the activation signal and indicates the activation signal, and data in the data storage unit A first control unit that sequentially generates and outputs a positioning command including a target speed, and a drive command for synchronizing with the drive speed of the synchronization target device at a timing based on the drive speed detected by the speed detection unit A motion control unit having a second control unit;
A servo amplifier for controlling the control target device according to the positioning command, when the driving instruction is input, to increase or decrease the target speed of the positioning command on the basis of the drive command, is increased or decreased the target speed A servo amplifier that controls the device to be controlled in accordance with a positioning command ;
And a positioning control device that positions the control target device in synchronization with the drive speed of the synchronization target device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004133049A JP4219298B2 (en) | 2004-04-28 | 2004-04-28 | Positioning control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004133049A JP4219298B2 (en) | 2004-04-28 | 2004-04-28 | Positioning control device |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28011398A Division JP3705937B2 (en) | 1998-10-01 | 1998-10-01 | Positioning control device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004265441A JP2004265441A (en) | 2004-09-24 |
JP4219298B2 true JP4219298B2 (en) | 2009-02-04 |
Family
ID=33128575
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004133049A Expired - Fee Related JP4219298B2 (en) | 2004-04-28 | 2004-04-28 | Positioning control device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4219298B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008234278A (en) * | 2007-03-20 | 2008-10-02 | Brother Ind Ltd | Numerical control device, control program, control program recording medium, and machine tool |
US10437226B2 (en) | 2015-04-23 | 2019-10-08 | Mitsubishi Electric Corporation | Positioning control apparatus |
-
2004
- 2004-04-28 JP JP2004133049A patent/JP4219298B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004265441A (en) | 2004-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI466434B (en) | System for control electric motor and communication method | |
CN106239257B (en) | The control device and control method of lathe | |
JP5852467B2 (en) | Numerical controller | |
US4815007A (en) | Apparatus for controlling a robot | |
JP4044105B2 (en) | Numerical control device having function of switching operation means for each system | |
JP4219298B2 (en) | Positioning control device | |
JP2009037617A (en) | Position measuring device and method for transmitting movement information | |
JP3705937B2 (en) | Positioning control device | |
JP2009122852A (en) | Numerical controller for storing operating history during path table operation | |
JP3370845B2 (en) | Absolute encoder | |
JP2008090513A (en) | Numerical controller | |
CN110737241B (en) | Numerical control device, numerical control method, and storage device storing numerical control program | |
US5670857A (en) | Method of returning to an absolute zero point for use by an industrial controller | |
EP1267236B1 (en) | Method and apparatus for setting moving data in a machine tool | |
JP6629817B2 (en) | Control system and motor control method | |
JP4280051B2 (en) | Origin return method and control program in positioning system | |
CN113965140A (en) | Servo motor control method, device, equipment and medium | |
JPH10301630A (en) | Detection position data transmission and output device | |
JP5308144B2 (en) | Servo motor device calibration method and servo motor device | |
CN114362879B (en) | Encoder and communication control method for encoder | |
JP6949272B1 (en) | Mobile system and position estimation method | |
JPH0869326A (en) | Positioning controller | |
JP2002284341A (en) | Turntable control system and control method for turntable control system | |
JP4318121B2 (en) | Pulse output IC for motor drive | |
JP2016080547A (en) | Position controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071030 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080805 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081001 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20081111 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20081111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111121 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121121 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121121 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131121 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |