JP4219298B2 - Positioning control device - Google Patents

Positioning control device Download PDF

Info

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
Application number
JP2004133049A
Other languages
Japanese (ja)
Other versions
JP2004265441A (en
Inventor
眞 西村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2004133049A priority Critical patent/JP4219298B2/en
Publication of JP2004265441A publication Critical patent/JP2004265441A/en
Application granted granted Critical
Publication of JP4219298B2 publication Critical patent/JP4219298B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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 servo motor 13 that is a control target device, an encoder 14 that detects the position and speed of the servo motor 13, a servo amplifier 11 that drives the servo motor 13, and a servo amplifier 11. The motion control unit 5 transmits a drive signal for driving the servo motor 13 and the sequence control unit 1 transmits a control signal to the motion control unit 5 based on a predetermined sequence program.

また、シーケンス制御部1は、図16に示すようなシーケンスプログラムを格納するシーケンスプログラム部3と、そのシーケンスプログラム部3に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部2と、制御部2において生成された起動信号等をモーション制御部5に送信するインターフェース部4と、から構成される。なお、図16のシーケンスプログラムは、ユーザにより周辺機器であるキーボード等を介して入力設定されるプログラムの一例である。   The sequence control unit 1 includes a sequence program unit 3 that stores a sequence program as shown in FIG. 16, a control unit 2 that generates an activation signal and the like based on the sequence program stored in the sequence program unit 3, And an interface unit 4 that transmits an activation signal or the like generated in the control unit 2 to the motion control unit 5. Note that the sequence program in FIG. 16 is an example of a program that is input and set by the user via a keyboard or the like that is a peripheral device.

また、モーション制御部5は、シーケンス制御部1(詳しくはインターフェース部4)から送信される起動信号等を受信するインターフェース部8と、図17に示すようなモーションプログラム(ここでは、サーボモータを駆動する際に工作機械等で一般に使用されるGコードとして示されている)を格納するモーションプログラム部9と、インターフェース部8において受信した起動信号およびモーションプログラム部9に格納されたモーションプログラムに基づいて駆動信号を生成する制御部6と、制御部6において生成された駆動信号をサーボアンプ11に送信するインターフェース部10と、から構成される。なお、図17のモーションプログラムは、ユーザにより周辺機器であるキーボード等を介して入力設定されるプログラムの一例である。   The motion control unit 5 also includes an interface unit 8 that receives an activation signal transmitted from the sequence control unit 1 (specifically, the interface unit 4), and a motion program as shown in FIG. Based on the motion program stored in the motion program unit 9 and the motion signal stored in the motion program unit 9 (shown as G code generally used in machine tools and the like) The control unit 6 generates a drive signal, and the interface unit 10 transmits the drive signal generated by the control unit 6 to the servo amplifier 11. Note that the motion program in FIG. 17 is an example of a program that is input and set by the user via a keyboard or the like that is a peripheral device.

また、サーボアンプ11は、モーション制御部5(詳しくはインターフェース部10)から送信される駆動信号を受信するインターフェース部12を備え、インターフェース部12において受信した駆動信号と、エンコーダ14において検出された位置信号および速度信号と、からサーボモータ13を駆動する。   The servo amplifier 11 includes an interface unit 12 that receives a drive signal transmitted from the motion control unit 5 (more specifically, the interface unit 10). The drive signal received by the interface unit 12 and the position detected by the encoder 14 The servo motor 13 is driven from the signal and the speed signal.

つぎに、この従来の位置決め制御装置の動作を説明する。まず、シーケンス制御部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 sequence control unit 1, the control unit 2 reads the sequence program shown in FIG. 16 from the sequence program unit 3 in which the sequence program is stored. Here, the control unit 2 determines whether or not the operation condition in the read sequence program is satisfied, and when the operation condition is satisfied, a program number signal indicating the number of the motion program to be executed (here, “No1”) and An activation signal is generated and transmitted to the interface unit 4. The interface unit 4 receives the program number signal and the activation signal transmitted from the control unit 2, and transmits these signals to the motion control unit 5 (specifically, the interface unit 8).

続くモーション制御部5における動作を図18および図19に示すフローチャートを参照しつつ説明する。まず、図18において、モーション制御部5の制御部6が、インターフェース部8において起動信号が受信されたかを判定する。特にインターフェース部8においては、起動信号のON/OFF状態を示す起動フラグが用意され、起動信号が受信された際にこの起動フラグをON状態にする。制御部6は、この起動フラグの状態がON状態であるかを判定する(ステップS1001)。ステップS1001において、起動フラグがON状態でないならば、図18のフローチャートにおける処理を終了する。   The subsequent operation in the motion control unit 5 will be described with reference to the flowcharts shown in FIGS. First, in FIG. 18, the control unit 6 of the motion control unit 5 determines whether an activation signal is received by the interface unit 8. In particular, in the interface unit 8, a start flag indicating the ON / OFF state of the start signal is prepared, and when the start signal is received, the start flag is turned ON. The control unit 6 determines whether or not the activation flag is in the ON state (step S1001). If it is determined in step S1001 that the activation flag is not in the ON state, the processing in the flowchart of FIG. 18 ends.

ステップ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 interface unit 8 is read, and the program number A motion program to be shown is selected from the motion program section 9 (step S1003). Further, the start flag is changed to the OFF state and the operation flag is changed to the ON state (step S1004). Then, processing (described later) based on the motion program selected in step S1003 is performed (step S1005), and the processing in the flowchart of FIG.

ステップ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 control unit 6 of the motion control unit 5 decodes the motion program shown in FIG. 17 as follows (step S1007).
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 control unit 6, a drive that indicates a position command for positioning at a target position = 100 mm and a feed rate of 1000 mm / min, especially for the servo amplifier 11 (specifically, the interface unit 12) corresponding to the X axis A signal is transmitted (step S1008). When the servo amplifier 11 receives the drive signal at the interface unit 12, the servo amplifier 11 rotates the servo motor 13 to the target position at the speed indicated by the received drive signal. The encoder 14 detects the position of the servo motor 13, and when the servo motor 13 reaches the target position, an operation completion signal indicating the operation completion of the servo motor 13 is sent to the interface unit 12 of the servo amplifier 11. Is transmitted to the motion control unit 5 via. The control unit 6 of the motion control unit 5 determines whether the servo motor 13 has reached the target position by determining whether the operation completion signal has been received (step S1009).

ステップS1009において、サーボモータ13の動作の完了を検出した場合は、前述した動作フラグをOFF状態に変更し(ステップS1010)、図19のフローチャートにおける処理すなわちモーションプログラムの処理を終了する。また、ステップS1009において、サーボモータ13の動作の完了を検出しない場合は、モーションプログラムが動作中であることを示し、ステップS1009における動作完了確認を繰り返す。   If the completion of the operation of the servo motor 13 is detected in step S1009, the operation flag described above is changed to the OFF state (step S1010), and the process in the flowchart of FIG. If the completion of the operation of the servo motor 13 is not detected in step S1009, it indicates that the motion program is in operation, and the operation completion confirmation in step S1009 is repeated.

以上に説明したように、この従来の位置決め制御装置によれば、シーケンスプログラムの示す運転条件の成立とともに、指定したモーションプログラムが実行され、そのモーションプログラムに基づいて、サーボモータの位置決めを達成している。   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 servomotor 13 to be controlled, an encoder 14 for detecting the position and speed of the servomotor 13, and a drive shaft (not shown) such as a conveyor to increase the speed. An encoder 23 to detect, a servo amplifier 11 for driving the servo motor 13, a motion control unit 5 for transmitting a drive signal for driving the servo motor 13 to the servo amplifier 11, and a motion based on a predetermined sequence program And a sequence control unit 1 that transmits a control signal to the control unit 5.

また、シーケンス制御部1は、図16に示すようなシーケンスプログラムを格納するシーケンスプログラム部3と、そのシーケンスプログラム部3に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部2と、制御部2において生成された起動信号等をモーション制御部5に送信するインターフェース部4と、から構成される。   The sequence control unit 1 includes a sequence program unit 3 that stores a sequence program as shown in FIG. 16, a control unit 2 that generates an activation signal and the like based on the sequence program stored in the sequence program unit 3, And an interface unit 4 that transmits an activation signal or the like generated in the control unit 2 to the motion control unit 5.

また、モーション制御部5は、シーケンス制御部1(詳しくはインターフェース部4)から送信される起動信号等を受信するインターフェース部8と、図21に示すようなモーションプログラム(ここでは、サーボモータを駆動する際に工作機械等で一般に使用されるGコードで示されている)を格納するモーションプログラム部9と、インターフェース部8において受信した起動信号およびモーションプログラム部9に格納されたモーションプログラムに基づいて駆動信号を生成する制御部6と、制御部6において生成された駆動信号をサーボアンプ11に送信するインターフェース部10と、エンコーダ23によって検出された速度に基づくパルス数を入力するインターフェース部24と、インターフェース部24において受信したパルス数等を記憶するメモリ7と、から構成される。なお、図21のモーションプログラムは、ユーザにより周辺機器であるキーボード等を介して入力設定されるプログラムの一例である。   In addition, the motion control unit 5 includes an interface unit 8 that receives an activation signal transmitted from the sequence control unit 1 (specifically, the interface unit 4) and a motion program as shown in FIG. Based on the motion program stored in the motion program unit 9 and the motion program stored in the motion program unit 9. A control unit 6 that generates a drive signal; an interface unit 10 that transmits the drive signal generated in the control unit 6 to the servo amplifier 11; an interface unit 24 that inputs the number of pulses based on the speed detected by the encoder 23; Pal received at interface unit 24 A memory 7 for storing Suto, composed. The motion program in FIG. 21 is an example of a program that is input and set by the user via a keyboard or the like that is a peripheral device.

また、サーボアンプ11は、モーション制御部5(詳しくはインターフェース部10)から送信される駆動信号を受信するインターフェース部12を備え、インターフェース部12において受信した駆動信号と、エンコーダ14において検出された位置信号および速度信号と、からサーボモータ13を駆動する。   The servo amplifier 11 includes an interface unit 12 that receives a drive signal transmitted from the motion control unit 5 (more specifically, the interface unit 10). The drive signal received by the interface unit 12 and the position detected by the encoder 14 The servo motor 13 is driven from the signal and the speed signal.

つぎに、この従来の位置決め制御装置の動作を説明する。まず、シーケンス制御部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 sequence control unit 1, the control unit 2 reads the sequence program shown in FIG. 16 from the sequence program unit 3 in which the sequence program is stored. Here, the control unit 2 determines whether or not the operation condition in the read sequence program is satisfied, and when the operation condition is satisfied, a program number signal indicating the number of the motion program to be executed (here, “No1”) and An activation signal is generated and transmitted to the interface unit 4. The interface unit 4 receives the program number signal and the activation signal transmitted from the control unit 2, and transmits these signals to the motion control unit 5 (specifically, the interface unit 8).

続くモーション制御部5における動作は、上述した図18および図19のフローチャートに示す処理と同様であるので、この部分の説明を省略する。ここでは、図21に示すモーションプログラムに基づく具体的な処理について図22を参照しつつ説明する。なお、図19のステップS1007において、モーション制御部5の制御部6は、図21に示すモーションプログラムを以下のように解読する。
G95 送り速度を主軸1回転当りに変更
X100. X軸を目標位置=100mmに位置決め
F10. 送り速度=10mm/rev
The subsequent operation in the motion control unit 5 is the same as the processing shown in the flowcharts of FIG. 18 and FIG. Here, specific processing based on the motion program shown in FIG. 21 will be described with reference to FIG. In step S1007 in FIG. 19, the control unit 6 of the motion control unit 5 decodes the motion program shown in FIG. 21 as follows.
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 control unit 6 positions the servo amplifier 11 corresponding to the X axis (specifically, the interface unit 12) at a target position = 100 mm and a feed speed of 10 mm / rev. A drive signal indicating is transmitted. When the servo amplifier 11 receives the drive signal at the interface unit 12, the servo amplifier 11 rotates the servo motor 13 to the target position at the speed indicated by the received drive signal.

この回転動作が実行されている間に、モーション制御部5の制御部6は、エンコーダ23においてある一定時間において検出されたパルス数(以下、エンコーダ検出値と称する)をインターフェース部24から読み込む(ステップS1101)。このエンコーダ検出値は、コンベア等の駆動軸の回転速度を表す。つぎに、読み込んだエンコーダ検出値をメモリ7に今回値として書き込む(ステップS1102)。すなわち、今回値は、最新のエンコーダ検出値を示す。そして、今回値と前回に読み込まれたエンコーダ検出値(前回値)とを以下の式により減算することでΔPを算出する(ステップS1103)。
ΔP=今回値−前回値
While this rotation operation is being performed, the control unit 6 of the motion control unit 5 reads the number of pulses detected in the encoder 23 at a certain time (hereinafter referred to as an encoder detection value) from the interface unit 24 (step) S1101). This encoder detection value represents the rotational speed of a drive shaft such as a conveyor. Next, the read encoder detection value is written in the memory 7 as the current value (step S1102). That is, the current value indicates the latest encoder detection value. Then, ΔP is calculated by subtracting the current value and the previously detected encoder detection value (previous value) by the following equation (step S1103).
Δ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 memory 7 in the same manner as the current value.

続いて、ステップ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 servo motor 13, the drive shaft detected by the encoder 23. Rotational speed increase / decrease ΔL for following the rotational speed is obtained.

つぎに、ステップ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 interface unit 10 as a servo amplifier command value. The interface unit 10 transmits the received ΔL signal to the servo amplifier 11 (specifically, the interface unit 12) (step S1105), and the servo amplifier 11 drives the servo motor 13 at a feed rate increased or decreased based on the ΔL signal. Let Thereby, the rotational drive of the servomotor 13 synchronized with the operation speed of different drive systems, such as the drive shaft of a conveyor, is achieved.

ステップ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 memory 7 as shown in FIG.

以上に説明したように、この従来の位置決め制御装置によれば、シーケンスプログラムの示す運転条件の成立とともに実行されるモーションプログラムに基づいたサーボモータの設定と、サーボモータの送り速度をコンベア等の駆動軸の回転速度(ここでは、パルス数)から算出されるサーボアンプ指令値に基づいて変化させることでサーボモータの同期動作、を達成している。   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と、から構成される。
Embodiment 1 FIG.
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 servo motor 13 to be controlled, an encoder 14 that detects the position and speed of the servo motor 13, a servo amplifier 11 that drives the servo motor 13, The motion control unit 5 transmits a drive signal for driving the servo motor 13 to the servo amplifier 11, and the sequence control unit 1 transmits a control signal to the motion control unit 5 based on a sequence program.

また、シーケンス制御部1は、図2に示すようなシーケンスプログラムを格納するシーケンスプログラム部3と、シーケンスプログラム部3に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部2と、制御部2において生成された起動信号等をモーション制御部5に送信するインターフェース部4と、から構成される。なお、図2のシーケンスプログラムは、ユーザーにより周辺機器であるキーボード等(図示せず)を介して入力設定されるプログラムの一例である。   Further, the sequence control unit 1 includes a sequence program unit 3 that stores a sequence program as shown in FIG. 2, a control unit 2 that generates an activation signal and the like based on the sequence program stored in the sequence program unit 3, and a control And an interface unit 4 that transmits an activation signal or the like generated in the unit 2 to the motion control unit 5. The sequence program in FIG. 2 is an example of a program that is input and set by the user via a keyboard or the like (not shown) that is a peripheral device.

また、モーション制御部5は、シーケンス制御部1(詳しくはインターフェース部4)から送信される起動信号等を受信するインターフェース部8と、図3に示すようなモーションプログラムを格納するモーションプログラム部9と、インターフェース部8において受信した起動信号等とモーションプログラム部9に格納されたモーションプログラムとに基づいて駆動信号を生成する制御部6と、制御部6において利用されるデータを記憶するメモリ7と、制御部6において生成された駆動信号をサーボアンプ11に送信するインターフェース部10と、から構成される。なお、図3のモーションプログラムは、ユーザーにより周辺機器であるキーボード等(図示せず)を介して入力設定されるプログラムの一例である。   The motion control unit 5 includes an interface unit 8 that receives an activation signal transmitted from the sequence control unit 1 (specifically, the interface unit 4), and a motion program unit 9 that stores a motion program as shown in FIG. A control unit 6 that generates a drive signal based on the activation signal received in the interface unit 8 and a motion program stored in the motion program unit 9; a memory 7 that stores data used in the control unit 6; And an interface unit 10 that transmits a drive signal generated in the control unit 6 to the servo amplifier 11. The motion program in FIG. 3 is an example of a program that is input and set by the user via a keyboard or the like (not shown) that is a peripheral device.

ここで、インターフェース部8は、シーケンス制御部1から送信される起動信号等を逐次的に記憶可能なメモリ(図示せず)を備えており、連続して送信されたシーケンスプログラムのそれぞれに対応する起動信号等を制御部6により読み込むことができる。   Here, the interface unit 8 includes a memory (not shown) capable of sequentially storing activation signals transmitted from the sequence control unit 1, and corresponds to each of the sequence programs transmitted continuously. An activation signal or the like can be read by the control unit 6.

また、サーボアンプ11は、モーション制御部5(詳しくはインターフェース部10)から送信される駆動信号を受信するインターフェース部12を備え、インターフェース部12において受信した駆動信号と、エンコーダ14において検出された位置信号および速度信号と、からサーボモータ13を駆動する。   The servo amplifier 11 includes an interface unit 12 that receives a drive signal transmitted from the motion control unit 5 (more specifically, the interface unit 10). The drive signal received by the interface unit 12 and the position detected by the encoder 14 The servo motor 13 is driven from the signal and the speed signal.

つぎに、この位置決め制御装置の動作を説明する。まず、シーケンス制御部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 sequence control unit 1, the control unit 2 reads the sequence program shown in FIG. 2 from the sequence program unit 3 in which the sequence program is stored. Here, the control unit 2 determines whether or not the operation condition indicated in the read sequence program is satisfied, and when the operation condition is satisfied, the program number indicating the number of the motion program to be executed (here, “No1”). A signal and an activation signal that prompts activation of the motion program are generated, and these signals are transmitted to the interface unit 4. The interface unit 4 receives the program number signal and the activation signal transmitted from the control unit 2, and transmits these signals to the motion control unit 5 (specifically, the interface unit 8).

続くモーション制御部5における動作を図4および図5に示すフローチャートを参照しつつ説明する。まず、図4において、モーション制御部5の制御部6が、インターフェース部8において起動信号が受信されたかを判定する。特にインターフェース部8においては、起動信号のON/OFF状態を示す起動フラグが用意され、起動信号が受信された際にこの起動フラグをON状態にする。制御部6は、この起動フラグの状態がON状態であるかを判定する(ステップS101)。ステップS101において、起動フラグがON状態でない場合は、図4のフローチャートにおける処理を終了する。   The subsequent operation in the motion control unit 5 will be described with reference to the flowcharts shown in FIGS. First, in FIG. 4, the control unit 6 of the motion control unit 5 determines whether an activation signal is received by the interface unit 8. In particular, in the interface unit 8, a start flag indicating the ON / OFF state of the start signal is prepared, and when the start signal is received, the start flag is turned ON. The control unit 6 determines whether or not the activation flag is in the ON state (step S101). In step S101, when the activation flag is not in the ON state, the process in the flowchart of FIG.

ステップ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 interface unit 8, and the program number The motion program shown is designated from the motion program section 9 (step S103). Further, the activation flag is changed to the OFF state and the operation flag is changed to the ON state (step S104). Then, a process (described later) based on the motion program designated in step S103 is performed (step S105), and the process in the flowchart of FIG.

ステップ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 control unit 6 of the motion control unit 5 initializes a start count value indicating the number of times the start flag has changed from the OFF state to the ON state (step S201). This activation count value means the number of times that the interface unit 8 receives the activation signal during the operation of the motion program, that is, the number of motion programs that are continuously operated.

つぎに、制御部6は、図3に示すモーションプログラムを以下のように解読する(ステップS202)。
INC−1 POINT TO POINTの増分値指令位置決め動作
軸1,1000. 1軸を現在位置から+方向へ1000mmの位置に位置決め
速度 100. 送り速度=100mm/min
カウントMAX.1 最大起動カウント値=1
Next, the control part 6 decodes the motion program shown in FIG. 3 as follows (step S202).
INC-1 POINT TO POINT incremental value command positioning operation Axis 1,1000. Position one axis at a position of 1000 mm in the + direction from the current position. Feed rate = 100mm / min
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 memory 7 together with the activation count value as shown in FIG. 6 (step S203). As a result, the maximum count value can be set for each motion program, and the optimum motion program can be continuously operated according to the control content indicated by the motion program.

ステップ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 axis 1 is positioned at a feed rate of 100 mm / min from the current position to the position of 1000 mm in the positive direction. A drive signal indicating this is transmitted (step S204). When the servo amplifier 11 receives the drive signal at the interface unit 12, the servo amplifier 11 rotates the servo motor 13 to the target position at the speed indicated by the received drive signal. The encoder 14 detects the position of the servo motor 13, and when the servo motor 13 reaches the target position, an operation completion signal indicating the operation completion of the servo motor 13 is sent to the interface unit 12 of the servo amplifier 11. Is transmitted to the motion control unit 5 via. The control unit 6 of the motion control unit 5 determines whether the servo motor 13 has reached the target position by determining whether the operation completion signal has been received (step S205).

ステップS205において、サーボモータ13の動作完了を検出した場合は、起動カウント値が0を示すかを判定する(ステップS206)。ステップS206において、起動カウント値が0を示す場合は、前述した動作フラグをOFF状態に変更し(ステップS207)、図5のフローチャートに示す処理すなわちモーションプログラムの処理を終了する。   When the completion of the operation of the servo motor 13 is detected in step S205, it is determined whether the activation count value indicates 0 (step S206). If the activation count value indicates 0 in step S206, the operation flag described above is changed to the OFF state (step S207), and the process shown in the flowchart of FIG. 5, that is, the process of the motion program ends.

ステップS206において、起動カウント値が0を示さない場合、すなわちモーションプログラムの動作中においてインターフェース部8が起動信号を受信していた場合は、起動カウント値に1だけ減算した結果を改めて起動カウント値としてメモリ7に書き込む。すなわち、ここで起動カウント値のデクリメント処理を行う(ステップS212)。   In step S206, if the activation count value does not indicate 0, that is, if the interface unit 8 has received the activation signal during the operation of the motion program, the result obtained by subtracting 1 from the activation count value is again set as the activation count value. Write to memory 7. That is, the activation count value is decremented here (step S212).

続いて、インターフェース部8に受信されて記憶されている最古のプログラム番号信号からプログラム番号を取得し、そのプログラム番号の示すモーションプログラムをモーションプログラム部9から指定する(ステップS213)。そして、ステップS202に処理を戻し、指定されたモーションプログラムの実行を開始する。   Subsequently, the program number is acquired from the oldest program number signal received and stored in the interface unit 8, and the motion program indicated by the program number is designated from the motion program unit 9 (step S213). Then, the process returns to step S202, and execution of the designated motion program is started.

ステップS205において、サーボモータ13の動作完了を検出しない場合、すなわちモーションプログラムが動作中である場合は、起動フラグの状態がON状態であるかを判定する(ステップS208)。ステップS208において、起動フラグの状態がON状態を示す場合は、起動カウント値が最大起動カウント値以上の値を示すかを判定する(ステップS209)。この判定により、多数のモーションプログラムの長時間による連続的な動作を防止し、さらには、モーションプログラムの起動信号等を記憶するための記憶容量を無駄に使用することを防ぐことができる。   If the completion of the operation of the servo motor 13 is not detected in step S205, that is, if the motion program is operating, it is determined whether the activation flag is in the ON state (step S208). In step S208, if the activation flag indicates the ON state, it is determined whether the activation count value is equal to or greater than the maximum activation count value (step S209). By this determination, it is possible to prevent a continuous operation of a large number of motion programs for a long time, and further, it is possible to prevent a useless storage capacity for storing a motion program start signal and the like.

ステップ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 memory 7 as the activation count value. That is, here, the activation count value is incremented (step S210). Then, the activation flag is changed to the OFF state (step S211).

ステップ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と、から構成される。
Embodiment 2. FIG.
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 servo motor 13 that is a control target device, an encoder 14 that detects the position and speed of the servo motor 13, a servo amplifier 11 that drives the servo motor 13, A motion control unit 5 that transmits a drive signal for driving the servo motor 13 to the servo amplifier 11, a sequence control unit 1 that transmits a control signal to the motion control unit 5 based on a sequence program, and a signal that can be input by the user And an input unit 21.

また、シーケンス制御部1は、図2に示すようなシーケンスプログラムを格納するシーケンスプログラム部3と、シーケンスプログラム部3に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部2と、信号入力部21から入力される信号を受信して再起動信号を識別するインターフェース部20と、制御部2において生成された起動信号等とインターフェース部20において受信された再起動信号とをモーション制御部5に送信するインターフェース部4と、から構成される。   Further, the sequence control unit 1 includes a sequence program unit 3 that stores a sequence program as shown in FIG. 2, a control unit 2 that generates an activation signal and the like based on the sequence program stored in the sequence program unit 3, and a signal The interface unit 20 that receives the signal input from the input unit 21 and identifies the restart signal, the start signal generated by the control unit 2, and the restart signal received by the interface unit 20 are used as the motion control unit 5. And an interface unit 4 for transmitting to.

また、モーション制御部5は、シーケンス制御部1(詳しくはインターフェース部4)から送信される起動信号等と再起動信号とを受信するインターフェース部8と、図8に示すようなモーションプログラムを格納するモーションプログラム部9と、インターフェース部8において受信した起動信号等とモーションプログラム部9に格納されたモーションプログラムとに基づいて駆動信号を生成する制御部6と、制御部6において利用されるデータを記憶するメモリ7と、制御部6において生成された駆動信号をサーボアンプ11に送信するインターフェース部10と、から構成される。なお、図8のモーションプログラムは、ユーザにより周辺機器であるキーボード等(図示せず)を介して入力設定されるプログラムの一例である。   The motion control unit 5 stores an interface unit 8 that receives a start signal and the restart signal transmitted from the sequence control unit 1 (specifically, the interface unit 4) and a motion program as shown in FIG. The motion program unit 9, the control unit 6 that generates a drive signal based on the activation signal received by the interface unit 8 and the motion program stored in the motion program unit 9, and data used in the control unit 6 are stored And an interface unit 10 that transmits the drive signal generated in the control unit 6 to the servo amplifier 11. The motion program in FIG. 8 is an example of a program that is input and set by the user via a keyboard or the like (not shown) that is a peripheral device.

また、サーボアンプ11は、モーション制御部5(詳しくはインターフェース部10)から送信される駆動信号を受信するインターフェース部12を備え、インターフェース部12において受信した駆動信号と、エンコーダ14において検出された位置信号および速度信号と、からサーボモータ13を駆動する。   The servo amplifier 11 includes an interface unit 12 that receives a drive signal transmitted from the motion control unit 5 (more specifically, the interface unit 10). The drive signal received by the interface unit 12 and the position detected by the encoder 14 The servo motor 13 is driven from the signal and the speed signal.

つぎに、この位置決め制御装置の動作を説明する。まず、シーケンス制御部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 sequence control unit 1, the control unit 2 reads the sequence program shown in FIG. 2 from the sequence program unit 3 in which the sequence program is stored. Here, the control unit 2 determines whether or not the operation condition indicated in the read sequence program is satisfied, and when the operation condition is satisfied, the program number indicating the number of the motion program to be executed (here, “No1”). A signal and an activation signal that prompts activation of the motion program are generated, and these signals are transmitted to the interface unit 4. The interface unit 4 receives the program number signal and the activation signal transmitted from the control unit 2, and transmits these signals to the motion control unit 5 (specifically, the interface unit 8).

続くモーション制御部5における動作を図4および図9に示すフローチャートを参照しつつ説明する。図4に示すフローチャートは、実施の形態1において説明したためにここでは省略する。よって、図4のステップS105の処理すなわちモーションプログラムの処理について説明する。   The subsequent operation in the motion control unit 5 will be described with reference to the flowcharts shown in FIGS. The flowchart shown in FIG. 4 has been described in Embodiment 1, and is therefore omitted here. Therefore, the process of step S105 in FIG. 4, that is, the process of the motion program will be described.

ここでは、ステップ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 control unit 6 of the motion control unit 5 initializes restart signal information indicating the presence or absence of a restart signal from the signal input unit 21 (step S301). This restart signal information is data stored in the memory 7 as shown in FIG. 10 via the interface unit 20, the interface unit 4 and the interface unit 8 when a restart signal is issued from the signal input unit 21. It is.

つぎに、制御部6は、図8に示すモーションプログラムを以下のように解読する(ステップS302)。
INC−1 POINT TO POINTの増分値指令位置決め動作
軸1,1000. 1軸を現在位置から+方向へ1000mmの位置に位置決め
速度 100. 送り速度=100mm/min
再起動信号 X1 再起動信号として認識する信号=X1
Next, the control unit 6 decodes the motion program shown in FIG. 8 as follows (step S302).
INC-1 POINT TO POINT incremental value command positioning operation Axis 1,1000. Position one axis at a position of 1000 mm in the + direction from the current position. Feed rate = 100mm / min
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 interface unit 20 receives a signal indicating "X1", and the restart signal information is stored even when the motion program is operating. It can be changed to the ON state.

ステップ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 axis 1 is positioned at a feed rate of 100 mm / min from the current position to the position of 1000 mm in the positive direction. A drive signal indicating this is transmitted (step S303). When the servo amplifier 11 receives the drive signal at the interface unit 12, the servo amplifier 11 rotates the servo motor 13 to the target position at the speed indicated by the received drive signal. The encoder 14 detects the position of the servo motor 13, and when the servo motor 13 reaches the target position, an operation completion signal indicating the operation completion of the servo motor 13 is sent to the interface unit 12 of the servo amplifier 11. Is transmitted to the motion control unit 5 via. The control unit 6 of the motion control unit 5 determines whether the servo motor 13 has reached the target position by determining whether the operation completion signal has been received (step S304).

ステップS304において、サーボモータ13の動作完了を検出した場合は、再起動信号情報がON状態を示すかを判定する(ステップS305)。ステップS305において、再起動信号情報がON状態を示さない場合、すなわち再起動信号情報がOFF状態を示す場合は、前述した動作フラグをOFF状態に変更し(ステップS306)、図9のフローチャートに示す処理すなわちモーションプログラムの処理を終了する。   If the completion of the operation of the servo motor 13 is detected in step S304, it is determined whether the restart signal information indicates an ON state (step S305). If the restart signal information does not indicate the ON state in step S305, that is, if the restart signal information indicates the OFF state, the operation flag described above is changed to the OFF state (step S306), and is shown in the flowchart of FIG. The process, that is, the motion program process is terminated.

ステップ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 signal input unit 21 during the operation of the motion program or immediately after the operation is completed, the motion program whose operation has been completed immediately before is again displayed. The process returns to step S301 so as to operate. If the completion of the operation of the servo motor 13 is not detected in step S304, it indicates that the motion program is in operation, and the operation completion confirmation in step S304 is repeated.

以上に説明したように、実施の形態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 motion control unit 5 can receive the restart signal and change the restart signal information to the ON state even while the motion program is in operation, and thus waits for the completion of the motion program operation. In addition, a continuous and efficient motion program restart operation can be executed, and after the motion program operation is completed, the restart signal is received and the restart signal information can be changed to the ON state. In this case, the motion program can be restarted at a desired timing.

実施の形態3.
図11は、実施の形態3に係る位置決め制御装置を示したブロック図である。図11において、この位置決め制御装置は、制御対象機器となるサーボモータ13と、サーボモータ13の位置および速度を検出するエンコーダ14と、コンベア等の駆動軸(図示せず)に取り付けて速度を検出するエンコーダ23と、サーボモータ13を駆動させるサーボアンプ11と、サーボアンプ11にサーボモータ13を駆動させるための駆動信号を送信するモーション制御部5と、予め定められたシーケンスプログラムに基づいてモーション制御部5に制御信号を送信するシーケンス制御部1と、から構成される。
Embodiment 3 FIG.
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 servo motor 13 to be controlled, an encoder 14 for detecting the position and speed of the servo motor 13, and a drive shaft (not shown) such as a conveyor. Encoder 23, servo amplifier 11 that drives servo motor 13, motion control unit 5 that transmits a drive signal for causing servo amplifier 11 to drive servo motor 13, and motion control based on a predetermined sequence program And a sequence control unit 1 that transmits a control signal to the unit 5.

また、シーケンス制御部1は、図2に示すようなシーケンスプログラムを格納するシーケンスプログラム部3と、そのシーケンスプログラム部3に格納されたシーケンスプログラムに基づいて起動信号等を生成する制御部2と、制御部2において生成された起動信号等をモーション制御部5に送信するインターフェース部4と、から構成される。   The sequence control unit 1 includes a sequence program unit 3 that stores a sequence program as shown in FIG. 2, a control unit 2 that generates an activation signal and the like based on the sequence program stored in the sequence program unit 3, And an interface unit 4 that transmits an activation signal or the like generated in the control unit 2 to the motion control unit 5.

また、モーション制御部5は、シーケンス制御部1(詳しくはインターフェース部4)から送信される起動信号等を受信するインターフェース部8と、図12に示すようなモーションプログラムを格納するモーションプログラム部9と、インターフェース部8において受信した起動信号およびモーションプログラム部9に格納されたモーションプログラムに基づいて駆動信号を生成する制御部6と、制御部6において生成された駆動信号をサーボアンプ11に送信するインターフェース部10と、エンコーダ23によって検出された速度に基づくパルス数を入力するインターフェース部24と、インターフェース部24において受信したパルス数等を記憶するメモリ7と、から構成される。なお、図12のモーションプログラムは、ユーザにより周辺機器であるキーボード等を介して入力設定されるプログラムの一例である。   The motion control unit 5 includes an interface unit 8 that receives an activation signal transmitted from the sequence control unit 1 (specifically, the interface unit 4), and a motion program unit 9 that stores a motion program as shown in FIG. The control unit 6 that generates a drive signal based on the activation signal received in the interface unit 8 and the motion program stored in the motion program unit 9 and the interface that transmits the drive signal generated in the control unit 6 to the servo amplifier 11 The unit 10 includes an interface unit 24 for inputting the number of pulses based on the speed detected by the encoder 23, and a memory 7 for storing the number of pulses received by the interface unit 24. The motion program in FIG. 12 is an example of a program that is input and set by the user via a keyboard or the like that is a peripheral device.

また、サーボアンプ11は、モーション制御部5(詳しくはインターフェース部10)から送信される駆動信号を受信するインターフェース部12を備え、インターフェース部12において受信した駆動信号と、エンコーダ14において検出された位置信号および速度信号と、からサーボモータ13を駆動する。   The servo amplifier 11 includes an interface unit 12 that receives a drive signal transmitted from the motion control unit 5 (more specifically, the interface unit 10). The drive signal received by the interface unit 12 and the position detected by the encoder 14 The servo motor 13 is driven from the signal and the speed signal.

つぎに、この位置決め制御装置の動作を説明する。まず、シーケンス制御部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 sequence control unit 1, the control unit 2 reads the sequence program shown in FIG. 2 from the sequence program unit 3 in which the sequence program is stored. Here, the control unit 2 determines whether or not the operation condition in the read sequence program is satisfied, and when the operation condition is satisfied, a program number signal indicating the number of the motion program to be executed (here, “No1”) and An activation signal is generated and transmitted to the interface unit 4. The interface unit 4 receives the program number signal and the activation signal transmitted from the control unit 2, and transmits these signals to the motion control unit 5 (specifically, the interface unit 8).

続くモーション制御部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 motion control unit 5 is the same as the processing shown in the flowcharts of FIGS. 4 and 5 described above, and thus the description thereof is omitted. Here, specific processing based on the motion program shown in FIG. 12 will be described with reference to FIG. In step S202 of FIG. 5, the control unit 6 of the motion control unit 5 decodes the motion program shown in FIG. 12 as follows.
INC-1 POINT TO POINT incremental value command positioning operation Axis 1,1000. Position the shaft 1 at a position of 1000 mm in the + direction from the current position. Feed rate = 100mm / rev
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 memory 7 as shown in FIG. As described above, since the determination count value (described later) calculated by using these values is specified in the motion program, the determination count value can be set for each motion program, and can be set according to the control content indicated by the motion program. This makes it possible to perform optimal synchronized operation of controlled devices.

制御部6は、図12に示すモーションプログラムに基づいて、特に軸1に対応したサーボアンプ11(詳しくは、インターフェース部12)に対して、軸1を現在位置から+方向へ1000mmの位置に送り速度100mm/revでの位置決めを行うことを示す駆動信号を送信する。サーボアンプ11は、インターフェース部12において駆動信号を受信すると、サーボモータ13を受信した駆動信号の示す速度で目標位置まで回転させる。   Based on the motion program shown in FIG. 12, the control unit 6 sends the shaft 1 to the position of 1000 mm in the + direction from the current position to the servo amplifier 11 (specifically, the interface unit 12) corresponding to the shaft 1 in particular. A drive signal indicating that positioning is performed at a speed of 100 mm / rev is transmitted. When the servo amplifier 11 receives the drive signal at the interface unit 12, the servo amplifier 11 rotates the servo motor 13 to the target position at the speed indicated by the received drive signal.

この回転動作が実行されている間に、モーション制御部5の制御部6は、エンコーダ23において、ある一定時間に検出されたパルス数(以下、エンコーダ検出値と称する)をインターフェース部24から読み込む(ステップS401)。このエンコーダ検出値は、コンベア等の駆動軸(以下、コンベア駆動軸と称する)の回転速度を表す。なお、このエンコーダ検出値を検出するためにパルス数を計測した時間(上記した一定時間)は、例えば数ミリ秒といった十分短い時間である。   While this rotation operation is being executed, the control unit 6 of the motion control unit 5 reads the number of pulses detected in the encoder 23 at a certain time (hereinafter referred to as encoder detection value) from the interface unit 24 ( Step S401). This encoder detection value represents the rotational speed of a drive shaft such as a conveyor (hereinafter referred to as a conveyor drive shaft). It should be noted that the time for measuring the number of pulses for detecting the encoder detection value (the above-mentioned fixed time) is a sufficiently short time such as several milliseconds, for example.

つぎに、読み込んだエンコーダ検出値を、図14に示すように、メモリ7に今回値として書き込む(ステップS402)。すなわち、今回値は、最新のエンコーダ検出値を示す。そして、今回値と前回に読み込まれたエンコーダ検出値(前回値)とを以下の式により減算することでΔPを算出する(ステップS403)。
ΔP=今回値−前回値
Next, the read encoder detection value is written in the memory 7 as the current value as shown in FIG. 14 (step S402). That is, the current value indicates the latest encoder detection value. Then, ΔP is calculated by subtracting the current value and the previously detected encoder detection value (previous value) by the following equation (step S403).
Δ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 memory 7 in the same manner as the current value. After the process in step S403, the value indicated by the current value is set as the previous value for the next process (step S404).

つぎに、あるタイミングから現在において、コンベア駆動軸の加減速増減分に相当するパルス数の累積値を示す変位カウント値を求める(ステップ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 memory 7, a determination count value is calculated as shown in the following equation.
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 servo motor 13. decide.

続いて、ステップ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 servo motor 13.

ステップ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 encoder 23 by multiplying this by the feed speed F set in the servo motor 13. Rotational speed increase / decrease amount ΔL for following the rotational speed of the conveyor drive shaft is obtained.

つぎに、ステップ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 interface unit 10 as a servo amplifier command value. The interface unit 10 transmits the received ΔL signal to the servo amplifier 11 (specifically, the interface unit 12) (step S410), and the servo amplifier 11 drives the servo motor 13 at a feed rate increased or decreased based on the ΔL signal. Let Thereby, the rotational drive of the servomotor 13 synchronized with the operation speed of different drive systems, such as a conveyor drive shaft, is achieved.

ステップ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に係る位置決め制御装置の概略構成を示すブロック図である。1 is a block diagram illustrating a schematic configuration of a positioning control device according to a first embodiment. 実施の形態1に係る位置決め制御装置におけるシーケンスプログラムの例を示した図である。FIG. 3 is a diagram illustrating an example of a sequence program in the positioning control device according to the first embodiment. 実施の形態1に係る位置決め制御装置におけるモーションプログラムの例を示した図である。6 is a diagram illustrating an example of a motion program in the positioning control device according to Embodiment 1. FIG. 実施の形態1に係る位置決め制御装置の動作を示すフローチャートである。3 is a flowchart showing an operation of the positioning control apparatus according to the first embodiment. 実施の形態1に係る位置決め制御装置の動作を示すフローチャートである。3 is a flowchart showing an operation of the positioning control apparatus according to the first embodiment. 実施の形態1に係る位置決め制御装置においてメモリに格納される値を説明する図である。It is a figure explaining the value stored in memory in the positioning control apparatus which concerns on Embodiment 1. FIG. 実施の形態2に係る位置決め制御装置の概略構成を示すブロック図である。FIG. 6 is a block diagram illustrating a schematic configuration of a positioning control device according to a second embodiment. 実施の形態2に係る位置決め制御装置におけるモーションプログラムの例を示した図である。It is the figure which showed the example of the motion program in the positioning control apparatus which concerns on Embodiment 2. FIG. 実施の形態2に係る位置決め制御装置の動作を示すフローチャートである。6 is a flowchart showing the operation of the positioning control device according to the second embodiment. 実施の形態2に係る位置決め制御装置においてメモリに格納される値を説明する図である。It is a figure explaining the value stored in memory in the positioning control apparatus which concerns on Embodiment 2. FIG. 実施の形態3に係る位置決め制御装置の概略構成を示すブロック図である。FIG. 10 is a block diagram illustrating a schematic configuration of a positioning control device according to a third embodiment. 実施の形態3に係る位置決め制御装置におけるモーションプログラムの例を示した図である。FIG. 10 is a diagram illustrating an example of a motion program in a positioning control device according to a third embodiment. 実施の形態3に係る位置決め制御装置の動作を示すフローチャートである。10 is a flowchart showing the operation of the positioning control apparatus according to the third embodiment. 実施の形態3に係る位置決め制御装置においてメモリに格納される値を説明する図である。It is a figure explaining the value stored in memory in the positioning control apparatus which concerns on Embodiment 3. FIG. 従来の位置決め制御装置における概略構成を示すブロック図である。It is a block diagram which shows schematic structure in the conventional positioning control apparatus. 従来の位置決め制御装置におけるシーケンスプログラムの例を示した図である。It is the figure which showed the example of the sequence program in the conventional positioning control apparatus. 従来の位置決め制御装置におけるモーションプログラムの例を示した図である。It is the figure which showed the example of the motion program in the conventional positioning control apparatus. 従来の位置決め制御装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the conventional positioning control apparatus. 従来の位置決め制御装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the conventional positioning control apparatus. 従来の位置決め制御装置の他の例における概略構成を示したブロック図である。It is the block diagram which showed schematic structure in the other example of the conventional positioning control apparatus. 従来の位置決め制御装置の他の例におけるモーションプログラムの例を示した図である。It is the figure which showed the example of the motion program in the other example of the conventional positioning control apparatus. 従来の位置決め制御装置の他の例の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the other example of the conventional positioning control apparatus. 従来の位置決め制御装置の他の例においてメモリに格納される値を説明する図である。It is a figure explaining the value stored in memory in the other example of the conventional positioning control apparatus.

符号の説明Explanation of symbols

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.
前記データ記憶部のデータとして、前記駆動指令を出力するタイミングを判定するための判定カウント値を計算するために用いる定数値を記憶し、前記モーション制御部の第2の制御部は、前記速度検出部において検出される駆動速度と前記定数値を用いて判定カウント値を計算し、前記速度検出部において検出される駆動速度から前記同期対象機器の加減速量を算出し、さらに当該加減速量を所定の期間の間累積した変位カウント値を算出して、前記変位カウント値が前記判定カウント値を超えた時点に、前記駆動指令を出力することを特徴とする請求項1に記載の位置決め制御装置。   A constant value used to calculate a determination count value for determining the timing of outputting the drive command is stored as data in the data storage unit, and a second control unit of the motion control unit is configured to detect the speed detection A determination count value is calculated using the driving speed detected by the unit and the constant value, an acceleration / deceleration amount of the synchronization target device is calculated from the driving speed detected by the speed detection unit, and the acceleration / deceleration amount is further calculated. The positioning control device according to claim 1, wherein a displacement count value accumulated for a predetermined period is calculated, and the drive command is output when the displacement count value exceeds the determination count value. . 前記判定カウント値は、モーションプログラムにおいて示されることを特徴とする請求項2に記載の位置決め制御装置。   The positioning control device according to claim 2, wherein the determination count value is indicated in a motion program. 前記モーション制御部は、前記駆動指令として、前記速度検出部において検出される駆動速度から算出される前記同期対象機器の加減速量と前記位置決め指令の目標速度とを用いて生成する速度増減信号を出力することを特徴とする請求項1〜3のいずれか一つに記載の位置決め制御装置。   The motion control unit generates a speed increase / decrease signal generated using the acceleration / deceleration amount of the synchronization target device calculated from the drive speed detected by the speed detection unit and the target speed of the positioning command as the drive command. The positioning control device according to claim 1, wherein the positioning control device outputs the positioning control device.
JP2004133049A 2004-04-28 2004-04-28 Positioning control device Expired - Fee Related JP4219298B2 (en)

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)

* Cited by examiner, † Cited by third party
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

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