JP7841331B2 - Drivers and drive systems - Google Patents

Drivers and drive systems

Info

Publication number
JP7841331B2
JP7841331B2 JP2022062027A JP2022062027A JP7841331B2 JP 7841331 B2 JP7841331 B2 JP 7841331B2 JP 2022062027 A JP2022062027 A JP 2022062027A JP 2022062027 A JP2022062027 A JP 2022062027A JP 7841331 B2 JP7841331 B2 JP 7841331B2
Authority
JP
Japan
Prior art keywords
driver
time
command
start time
control
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.)
Active
Application number
JP2022062027A
Other languages
Japanese (ja)
Other versions
JP2023152086A (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.)
Omron Corp
Original Assignee
Omron 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 Omron Corp filed Critical Omron Corp
Priority to JP2022062027A priority Critical patent/JP7841331B2/en
Publication of JP2023152086A publication Critical patent/JP2023152086A/en
Application granted granted Critical
Publication of JP7841331B2 publication Critical patent/JP7841331B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Control Of Multiple Motors (AREA)

Description

本発明は、ドライバ及びドライブシステムに関する。 This invention relates to a driver and a drive system.

ツールから取得した開始時刻情報が示す時刻に動作するように複数の軸を同期して制御する多軸制御システムや、指定された絶対時間と内部タイマーとが一致するタイミングでモータを駆動するシステムが提案されている(例えば、特許文献1、2参照)。 Multi-axis control systems that synchronously control multiple axes to operate at the time indicated by the start time information obtained from a tool, and systems that drive motors at timings where a specified absolute time coincides with an internal timer have been proposed (see, for example, Patent Documents 1 and 2).

国際公開2020/202568号International Publication No. 2020/202568 特開2004-110359号公報Japanese Patent Publication No. 2004-110359

ドライバに対して所望の時間に指令信号にしたがった制御を実行させる場合、上位装置から動作開始時刻を指定して指令信号をドライバに送信することが考えられる。ここで、動作開始時刻を過ぎたタイミングで当該指令信号をドライバが受信した場合には、指定された動作開始時刻に指令信号にしたがった制御を実行することはできない。このような場合にエラーが通知されないと、上位装置は指令信号にしたがった制御が実行されたか否か把握できなくなる。 To instruct a driver to execute control according to a command signal at a desired time, one approach is to send a command signal to the driver from a higher-level device specifying the start time. However, if the driver receives the command signal after the specified start time, it cannot execute the control according to the command signal at that time. If no error is reported in such a case, the higher-level device will be unable to determine whether or not the control according to the command signal was executed.

開示の技術の1つの側面は、指定された動作開始時刻におけるモータ制御不可の場合に、上位装置に通知できるドライバ及びドライブシステムを提供することを目的とする。 One aspect of the disclosed technology aims to provide a driver and drive system that can notify a higher-level device if motor control is impossible at a specified start time.

開示の技術の1つの側面は、次のようなドライバによって例示される。本ドライバは、上位装置から動作開始時刻の指定及びモータの制御に係る制御指令を含む指令信号を受信する受信部と、上記指令信号を受信した受信時刻から上記動作開始時刻までの時間が所定の閾値以上である場合には、上記動作開始時刻になると、上記制御指令にしたがって上記モータを制御する制御部と、上記受信時刻から上記動作開始時刻までの時間が上記所定の閾値未満である場合には、上記上位装置にエラーを通知する通知部と、を備える。 One aspect of the disclosed technology is exemplified by the following driver: This driver comprises a receiving unit that receives a command signal from a higher-level device, including a control command specifying the start time of operation and a control command related to motor control; a control unit that controls the motor according to the control command when the start time of operation occurs, provided that the time from the time of receiving the command signal to the start time of operation is greater than or equal to a predetermined threshold; and a notification unit that notifies the higher-level device of an error if the time from the time of receiving the command signal to the start time of operation is less than the predetermined threshold.

上記ドライバによれば、上記受信時刻と上記動作開始時刻までの時間が上記所定の閾値以上である場合には、指定された動作開始時刻に上記制御指令にしたがったモータの制御を実現することができる。そして、上記ドライバは、上記受信時刻と上記動作開始時刻までの時間が上記所定の閾値未満である場合には上記動作開始時刻における上記制御信号にしたがった上記モータの制御は不可と判定し、上記上位装置にエラーを通知する。そのため、上記ドライバによれば、指定された動作開始時刻におけるモータ制御不可の場合に、上記上位装置に通知することができる。ここで、所定の閾値は、指令信号を受信してからモータの駆動開始までに要する時間を基に適宜決定されてもよい。また、所定の閾値は、上位装置とドライバ間における通信遅延を考慮して決定されてもよい。 According to the above driver, if the time between the reception time and the start time of operation is greater than or equal to the predetermined threshold, the driver can control the motor according to the control command at the specified start time. If the time between the reception time and the start time of operation is less than the predetermined threshold, the driver determines that motor control according to the control signal at the start time is impossible and notifies the higher-level device of the error. Therefore, the driver can notify the higher-level device if motor control is impossible at the specified start time. Here, the predetermined threshold may be appropriately determined based on the time required from receiving the command signal to the start of motor operation. Furthermore, the predetermined threshold may be determined considering the communication delay between the higher-level device and the driver.

上記ドライバは、次の特徴を備えてもよい。上記動作開始時刻は、第1の動作開始時刻と第2の動作開始時刻と、を含み、上記制御指令は、上記第1の動作開始時刻に開始させる第1の制御指令と、上記第2の開始時刻に開始させる第2の制御指令と、を含み、上記制御部は、上記第1の動作開始時刻になると、上記第1の制御指令にしたがって上記モー
タを制御し、上記第2の動作開始時刻になると、上記第2の制御指令にしたがって上記モータを制御する。上記ドライバは、このような特徴を備えることで、モータに対して複数の動作を実行させるシーケンス処理を実現することができる。
The above driver may have the following features: The operation start time includes a first operation start time and a second operation start time; the control command includes a first control command to be started at the first operation start time and a second control command to be started at the second start time; the control unit controls the motor according to the first control command when the first operation start time arrives, and controls the motor according to the second control command when the second operation start time arrives. By having these features, the driver can realize sequence processing to execute multiple operations on the motor.

上記ドライバは、次の特徴を備えてもよい。上記第2の動作開始時刻は上記第1の動作開始時刻よりも後の時刻であり、上記制御部は、上記第1の制御指令にしたがった上記モータの制御が終了する前の時刻を上記第2の動作開始時刻が示す場合には、上記第2の制御指令にしたがった上記モータの制御の実行を禁止する。そして、上記通知部は、上記第2の制御指令にしたがった上記モータの制御の実行が禁止されると、上記上位装置にエラーを通知してもよい。上記ドライバは、このような特徴を備えることで、第1の制御指令にしたがった制御を中断して第2の制御指令にしたがった制御が実行されることが抑制される。また、上記第2の制御指令にしたがった上記モータの制御の実行が禁止されたときにエラーが通知されることで、上位装置は第2の制御指令にしたがった制御が禁止されたことを把握できる。 The above driver may have the following features: The second operation start time is later than the first operation start time, and if the second operation start time indicates a time before the motor control according to the first control command has finished, the control unit prohibits the execution of the motor control according to the second control command. The notification unit may then notify the higher-level device of an error when the execution of the motor control according to the second control command is prohibited. By having these features, the driver prevents the interruption of control according to the first control command to execute control according to the second control command. Furthermore, the notification of an error when the execution of the motor control according to the second control command is prohibited allows the higher-level device to understand that control according to the second control command has been prohibited.

開示の技術は、上記ドライバを複数備えたドライブシステムの側面から把握することも可能である。 The disclosed technology can also be understood from the perspective of a drive system equipped with multiple of the above drivers.

開示の技術によれば、指定された動作開始時刻におけるモータ制御不可の場合に、上位装置に通知することができる。 According to the disclosed technology, if motor control becomes impossible at a specified start time, the higher-level device can be notified.

図1は、実施形態に係るサーボシステムの一例を示す図である。Figure 1 shows an example of a servo system according to the present invention. 図2は、PLCが有する機能部の概略構成を示す図である。Figure 2 shows a schematic diagram of the functional components of a PLC. 図3は、サーボドライバが有する機能部の概略構成を示す第1の図である。Figure 3 is the first diagram showing the schematic configuration of the functional parts of the servo driver. 図4は、サーボドライバが有する機能部の概略構成を示す第2の図である。Figure 4 is a second diagram showing the schematic configuration of the functional parts of the servo driver. 図5は、実施形態に係るサーボシステムによる動作開始時刻を指定した指令信号にしたがった制御を模式的に示す第1の図である。Figure 5 is a first diagram schematically showing control according to a command signal specifying the start time of operation by the servo system according to the embodiment. 図6は、実施形態に係るサーボシステムによる動作開始時刻を指定した指令信号にしたがった制御を模式的に示す第2の図である。Figure 6 is a second diagram schematically showing control according to a command signal specifying the start time of operation by the servo system according to the embodiment. 図7は、実施形態におけるサーボドライバの処理フローの一例を示す第1の図である。Figure 7 is the first diagram showing an example of the processing flow of a servo driver in an embodiment. 図8は、実施形態におけるサーボドライバの処理フローの一例を示す第2の図である。Figure 8 is a second diagram showing an example of the processing flow of a servo driver in an embodiment. 図9は、第1変形例に係るサーボシステムの一例を示す図である。Figure 9 shows an example of a servo system according to the first modified example. 図10は、第1変形例に係るサーボシステムによる動作開始時刻を指定信号にしたがった制御を模式的に示す図である。Figure 10 is a schematic diagram showing the control of the start time of operation by the servo system according to the first modified example, in accordance with a specified signal. 図11は、第2変形例に係るサーボシステムの一例を示す図である。Figure 11 shows an example of a servo system according to the second modified example. 図12は、第2変形例に係るサーボシステムによる動作開始時刻を指定した指令信号にしたがった制御を模式的に示す図である。Figure 12 schematically shows the control of a servo system according to a second modified example, in accordance with a command signal specifying the start time of operation. 図13は、第3変形例において動作開始時刻を指定した複数の指令信号の夫々にしたがった制御を模式的に示す図である。Figure 13 schematically shows the control according to each of the multiple command signals specifying the start time of operation in the third modified example. 図14は、第3変形例における処理フローの一例を示す図である。Figure 14 shows an example of the processing flow in the third modified example. 図15は、第4変形例に係るサーボシステムの一例を示す図である。Figure 15 shows an example of a servo system according to the fourth modified example. 図16は、第4変形例における所定のオフセットの算出方法の一例を示すシーケンス図である。Figure 16 is a sequence diagram showing an example of a method for calculating a predetermined offset in the fourth modified example.

<実施形態>
以下、図面を参照して実施形態について説明する。図1は、実施形態に係るサーボシステム100の一例を示す図である。サーボシステム100は、PLC1、サーボドライバ2a、サーボドライバ2b、サーボモータ3a、3b、ねじ軸4a、4b、精密ステージ5a、5b、テーブル6、産業用ネットワークN1及びドライバ間通信線N2を含む。サーボシステム100は、例えば、サーボドライバ2a、2bが協働してテーブル6を変位させるガントリ機構のシステムである。
<Implementation>
Embodiments will be described below with reference to the drawings. Figure 1 is a diagram showing an example of a servo system 100 according to an embodiment. The servo system 100 includes a PLC 1, a servo driver 2a, a servo driver 2b, servo motors 3a and 3b, screw shafts 4a and 4b, precision stages 5a and 5b, a table 6, an industrial network N1, and an inter-driver communication line N2. The servo system 100 is, for example, a gantry mechanism system in which servo drivers 2a and 2b cooperate to displace the table 6.

PLC1及びサーボドライバ2aは、産業用ネットワークN1によって接続される。サーボドライバ2aとサーボドライバ2bとは、ドライバ間通信線N2によって接続される。サーボモータ3aの出力軸にはねじ軸4aが接続される。サーボモータ3bの出力軸にはねじ軸4bが接続される。ねじ軸4aとねじ軸4bとは平行に配置される。ねじ軸4aには精密ステージ5aが配置される。ねじ軸4bには精密ステージ5bが配置される。テーブル6は、精密ステージ5a、5bによって支持される。サーボモータ3a、3bの駆動により、テーブル6がねじ軸4a、4bの軸方向に沿って変位する。サーボシステム100は、例えば、ガントリ機構のサーボシステムである。 The PLC 1 and servo driver 2a are connected by an industrial network N1. Servo driver 2a and servo driver 2b are connected by an inter-driver communication line N2. A screw shaft 4a is connected to the output shaft of servo motor 3a. A screw shaft 4b is connected to the output shaft of servo motor 3b. Screw shafts 4a and 4b are arranged parallel to each other. A precision stage 5a is mounted on screw shaft 4a. A precision stage 5b is mounted on screw shaft 4b. The table 6 is supported by precision stages 5a and 5b. Driven by servo motors 3a and 3b, the table 6 is displaced along the axial direction of screw shafts 4a and 4b. The servo system 100 is, for example, a servo system for a gantry mechanism.

PLC1は、サーボドライバ2aに対する指令信号を産業用ネットワークN1を介して出力する。PLC1は、予め準備されたプログラムに従う処理を実行することによって、例えば、サーボドライバ2a、2bの監視装置として機能する。産業用ネットワークN1は、例えば、TCP/IPネットワークである。PLC1は、産業用ネットワークN1によって、サーボドライバ2aに接続される。PLC1は、「上位装置」の一例である。 PLC1 outputs command signals to the servo driver 2a via the industrial network N1. PLC1 functions as a monitoring device for servo drivers 2a and 2b by executing processes according to a pre-prepared program. The industrial network N1 is, for example, a TCP/IP network. PLC1 is connected to the servo driver 2a via the industrial network N1. PLC1 is an example of a "higher-level device."

サーボドライバ2aは、PLC1からの指令信号を産業用ネットワークN1を介して受ける。サーボドライバ2aは、PLC1からの指令信号に応じた動作をサーボモータ3bにさせるドライバ間指令を、ドライバ間通信線N2を介して、サーボドライバ2bに対して出力する。 The servo driver 2a receives command signals from the PLC 1 via the industrial network N1. The servo driver 2a outputs inter-driver commands to the servo motor 3b via the inter-driver communication line N2, instructing the servo motor 3b to perform actions corresponding to the command signals from the PLC 1.

さらにサーボドライバ2a、2bは、対応するサーボモータ3a、3bからフィードバック信号を受ける。また、サーボドライバ2a、2bは、サーボモータ3a、3bに対して駆動電流を供給する。サーボドライバ2a、2bにおいては、それぞれ、速度検出器、トルク検出器、電力生成器等を利用したフィードバック制御を行うサーボ系が形成されており、これらの信号を利用して、サーボモータ3a、3bをサーボ制御し駆動する。サーボドライバ2aにはサーボモータ3aが対応付けられ、サーボドライバ2bにはサーボモータ3bが対応付けられる。サーボドライバ2a、2bは、「ドライバ」の一例である。サーボドライバ2aは、「第1のドライバ」の一例である。サーボドライバ2bは、「第2のドライバ」の一例である。 Furthermore, servo drivers 2a and 2b receive feedback signals from their corresponding servo motors 3a and 3b. Servo drivers 2a and 2b also supply drive current to servo motors 3a and 3b. Each servo driver 2a and 2b has a servo system that performs feedback control using a speed sensor, torque sensor, power generator, etc., and uses these signals to servo-control and drive servo motors 3a and 3b. Servo motor 3a is associated with servo driver 2a, and servo motor 3b is associated with servo driver 2b. Servo drivers 2a and 2b are examples of "drivers." Servo driver 2a is an example of a "first driver." Servo driver 2b is an example of a "second driver."

サーボモータ3a、3bは、例えば、ACサーボモータである。サーボモータ3a、3bは、サーボドライバ2a、2bから供給された駆動電流を受けて駆動される。サーボモータ3a、3bは、出力軸の動作を検出して、検出された動作を示すフィードバック信号を生成する。フィードバック信号はサーボドライバ2a、2bに出力される。フィードバック信号には、例えば、サーボモータ3a、3bの出力軸の回転位置(角度)についての情報、出力軸の回転速度についての情報、出力軸の回転方向についての情報等の出力軸の変位に係る情報が含まれる。サーボモータ3a、3bは、「モータ」の一例である。 The servo motors 3a and 3b are, for example, AC servo motors. The servo motors 3a and 3b are driven by the drive current supplied from the servo drivers 2a and 2b. The servo motors 3a and 3b detect the movement of their output shafts and generate feedback signals indicating the detected movement. These feedback signals are output to the servo drivers 2a and 2b. The feedback signals include information related to the displacement of the output shafts, such as information about the rotational position (angle) of the output shafts, the rotational speed of the output shafts, and the rotational direction of the output shafts. The servo motors 3a and 3b are examples of "motors."

なお、PLC1、サーボドライバ2a、2bは、図示しない時刻サーバによって、時刻同期がされている。時刻サーバとしては、例えば、Network Time Protocol(NTP)サーバである。 Furthermore, the PLC1 and servo drivers 2a and 2b are synchronized by a time server (not shown). The time server is, for example, a Network Time Protocol (NTP) server.

図2は、PLC1が有する機能部の概略構成を示す図である。PLC1は、演算装置、
記憶装置等を有するコンピュータとみなすことができる。図2に示す機能部は、PLC1において所定のプログラム等が実行されることで実現される。PLC1は、指令部11、取得部12及び出力部13を有するが、これら以外の機能部を有していても構わない。
Figure 2 is a diagram showing the schematic configuration of the functional parts of PLC1. PLC1 is a computing device,
It can be considered a computer with a memory device, etc. The functional unit shown in Figure 2 is realized by the execution of a predetermined program, etc., in the PLC 1. The PLC 1 has a command unit 11, an acquisition unit 12, and an output unit 13, but it may also have other functional units.

指令部11は、サーボモータ3a及びサーボモータ3bを駆動させる指令信号をサーボドライバ2aに対して出力する。指令信号は、例えば、動作開始時刻の指定、サーボモータ3a、3bの出力軸の回転速度、回転方向、回転量等の指定を含む。動作開始時刻は、例えば、PLC1のユーザによって指定される。 The command unit 11 outputs command signals to the servo driver 2a to drive servo motors 3a and 3b. These command signals include, for example, the specification of the start time, the rotation speed, rotation direction, and rotation amount of the output shafts of servo motors 3a and 3b. The start time is specified, for example, by the user of PLC 1.

取得部12は、サーボドライバ2aからの通知を取得する。通知は、例えば、動作開始時刻に指令信号にしたがった処理を実行できなかった場合のエラー通知を挙げることができる。出力部13は、サーボドライバ2aからのエラー通知が取得部12によって受信されると、当該エラー通知を出力する。当該エラー通知の出力としては、例えば、ディスプレイへの表示、メール送信、プリンタによる出力、警報音の出力等を挙げることができる。 The acquisition unit 12 acquires notifications from the servo driver 2a. These notifications may include, for example, error notifications indicating that processing according to the command signal could not be executed at the start time of operation. When the acquisition unit 12 receives an error notification from the servo driver 2a, the output unit 13 outputs the error notification. Examples of output for this error notification include display on a screen, sending an email, printing, and outputting an alarm sound.

図3は、サーボドライバ2aが有する機能部の概略構成を示す図である。サーボドライバ2aは、演算装置、記憶装置等を有するコンピュータとみなすことができる。図3に示す機能部は、サーボドライバ2aにおいて所定のプログラム等が実行されることで実現される。サーボドライバ2aは、受信部21、判定部22、ドライバ間指令部23、制御部24、通知部25及び記憶部26を有するが、これら以外の機能部を有していても構わない。 Figure 3 shows a schematic configuration of the functional components of the servo driver 2a. The servo driver 2a can be considered as a computer with a processing unit, memory, etc. The functional components shown in Figure 3 are realized by the execution of a predetermined program in the servo driver 2a. The servo driver 2a includes a receiving unit 21, a determination unit 22, an inter-driver command unit 23, a control unit 24, a notification unit 25, and a storage unit 26, but it may also have other functional components.

受信部21は、PLC1からの指令信号を産業用ネットワークN1を介して受信する。判定部22は、受信部21による指令信号の受信時刻から受信された指令信号に含まれる動作開始時刻までの時間が、所定のオフセット以上であるか否かを判定する。ここで、所定のオフセットは、指令信号を受信してからサーボモータ3a、3bの駆動開始するまでに要する時間を基に適宜決定される。受信部21は、「受信部」及び「第1の受信部」の一例である。 The receiving unit 21 receives command signals from the PLC 1 via the industrial network N1. The determination unit 22 determines whether the time from the time of receiving the command signal by the receiving unit 21 to the start time of the operation included in the received command signal is greater than or equal to a predetermined offset. Here, the predetermined offset is appropriately determined based on the time required from receiving the command signal until the servo motors 3a and 3b start driving. The receiving unit 21 is an example of the "receiving unit" and the "first receiving unit."

ドライバ間指令部23は、判定部22によって上記受信時刻から上記動作開始時刻までの時間が所定のオフセット以上であると判定された指令信号について、当該指令信号に含まれる動作開始時刻とサーボモータ3bに対する指令を含むドライバ間指令をサーボドライバ2bに出力する。ドライバ間指令部23は、「ドライバ間指令部」の一例である。 The driver-to-driver command unit 23 outputs a driver-to-driver command to the servo driver 2b, including the operation start time and the command for the servo motor 3b, for command signals whose time from the reception time to the operation start time is determined by the determination unit 22 to be greater than or equal to a predetermined offset. The driver-to-driver command unit 23 is an example of a "driver-to-driver command unit".

制御部24は、判定部22によって上記受信時刻から上記動作開始時刻までの時間が所定のオフセット以上であると判定された指令信号を記憶部26に記憶させる。制御部24は、記憶部26に記憶させた指令信号のうち、現在時刻と動作開始時刻とが一致する指令信号にしたがってサーボモータ3aを駆動する。制御部24は、「制御部」の一例である。所定のオフセットは、「所定の閾値」の一例である。 The control unit 24 stores in the storage unit 26 any command signals that the determination unit 22 has determined to have a time interval of at least a predetermined offset between the reception time and the start time of operation. The control unit 24 drives the servo motor 3a according to the command signals stored in the storage unit 26 that match the current time and the start time of operation. The control unit 24 is an example of a "control unit." The predetermined offset is an example of a "predetermined threshold."

通知部25は、判定部22によって上記受信時刻から上記動作開始時刻までの時間が所定のオフセット未満であると判定された指令信号について、動作開始時刻に指令信号にしたがった制御を実行できないとのエラー通知を、PLC1に対して産業用ネットワークN1を介して出力する。通知部25は、「通知部」の一例である。 The notification unit 25 outputs an error notification to the PLC 1 via the industrial network N1, indicating that control cannot be executed according to the command signal at the operation start time, for command signals whose time from the reception time to the operation start time is determined by the determination unit 22 to be less than a predetermined offset. The notification unit 25 is an example of a "notification unit".

記憶部26は、例えば、PLC1から受信した指令信号や、受信部21、判定部22、ドライバ間指令部23、制御部24、通知部25の処理に用いられる各種データ等が記憶される。記憶部26は、例えば、EEPROMである。 The memory unit 26 stores, for example, command signals received from the PLC 1, and various data used for processing by the receiving unit 21, determination unit 22, inter-driver command unit 23, control unit 24, and notification unit 25. The memory unit 26 is, for example, an EEPROM.

図4は、サーボドライバ2bが有する機能部の概略構成を示す図である。サーボドライバ2bは、演算装置、記憶装置等を有するコンピュータとみなすことができる。図4に示す機能部は、サーボドライバ2bにおいて所定のプログラム等が実行されることで実現される。サーボドライバ2bは、受信部221、制御部222及び記憶部223を有するが、これら以外の機能部を有していても構わない。 Figure 4 shows a schematic configuration of the functional components of the servo driver 2b. The servo driver 2b can be considered as a computer with an arithmetic unit, memory device, etc. The functional components shown in Figure 4 are realized by the execution of a predetermined program, etc., in the servo driver 2b. The servo driver 2b has a receiving unit 221, a control unit 222, and a storage unit 223, but it may also have other functional components.

受信部221は、ドライバ間通信線N2を介してサーボドライバ2aからのドライバ間指令を受信する。受信部221は、受信したドライバ間指令を記憶部223に記憶させる。受信部221は、「第2の受信部」の一例である。 The receiving unit 221 receives inter-driver commands from the servo driver 2a via the inter-driver communication line N2. The receiving unit 221 stores the received inter-driver commands in the storage unit 223. The receiving unit 221 is an example of a "second receiving unit."

制御部222は、記憶部223に記憶されたドライバ間指令のうち、現在時刻と動作開始時刻とが一致するドライバ間指令を実行する。制御部222は、「第2の制御部」の一例である。 The control unit 222 executes driver commands stored in the memory unit 223 that match the current time and the operation start time. The control unit 222 is an example of a "second control unit."

記憶部223は、例えば、サーボドライバ2aから受信したドライバ間指令や、受信部221及び記憶部223で実効される処理に用いられる各種データ等が記憶される。記憶部223は、例えば、EEPROMである。 The memory unit 223 stores, for example, inter-driver commands received from the servo driver 2a, and various data used in processing executed by the receiving unit 221 and the memory unit 223. The memory unit 223 is, for example, an EEPROM.

図5は、実施形態に係るサーボシステム100による動作開始時刻を指定した指令信号にしたがった制御を模式的に示す第1の図である。図5では、サーボドライバ2a、2bの夫々について、時間軸tにおいて左から右に時間が経過するものとする。サーボドライバ2aは、受信時刻T1において、PLC1からの指令信号を受信する。そして、PLC1からの指令信号では動作開始時刻として、図中の動作開始時刻T3が指定されている。 Figure 5 is a first diagram schematically illustrating the control performed by the servo system 100 according to the embodiment, following a command signal specifying the start time of operation. In Figure 5, for each of the servo drivers 2a and 2b, time progresses from left to right on the time axis t. Servo driver 2a receives a command signal from PLC1 at reception time T1. The command signal from PLC1 specifies the start time of operation as the start time T3 shown in the figure.

サーボドライバ2aは、受信時刻T1において、PLC1からの指令信号を受信する。指令信号を受信したサーボドライバ2aでは、判定部22による判定が行われる。図5の例では、判定部22による判定によって、受信時刻T1から動作開始時刻T3までの時間が所定のオフセット以上であると判定されるものとする。そのため、ドライバ間指令部23は、PLC1から受信した指令信号に含まれる動作開始時刻とサーボモータ3bに対する指令を含むドライバ間指令をサーボドライバ2bに出力する。 The servo driver 2a receives a command signal from the PLC 1 at reception time T1. Upon receiving the command signal, the servo driver 2a performs a determination using the determination unit 22. In the example shown in Figure 5, the determination unit 22 determines that the time from reception time T1 to operation start time T3 is greater than or equal to a predetermined offset. Therefore, the driver-to-driver command unit 23 outputs a driver-to-driver command to the servo driver 2b, which includes the operation start time and the command for the servo motor 3b, as contained in the command signal received from the PLC 1.

サーボドライバ2bは、受信時刻T2において、サーボドライバ2aからのドライバ間指令を受信する。サーボドライバ2aは、現在時刻が動作開始時刻T3になると、PLC1から受信した指令信号にしたがってサーボモータ3aを駆動する。また、サーボドライバ2bは現在時刻がT3になると、サーボドライバ2aから受信したドライバ間指令にしたがってサーボモータ3bを駆動する。図5では、サーボモータ3aの駆動を台形R1によって模式的に示し、サーボモータ3bの駆動を台形R2によって模式的に示す。図5を参照すると、サーボモータ3aとサーボモータ3bとが同期して駆動されていることが理解できる。 At reception time T2, servo driver 2b receives an inter-driver command from servo driver 2a. When the current time reaches the operation start time T3, servo driver 2a drives servo motor 3a according to the command signal received from PLC1. Similarly, when the current time reaches T3, servo driver 2b drives servo motor 3b according to the inter-driver command received from servo driver 2a. Figure 5 schematically shows the drive of servo motor 3a by trapezoid R1 and the drive of servo motor 3b by trapezoid R2. Referring to Figure 5, it can be understood that servo motors 3a and 3b are driven synchronously.

図6は、実施形態に係るサーボシステム100による動作開始時刻を指定した指令信号にしたがった制御を模式的に示す第2の図である。図6では、図5と同様に、サーボドライバ2a、2bの夫々について、時間軸tにおいて左から右に時間が経過するものとする。サーボドライバ2aは、受信時刻T5において、PLC1からの指令信号を受信する。そして、PLC1からの指令信号では動作開始時刻として、動作開始時刻T4が指定されている。 Figure 6 is a second diagram schematically illustrating the control performed by the servo system 100 according to the embodiment, following a command signal specifying the start time of operation. In Figure 6, as in Figure 5, time progresses from left to right on the time axis t for both servo drivers 2a and 2b. Servo driver 2a receives a command signal from PLC1 at reception time T5. The command signal from PLC1 specifies the start time of operation as T4.

指令信号を受信したサーボドライバ2aでは、判定部22による判定が行われる。図6の例では、判定部22による判定によって、受信時刻T5から動作開始時刻T4までの時間が所定のオフセット未満であると判定されるものとする。そのため、サーボドライバ2
aの通知部25は、動作開始時刻T4に指令信号にしたがった制御を実行できない旨の通知をPLC1に対して出力する。
Upon receiving the command signal, the servo driver 2a performs a determination by the determination unit 22. In the example shown in Figure 6, the determination unit 22 determines that the time from the reception time T5 to the operation start time T4 is less than a predetermined offset. Therefore, the servo driver 2
The notification unit 25 of (a) outputs a notification to the PLC1 at the start time T4 indicating that it is not possible to perform control according to the command signal.

図7は、実施形態におけるサーボドライバ2aの処理フローの一例を示す図である。以下、図7を参照して、サーボドライバ2aの処理フローの一例について説明する。 Figure 7 shows an example of the processing flow of the servo driver 2a in the embodiment. The following description of the example of the processing flow of the servo driver 2a will refer to Figure 7.

S1では、受信部21は、PLC1から指令信号を受信する。S2では、判定部22は、S1で受信した指令信号で指定された動作開始時刻が、S1で指令信号を受信した受信時刻より後か否かを判定する。後の場合(S2でYES)、処理はS3に進められる。後ではない場合(S2でNO)、処理はS6に進められる。 In S1, the receiving unit 21 receives a command signal from the PLC 1. In S2, the determination unit 22 determines whether the operation start time specified by the command signal received in S1 is later than the reception time when the command signal was received in S1. If it is later (YES in S2), the process proceeds to S3. If it is not later (NO in S2), the process proceeds to S6.

S3では、ドライバ間指令部23は、S1で受信した指令信号に含まれる動作開始時刻とサーボモータ3bに対する指令を含むドライバ間指令をサーボドライバ2bに出力する。 In S3, the driver-to-driver command unit 23 outputs a driver-to-driver command to the servo driver 2b, which includes the operation start time and the command for the servo motor 3b, as contained in the command signal received in S1.

S4では、制御部24は、現在時刻が動作開始時刻であるか否かを判定する。動作開始時刻である場合(S4でYES)、処理はS5に進められる。動作開始時刻ではない場合(S4でNO)、S4の処理が繰り返されることで、動作開始時刻まで待機となる。 In S4, the control unit 24 determines whether the current time is the operation start time. If it is the operation start time (YES in S4), the process proceeds to S5. If it is not the operation start time (NO in S4), the process in S4 is repeated, and the system waits until the operation start time.

S5では、制御部24は、S1で受信した指令信号にしたがってサーボモータ3aを駆動する。S6では、通知部25は、動作開始時刻に指令信号にしたがった制御を実行できない旨、PLC1に対して通知する。 In S5, the control unit 24 drives the servo motor 3a according to the command signal received in S1. In S6, the notification unit 25 notifies the PLC 1 that it is unable to perform control according to the command signal at the start time of operation.

図8は、実施形態におけるサーボドライバ2bの処理フローの一例を示す図である。以下、図8を参照して、サーボドライバ2bの処理フローの一例について説明する。 Figure 8 shows an example of the processing flow of the servo driver 2b in the embodiment. The following description of the example of the processing flow of the servo driver 2b will refer to Figure 8.

S11では、受信部221は、サーボドライバ2aからドライバ間指令を受信する。S12では、制御部222は、現在時刻が動作開始時刻であるか否かを判定する。動作開始時刻である場合(S12でYES)、処理はS13に進められる。動作開始時刻ではない場合(S12でNO)、S12の処理が繰り返されることで、動作開始時刻まで待機となる。 In S11, the receiving unit 221 receives an inter-driver command from the servo driver 2a. In S12, the control unit 222 determines whether the current time is the operation start time. If it is the operation start time (YES in S12), the process proceeds to S13. If it is not the operation start time (NO in S12), the process in S12 is repeated, and the system waits until the operation start time.

S13では、制御部222は、S11で受信したドライバ間指令にしたがってサーボモータ3bを駆動する。 In S13, the control unit 222 drives the servo motor 3b according to the driver command received in S11.

本実施形態では、PLC1からの指令にはサーボモータ3a、3bの駆動を開始させる動作開始時刻が含まれる。そして、サーボドライバ2a、2bは、指定された動作開始時刻になると、受信した指令にしたがってサーボモータ3a、3bを駆動する。そのため、同期通信を利用した制御プログラムの構築を行わなくとも、サーボモータ3a、3bを同期させて駆動することができる。 In this embodiment, the command from PLC1 includes the start time for initiating the operation of servo motors 3a and 3b. When the specified start time arrives, servo drivers 2a and 2b drive servo motors 3a and 3b according to the received command. Therefore, the servo motors 3a and 3b can be driven synchronously without the need to construct a control program utilizing synchronous communication.

本実施形態では、PLC1からの指令を受信した受信時刻が、当該指令で指定された動作開始時刻を過ぎている場合には、通知部25がその旨、PLC1に通知する。そのため、PLC1は、指令の再送を行ったり、指令が実行されなかったことをユーザに通知したりする等の対応策を実行することができる。 In this embodiment, if the reception time of a command received from PLC1 has passed the operation start time specified in the command, the notification unit 25 notifies PLC1 of this fact. Therefore, PLC1 can take countermeasures such as resending the command or notifying the user that the command was not executed.

<第1変形例>
実施形態では、サーボドライバ2aとサーボドライバ2bとに対して、同じ時刻で指令を実行させる例について説明した。第1変形例では、サーボドライバ2aとサーボドライバ2bの夫々に対して個別の開始時間を指定して指令を実行させる例について説明する。
実施形態と同一の構成については同一の符号を付し、その説明を省略する。以下、図面を参照して、第1変形例にについて説明する。
<First variation>
In the embodiment, an example was described in which commands are executed at the same time for both servo driver 2a and servo driver 2b. In the first modification, an example is described in which commands are executed by specifying individual start times for each of servo driver 2a and servo driver 2b.
Components identical to those in the embodiment are denoted by the same reference numerals, and their descriptions are omitted. The first modified example will now be described with reference to the drawings.

図9は、第1変形例に係るサーボシステム100aの一例を示す図である。サーボシステム100aは、ねじ軸4aとねじ軸4bとが直交するように配置される点で、サーボシステム100とは異なる。 Figure 9 shows an example of a servo system 100a according to the first modified example. Servo system 100a differs from servo system 100 in that the screw shafts 4a and 4b are arranged orthogonally.

サーボシステム100aでは、ねじ軸4a上に、ねじ軸4aとねじ軸4bとが機械的に接続される。サーボモータ3aが駆動されることで、ねじ軸4aの軸方向にそって、ねじ軸4bが移動する。また、サーボモータ3bが駆動されることで、ねじ軸4bの軸方向に沿って精密ステージ5bが移動する。 In the servo system 100a, screw shafts 4a and 4b are mechanically connected to each other on the screw shaft 4a. When the servo motor 3a is driven, screw shaft 4b moves along the axial direction of screw shaft 4a. Similarly, when the servo motor 3b is driven, the precision stage 5b moves along the axial direction of screw shaft 4b.

サーボシステム100aでは、PLC1からの指令では、サーボドライバ2a、2bの夫々に対して動作開始時刻が指定される。すなわち、サーボシステム100aでは、PLC1からの指令信号には、サーボドライバ2aに対する動作開始時刻とサーボモータ3aを駆動させる指令及びサーボドライバ2bに対する動作開始時刻とサーボモータ3bを駆動させる指令が含まれる。 In the servo system 100a, the command from PLC1 specifies the start time for operation for each of the servo drivers 2a and 2b. That is, in the servo system 100a, the command signal from PLC1 includes the start time for operation for servo driver 2a and a command to drive servo motor 3a, and the start time for operation for servo driver 2b and a command to drive servo motor 3b.

図10は、第1変形例に係るサーボシステム100aによる動作開始時刻を指定信号にしたがった制御を模式的に示す図である。図10では、サーボドライバ2a、2bの夫々について、時間軸tにおいて左から右に時間が経過するものとする。サーボドライバ2aは、受信時刻T6において、PLC1からの指令信号を受信する。そして、PLC1からの指令信号では、サーボモータ3aの動作開始時刻として、図中の動作開始時刻T8が指定されている。また、PLC1からの指令信号では、サーボモータ3bの動作開始時刻として、図中の動作開始時刻T9が指定されている。 Figure 10 schematically illustrates the control of the servo system 100a according to the first modified example, where the start time of operation is specified by a signal. In Figure 10, for each of the servo drivers 2a and 2b, time progresses from left to right on the time axis t. Servo driver 2a receives a command signal from PLC1 at reception time T6. The command signal from PLC1 specifies the start time of operation of servo motor 3a as the start time T8 in the figure. The command signal from PLC1 also specifies the start time of operation of servo motor 3b as the start time T9 in the figure.

サーボドライバ2aは、受信時刻T6において、PLC1からの指令信号を受信する。指令信号を受信したサーボドライバ2aでは、判定部22による判定が行われる。図10の例では判定部22による判定によって受信時刻T6が動作開始時刻T8及び動作開始時刻T9のいずれをも過ぎていないと判定されるので、ドライバ間指令部23は、PLC1から受信した指令信号に含まれるサーボモータ3bの動作開始時刻とサーボモータ3bに対する指令を含むドライバ間指令をサーボドライバ2bに出力する。 At reception time T6, the servo driver 2a receives a command signal from the PLC 1. Upon receiving the command signal, the servo driver 2a performs a determination by the determination unit 22. In the example shown in Figure 10, the determination unit 22 determines that reception time T6 has not passed either the operation start time T8 or the operation start time T9. Therefore, the driver-to-driver command unit 23 outputs a driver-to-driver command to the servo driver 2b, which includes the operation start time of the servo motor 3b and the command for the servo motor 3b, as contained in the command signal received from the PLC 1.

サーボドライバ2aは、受信時刻T7において、サーボドライバ2aからのドライバ間指令を受信する。サーボドライバ2aは、現在時刻が動作開始時刻T8になると、PLC1から受信した指令信号にしたがってサーボモータ3aを駆動する。また、サーボドライバ2bは現在時刻がT9になると、サーボドライバ2aから受信したドライバ間指令にしたがってサーボモータ3bを駆動する。図10では、サーボモータ3aの駆動を台形R3によって模式的に示し、サーボモータ3bの駆動を台形R4によって模式的に示す。図10を参照すると、サーボモータ3aとサーボモータ3bとが互いに異なる時間に駆動されていることが理解できる。 At reception time T7, servo driver 2a receives an inter-driver command from servo driver 2a. When the current time reaches the operation start time T8, servo driver 2a drives servo motor 3a according to the command signal received from PLC1. Similarly, when the current time reaches T9, servo driver 2b drives servo motor 3b according to the inter-driver command received from servo driver 2a. In Figure 10, the drive of servo motor 3a is schematically shown by trapezoidal shape R3, and the drive of servo motor 3b is schematically shown by trapezoidal shape R4. Referring to Figure 10, it can be understood that servo motors 3a and 3b are driven at different times.

第1変形例では、サーボモータ3a及びサーボモータ3bに対して互いに異なる動作開始時刻を指定して動作させることができる。また、サーボモータ3a及びサーボモータ3bの夫々に動作開始時刻を指定することで、複数の処理を続けて実行するシーケンス処理を実現することもできる。 In the first modified example, servo motors 3a and 3b can be operated by specifying different start times for each. Furthermore, by specifying start times for each of the servo motors 3a and 3b, it is possible to implement sequence processing that executes multiple processes consecutively.

<第2変形例>
以上説明した実施形態及び第1変形例では、複数軸が駆動されるサーボシステムが例示されたが、単軸のサーボシステムにも開示の技術は適用可能である。第2変形例では、単
軸のサーボシステムによる例について説明する。
<Second variation>
In the embodiments and the first modification described above, a servo system with multiple axes driven was illustrated, but the disclosed technology is also applicable to a single-axis servo system. The second modification describes an example using a single-axis servo system.

図11は、第2変形例に係るサーボシステム100bの一例を示す図である。サーボシステム100bは、PLC1、サーボドライバ2a、サーボモータ3a、ねじ軸4a、精密ステージ5a及び産業用ネットワークN1を備える。換言すれば、サーボシステム100bは、サーボシステム100からサーボドライバ2b、サーボモータ3b、ねじ軸4b、精密ステージ5b、テーブル6、ドライバ間通信線N2を外すことで、単軸のサーボシステムとしたものということができる。 Figure 11 shows an example of a servo system 100b according to the second modification. The servo system 100b comprises a PLC 1, a servo driver 2a, a servo motor 3a, a screw shaft 4a, a precision stage 5a, and an industrial network N1. In other words, the servo system 100b can be described as a single-axis servo system obtained by removing the servo driver 2b, servo motor 3b, screw shaft 4b, precision stage 5b, table 6, and driver-to-driver communication line N2 from the servo system 100.

図12は、第2変形例に係るサーボシステム100bによる動作開始時刻を指定した指令信号にしたがった制御を模式的に示す図である。図12では、サーボドライバ2aについて、時間軸tにおいて左から右に時間が経過するものとする。サーボドライバ2aは、受信時刻T10において、PLC1からの指令信号を受信する。 Figure 12 schematically illustrates the control performed by the servo system 100b according to the second modified example, following a command signal specifying the start time of operation. In Figure 12, for the servo driver 2a, time progresses from left to right on the time axis t. The servo driver 2a receives the command signal from the PLC 1 at reception time T10.

PLC1からの指令信号では、サーボモータ3aの動作開始時刻として、図中の動作開始時刻T11及びT12が指定されている。PLC1からの指令信号は、動作開始時刻T11におけるサーボモータ3aの出力軸の回転速度、回転方向、回転量等のサーボモータ3aの駆動に係る指令と、動作開始時刻T12におけるサーボモータ3aの出力軸の回転速度、回転方向、回転量等のサーボモータ3aの駆動に係る指令と、を含む。また図12では、サーボモータ3aの駆動を台形R5、R6によって模式的に示す。動作開始時刻T11は、「第1の動作開始時刻」の一例である。動作開始時刻T12は、「第2の動作開始時刻」の一例である。 The command signal from PLC1 specifies the start times of operation for the servo motor 3a as T11 and T12 in the figure. The command signal from PLC1 includes commands related to the drive of the servo motor 3a, such as the rotational speed, direction, and amount of rotation of the output shaft of the servo motor 3a at start time T11, and commands related to the drive of the servo motor 3a, such as the rotational speed, direction, and amount of rotation of the output shaft of the servo motor 3a at start time T12. Figure 12 schematically shows the drive of the servo motor 3a using trapezoids R5 and R6. Start time T11 is an example of a "first start time." Start time T12 is an example of a "second start time."

第2変形例では、指令信号には、複数の動作開始時刻と、複数の動作開始時刻の夫々についてサーボモータ3aの駆動に係る指令が含まれる。サーボドライバ2aは、このような指令信号にしたがってサーボモータ3aを駆動することで、指定された時刻にサーボモータ3aを指令信号にしたがった動作で駆動することができる。 In the second modification, the command signal includes multiple start times and commands for driving the servo motor 3a for each of the multiple start times. The servo driver 2a drives the servo motor 3a according to these command signals, thereby driving the servo motor 3a at the specified time in accordance with the command signals.

<第3変形例>
PLC1から複数の指令信号が出力された場合、複数の指令信号のうちの第1の指令信号にしたがった制御を実行中の時間が、後続の第2の指令信号の動作開始時間として指定されることも考えられる。第3変形例では、このような場合の処理について説明する。
<Third variation>
If multiple command signals are output from PLC1, the time during which control according to the first command signal is being executed may be specified as the start time for the subsequent second command signal. The third modification will explain how this case is handled.

図13は、第3変形例において動作開始時刻を指定した複数の指令信号の夫々にしたがった制御を模式的に示す図である。図13では、サーボドライバ2aについて、時間軸tにおいて左から右に時間が経過するものとする。サーボドライバ2aは、台形R7によって制御が模式的に示される第1の指令信号と、台形R8によって模式的に制御が示される第2の指令信号を受信済み(記憶部26に記憶済み)であるものとする。 Figure 13 schematically illustrates the control in the third modified example, following multiple command signals that specify the start time of operation. In Figure 13, for the servo driver 2a, time progresses from left to right on the time axis t. The servo driver 2a is assumed to have already received (stored in the memory unit 26) the first command signal, whose control is schematically represented by trapezoid R7, and the second command signal, whose control is schematically represented by trapezoid R8.

図13において台形R7と台形R8とが重なることで例示されるように、第1の指令信号にしたがった制御が行われている期間と、第2の指令信号にしたがった制御が行われる期間が重なっている。このような場合、サーボドライバ2aは、第2の指令信号にしたがった制御を行うことはできないため、制御部24は第2の指令信号にしたがった制御を禁止する。さらに、通知部25はPLC1に対してエラーを通知する。 As illustrated by the overlap of trapezoids R7 and R8 in Figure 13, the period during which control is performed according to the first command signal and the period during which control is performed according to the second command signal overlap. In such a case, the servo driver 2a cannot perform control according to the second command signal, so the control unit 24 prohibits control according to the second command signal. Furthermore, the notification unit 25 notifies the PLC 1 of the error.

図14は、第3変形例における処理フローの一例を示す図である。以下、図14を参照して、第3変形例における処理フローの一例について説明する。 Figure 14 shows an example of the processing flow in the third modified example. The following explanation of the processing flow in the third modified example will refer to Figure 14.

S21では、制御部24は、記憶部26に記憶された指令信号のうち、現在時刻が動作開始時刻と一致した第1の指令信号にしたがった制御を実行する。 In S21, the control unit 24 executes control according to the first command signal stored in the memory unit 26, the one whose current time matches the operation start time.

S22では、制御部24は、S21で実行した第1の指令信号の次に実行する予定の第2の指令信号を特定する。制御部24は、特定した第2の指令信号の動作開始時刻を取得する。 In S22, the control unit 24 identifies the second command signal to be executed after the first command signal executed in S21. The control unit 24 then obtains the start time of the identified second command signal.

S23では、制御部24は、S22で取得した動作開始時刻が、受信部21で実行した第1の指令信号にしたがった制御の終了前であるか否かを判定する。第1の指令信号にしたがった制御の終了する時刻は、第1の指令信号で指定される動作開始時刻と、第1の指令信号で指定される制御に要する時間とで算出することができる。また、第1の指令信号で指定される制御に要する時間は、例えば、第1の指令信号で指定される出力軸の回転速度と回転量とから算出することができる。S22で取得した動作開始時刻が、受信部21で実行した第1の指令信号にしたがった制御の終了前である場合(S23でYES)、処理はS25に進められる。S22で取得した動作開始時刻が、受信部21で実行した第1の指令信号にしたがった制御の終了後である場合(S23でNO)、処理はS24に進められる。 In S23, the control unit 24 determines whether the operation start time acquired in S22 is before the completion of the control performed by the receiving unit 21 according to the first command signal. The completion time of the control performed according to the first command signal can be calculated using the operation start time specified in the first command signal and the time required for the control specified in the first command signal. The time required for the control specified in the first command signal can be calculated, for example, from the rotational speed and rotational amount of the output shaft specified in the first command signal. If the operation start time acquired in S22 is before the completion of the control performed by the receiving unit 21 according to the first command signal (YES in S23), the process proceeds to S25. If the operation start time acquired in S22 is after the completion of the control performed by the receiving unit 21 according to the first command signal (NO in S23), the process proceeds to S24.

S24では、制御部24は、第2の指令信号の動作開始時刻になると、第2の指令信号にしたがった制御を実行する。S25では、通知部25は、第2の指令信号を実行できないことについてのエラー通知をPLC1に対して出力する。 In S24, the control unit 24 executes control according to the second command signal when the start time of the second command signal arrives. In S25, the notification unit 25 outputs an error notification to the PLC 1 indicating that the second command signal could not be executed.

第3変形例によれば、実行中の制御と重なる時間が指定された後続の指令信号にしたがった制御を禁止することができる。そのため、第3変形例によれば、第1の指令信号にしたがった制御が中断されて第2の指令信号にしたがった制御が実行されるようなことを抑制することができる。 According to the third modification, it is possible to prohibit control according to a subsequent command signal that has a specified overlap time with the currently executed control. Therefore, according to the third modification, it is possible to prevent the interruption of control according to the first command signal and the execution of control according to the second command signal.

<第4変形例>
以上説明した実施形態及び変形例では、予め決定された「所定のオフセット」が用いられた。第4変形例では、サーボシステム100における通信に要する時間を基に所定のオフセットを算出する方法について説明する。
<Fourth variation>
In the embodiments and modifications described above, a predetermined "specified offset" was used. In the fourth modification, a method for calculating the predetermined offset based on the time required for communication in the servo system 100 will be described.

図15は、第4変形例に係るサーボシステム100cの一例を示す図である。サーボシステム100cは、サーボドライバ2bも産業用ネットワークN1によってPLC1と接続される点で、サーボシステム100とは異なる。PLC1とサーボドライバ2bとが産業用ネットワークN1で接続されることで、PLC1は、サーボドライバ2aを介さずにサーボドライバ2bに対する指令信号を出力できる。 Figure 15 shows an example of a servo system 100c according to the fourth modification. Servo system 100c differs from servo system 100 in that the servo driver 2b is also connected to the PLC 1 via the industrial network N1. Because the PLC 1 and the servo driver 2b are connected via the industrial network N1, the PLC 1 can output command signals to the servo driver 2b without going through the servo driver 2a.

図16は、第4変形例における所定のオフセットの算出方法の一例を示すシーケンス図である。以下、図16を参照して、第4変形例における所定のオフセットの算出方法について説明する。 Figure 16 is a sequence diagram showing an example of the method for calculating the predetermined offset in the fourth modified example. The method for calculating the predetermined offset in the fourth modified example will be described below with reference to Figure 16.

F1では、PLC1は、サーボドライバ2aに対し調整信号を送信する。調整信号には、PLC1からの送信時間が含まれる。 In F1, PLC1 transmits an adjustment signal to servo driver 2a. The adjustment signal includes the transmission time from PLC1.

F2では、F1で送信された調整信号を受信したサーボドライバ2aは、調整信号の受信時刻と調整信号に含まれる送信時刻の差分を算出する。F3では、サーボドライバ2aは、F2で算出した差分をPLC1に通知する。 In F2, the servo driver 2a, having received the adjustment signal transmitted in F1, calculates the difference between the reception time of the adjustment signal and the transmission time included in the adjustment signal. In F3, the servo driver 2a notifies the PLC 1 of the difference calculated in F2.

F4では、PLC1は、サーボドライバ2bに対し調整信号を送信する。調整信号には、PLC1からの送信時間が含まれる。 In F4, PLC1 transmits an adjustment signal to servo driver 2b. The adjustment signal includes the transmission time from PLC1.

F5では、F4で送信された調整信号を受信したサーボドライバ2bは、調整信号の受信時刻と調整信号に含まれる送信時刻の差分を算出する。F6では、サーボドライバ2bは、F5で算出した差分をPLC1に通知する。 In F5, the servo driver 2b, having received the adjustment signal transmitted in F4, calculates the difference between the reception time of the adjustment signal and the transmission time included in the adjustment signal. In F6, the servo driver 2b notifies the PLC 1 of the difference calculated in F5.

F7では、PLC1は、F3でサーボドライバ2aから受信した差分と、F6でサーボドライバ2bから受信した差分のうち、大きい方の差分をオフセットとして決定する。F8では、PLC1は、F7で決定したオフセットをサーボドライバ2aに対し送信する。F9では、サーボドライバ2aは、PLC1から受信したオフセットを設定する。 At F7, PLC1 determines the larger of the two differences received from servo driver 2a at F3 and servo driver 2b at F6 as the offset. At F8, PLC1 transmits the offset determined at F7 to servo driver 2a. At F9, servo driver 2a sets the offset received from PLC1.

F10では、PLC1は、F7で決定したオフセットをサーボドライバ2bに対し送信する。F11では、サーボドライバ2bは、PLC1から受信したオフセットを設定する。 In F10, PLC1 transmits the offset determined in F7 to servo driver 2b. In F11, servo driver 2b sets the offset received from PLC1.

第4変形例によれば、調整信号の送信時刻とサーボドライバ2a、2bが当該調整信号を受信した受信時刻との差分を基にオフセットが決定される。そのため、第4変形例によれば、PLC1、サーボドライバ2a、2b間における通信に要する時間を基にオフセットを決定することができる。 According to the fourth modification, the offset is determined based on the difference between the transmission time of the adjustment signal and the reception time when the servo drivers 2a and 2b received the adjustment signal. Therefore, according to the fourth modification, the offset can be determined based on the time required for communication between the PLC 1 and the servo drivers 2a and 2b.

<その他の変形>
以上説明した実施形態及び変形例では、サーボモータ3a、3bを指定された動作開始時刻に駆動させることで、テーブル6や精密ステージ5a、5bが移動された。しかしながら、実施形態に係る技術は、テーブル6や精密ステージ5a、5bが移動に限定されるわけではない。本実施形態では、例えば、動作開始時刻を指定することで、サーボモータ3a、3bにおける周波数特性を取得するための信号を同期させてもよい。
<Other variations>
In the embodiments and modifications described above, the table 6 and precision stages 5a and 5b were moved by driving the servo motors 3a and 3b at a specified start time. However, the technology of the embodiment is not limited to the movement of the table 6 and precision stages 5a and 5b. In this embodiment, for example, the signals for acquiring the frequency characteristics of the servo motors 3a and 3b may be synchronized by specifying the start time.

以上説明した実施形態及び変形例では、ドライバ間指令を受信した受信時刻から動作開始時刻までの時間が所定のオフセット以上であるか否かの判定はサーボドライバ2bでは行われなかったが、サーボドライバ2bによってこのような判定が行われてもよい。そして、サーボドライバ2bは、ドライバ間指令を受信すると、ドライバ間指令を受信した受信時刻からドライバ間指令で指定された動作開始時刻までの時間が所定のオフセット以上である場合に、ドライバ間指令にしたがった制御を実行すればよい。また、サーボドライバ2bは、ドライバ間指令を受信した受信時刻からドライバ間指令で指定された動作開始時刻までの時間が所定のオフセット以上である場合に、PLC1に対してエラーを通知してもよい。そして、PLC1は、サーボドライバ2a、2bのいずれか一方のサーボドライバからエラーを通知されると、サーボドライバ2a、2bの他方のサーボドライバに対して、指令信号にしたがった制御の中止を指示してもよい。 In the embodiments and modifications described above, the servo driver 2b did not determine whether the time from the time of receiving the driver command to the start of operation was greater than or equal to a predetermined offset. However, the servo driver 2b may perform such a determination. When the servo driver 2b receives a driver command, it should execute control according to the driver command if the time from the time of receiving the driver command to the start of operation specified in the driver command is greater than or equal to a predetermined offset. The servo driver 2b may also notify the PLC 1 of an error if the time from the time of receiving the driver command to the start of operation specified in the driver command is greater than or equal to a predetermined offset. When the PLC 1 receives an error notification from either servo driver 2a or 2b, it may instruct the other servo driver of 2a or 2b to cease control according to the command signal.

以上説明した実施形態では、サーボシステム100はPLC1によって制御されるいわゆるサーボシステムであるが、本実施形態に係る技術の適用対象がサーボシステムに限定されるわけではない。本実施形態に係る技術の適用対象は、例えば、エンコーダからのフィードバックによる制御が不要なドライブシステム(ステッピングモータ等の制御)でもよい。 In the embodiments described above, the servo system 100 is a so-called servo system controlled by the PLC 1. However, the application of the technology according to this embodiment is not limited to servo systems. The technology according to this embodiment may also be applied to drive systems (such as stepping motors) that do not require control by feedback from an encoder.

以上説明した実施形態及び変形例は組み合わせることができる。 The embodiments and modifications described above can be combined.

<付記1>
上位装置(1)から動作開始時刻の指定及びモータ(3a)の制御に係る制御指令を含む指令信号を受信する受信部(21)と、
前記受信時刻から前記動作開始時刻までの時間が所定の閾値以上である場合には、前記動作開始時刻になると、前記制御指令にしたがって前記モータ(3a)を制御する制御部
(24)と、
前記受信時刻から前記動作開始時刻までの時間が前記所定の閾値未満である場合には、前記上位装置にエラーを通知する通知部(25)と、を備える、
ドライバ(2a)。
<Note 1>
A receiving unit (21) receives a command signal from a higher-level device (1) that includes a control command for specifying the start time of operation and controlling the motor (3a),
If the time from the reception time to the start of operation time is greater than or equal to a predetermined threshold, the control unit (24) controls the motor (3a) according to the control command when the start of operation time arrives.
The system includes a notification unit (25) that notifies the higher-level device of an error if the time from the reception time to the start time of operation is less than the predetermined threshold,
Driver (2a).

<付記2>
第1のモータ(3a)を制御する第1のドライバ(2a)と、
第2のモータ(3b)を制御する第2のドライバ(2b)と、
動作開始時刻の指定及び前記第1のモータの制御に係る第1の制御指令及び前記第2のモータの制御に係る第2の制御指令を含む指令信号を出力する上位装置(1)と、を備え、
前記第1のドライバ(2a)は、
前記上位装置(1)から前記指令信号を受信する第1の受信部(21)と、
前記受信時刻から前記動作開始時刻までの時間が所定の閾値以上である場合に、前記動作開始時刻の指定及び前記第2の制御指令を含むドライバ間指令を前記第2のドライバ(2b)に出力するドライバ間指令部(23)と、
前記受信時刻から前記動作開始時刻までの時間が前記所定の閾値以上である場合には、前記動作開始時刻になると、前記第1の制御指令にしたがって前記第1のモータ(3a)を制御する第1の制御部(24)と、
前記受信時刻から前記動作開始時刻までの時間が前記所定の閾値未満である場合には、前記上位装置にエラーを通知する通知部(25)と、を含み、
前記第2のドライバ(2b)は、
前記第1のドライバ(2a)から前記ドライバ間指令を受信する第2の受信部(221)と、
前記動作開始時刻になると、前記ドライバ間指令に含まれる前記第2の制御指令にしたがって前記第2のモータ(3b)を制御する第2の制御部(222)と、を含む、
ドライブシステム(100)。
<Note 2>
A first driver (2a) controls the first motor (3a),
A second driver (2b) controls the second motor (3b),
The system includes a host device (1) that outputs a command signal including a first control command for specifying the start time of operation and controlling the first motor, and a second control command for controlling the second motor,
The first driver (2a) is,
A first receiving unit (21) that receives the command signal from the above-level device (1),
A driver command unit (23) outputs a driver command to the second driver (2b) including the specification of the operation start time and the second control command, if the time from the reception time to the operation start time is greater than or equal to a predetermined threshold,
If the time from the reception time to the start of operation time is greater than or equal to the predetermined threshold, then at the start of operation time, the first control unit (24) controls the first motor (3a) according to the first control command,
If the time from the reception time to the start of operation is less than the predetermined threshold, a notification unit (25) that notifies the higher-level device of an error is included,
The second driver (2b) is,
A second receiving unit (221) receives inter-driver commands from the first driver (2a),
The system includes a second control unit (222) that controls the second motor (3b) according to the second control command included in the driver command when the operation start time arrives,
Drive system (100).

1・・PLC
2a・・サーボドライバ
2b・・サーボドライバ
3a・・サーボモータ
3b・・サーボモータ
4・・ねじ軸
4a・・ねじ軸
4b・・ねじ軸
5a・・精密ステージ
5b・・精密ステージ
6・・テーブル
11・・指令部
12・・取得部
13・・出力部
21・・受信部
22・・判定部
23・・ドライバ間指令部
24・・制御部
25・・通知部
26・・記憶部
100・・サーボシステム
100a・・サーボシステム
100b・・サーボシステム
221・・受信部
222・・制御部
223・・記憶部
N1・・産業用ネットワーク
N2・・ドライバ間通信線
1. PLC
2a...Servo driver 2b...Servo driver 3a...Servo motor 3b...Servo motor 4...Screw shaft 4a...Screw shaft 4b...Screw shaft 5a...Precision stage 5b...Precision stage 6...Table 11...Command unit 12...Acquisition unit 13...Output unit 21...Receiver unit 22...Decision unit 23...Inter-driver command unit 24...Control unit 25...Notification unit 26...Storage unit 100...Servo system 100a...Servo system 100b...Servo system 221...Receiver unit 222...Control unit 223...Storage unit N1...Industrial network N2...Inter-driver communication line

Claims (6)

上位装置から動作開始時刻の指定及びモータの制御に係る制御指令を含む指令信号を受信する受信部と、
前記指令信号を受信した受信時刻から前記動作開始時刻までの時間が、前記指令信号を受信してから前記モータの駆動開始に要する時間を基に決定される所定の閾値以上である場合には、前記動作開始時刻になると、前記制御指令にしたがって前記モータを制御する制御部と、
前記動作開始時刻以前に前記指令信号を受信したときに前記受信時刻から前記動作開始時刻までの時間が前記所定の閾値未満である場合、及び、前記動作開始時刻後に前記指令信号を受信した場合には、前記上位装置にエラーを通知する通知部と、を備える、
ドライバ。
A receiving unit that receives command signals from a higher-level device, including control commands related to specifying the start time of operation and motor control,
If the time from the time of receiving the command signal to the start of operation is greater than or equal to a predetermined threshold determined based on the time required from receiving the command signal to starting the motor , then at the start of operation, the control unit controls the motor according to the control command,
The system includes a notification unit that notifies the higher-level device of an error if the time from the time of reception to the start of operation is less than the predetermined threshold when the command signal is received before the start of operation, and if the command signal is received after the start of operation.
driver.
前記動作開始時刻は、第1の動作開始時刻と第2の動作開始時刻と、を含み、
前記制御指令は、前記第1の動作開始時刻に開始させる第1の制御指令と、前記第2の動作開始時刻に開始させる第2の制御指令と、を含み、
前記制御部は、
前記第1の動作開始時刻になると、前記第1の制御指令にしたがって前記モータを制御し、
前記第2の動作開始時刻になると、前記第2の制御指令にしたがって前記モータを制御する、
請求項1に記載のドライバ。
The aforementioned start time of operation includes a first start time of operation and a second start time of operation,
The control command includes a first control command to be initiated at the first start time of operation and a second control command to be initiated at the second start time of operation.
The control unit,
When the first operation start time arrives, the motor is controlled according to the first control command.
When the second operation start time arrives, the motor is controlled according to the second control command.
The driver according to claim 1.
前記第2の動作開始時刻は前記第1の動作開始時刻よりも後の時刻であり、
前記制御部は、前記第1の制御指令にしたがった前記モータの制御が終了する前の時刻を前記第2の動作開始時刻が示す場合には、前記第2の制御指令にしたがった前記モータの制御の実行を禁止する、
請求項2に記載のドライバ。
The second start time of operation is a time later than the first start time of operation.
If the second operation start time indicates a time before the motor control in accordance with the first control command is completed, the control unit prohibits the execution of the motor control in accordance with the second control command.
The driver according to claim 2.
前記通知部は、前記第2の制御指令にしたがった前記モータの制御の実行が禁止されると、前記上位装置にエラーを通知する、
請求項3に記載のドライバ。
The notification unit notifies the higher-level device of an error when the execution of the motor control in accordance with the second control command is prohibited.
The driver according to claim 3.
第1のモータを制御する第1のドライバと、
第2のモータを制御する第2のドライバと、
動作開始時刻の指定及び前記第1のモータの制御に係る第1の制御指令及び前記第2のモータの制御に係る第2の制御指令を含む指令信号を出力する上位装置と、を備え、
前記第1のドライバは、
前記上位装置から前記指令信号を受信する第1の受信部と、
前記指令信号を受信した受信時刻から前記動作開始時刻までの時間が、前記指令信号を受信してから前記モータの駆動開始に要する時間を基に決定される所定の閾値以上である場合に、前記動作開始時刻の指定及び前記第2の制御指令を含むドライバ間指令を前記第2のドライバに出力するドライバ間指令部と、
前記受信時刻から前記動作開始時刻までの時間が前記所定の閾値以上である場合には、前記動作開始時刻になると、前記第1の制御指令にしたがって前記第1のモータを制御する第1の制御部と、
前記動作開始時刻以前に前記指令信号を受信したときに前記受信時刻から前記動作開始時刻までの時間が前記所定の閾値未満である場合、及び、前記動作開始時刻後に前記指令信号を受信した場合には、前記上位装置にエラーを通知する通知部と、を含み、
前記第2のドライバは、
前記第1のドライバから前記ドライバ間指令を受信する第2の受信部と、
前記動作開始時刻になると、前記ドライバ間指令に含まれる前記第2の制御指令にしたがって前記第2のモータを制御する第2の制御部と、を含む、
ドライブシステム。
A first driver that controls the first motor,
A second driver that controls the second motor,
The system includes a host device that outputs a command signal including a first control command related to specifying the start time of operation and controlling the first motor, and a second control command related to controlling the second motor,
The first driver described above is
A first receiving unit that receives the command signal from the above-mentioned higher-level device,
A driver-to-driver command unit outputs a driver-to-driver command to the second driver, including the specification of the operation start time and the second control command, if the time from the time of receiving the command signal to the start of operation is greater than or equal to a predetermined threshold determined based on the time required from receiving the command signal to the start of motor operation,
If the time from the reception time to the start of operation time is greater than or equal to the predetermined threshold, the first control unit controls the first motor according to the first control command when the start of operation time arrives,
The system includes a notification unit that notifies the higher-level device of an error if the command signal is received before the operation start time and the time from the reception time to the operation start time is less than the predetermined threshold, and if the command signal is received after the operation start time.
The second driver described above is
A second receiving unit that receives inter-driver commands from the first driver,
The system includes a second control unit that controls the second motor according to the second control command included in the driver command when the operation start time arrives,
Drive system.
前記動作開始時刻は、前記第1の制御指令にしたがった動作を開始させる第1の動作開始時刻と、前記第2の制御指令にしたがった動作を開始させる第2の動作開始時刻と、を含み、
前記ドライバ間指令部は、前記受信時刻から前記第2の動作開始時刻までの時間が前記所定の閾値以上である場合に、前記ドライバ間指令を前記第2のドライバに出力し、
前記第1の制御部は、前記受信時刻から前記第1の動作開始時刻までの時間が前記所定の閾値以上である場合には、前記第1の動作開始時刻になると、前記第1の制御指令にしたがって前記第1のモータを制御し、
前記第2の制御部は、前記第2の動作開始時刻になると、前記ドライバ間指令に含まれる前記第2の制御指令にしたがって前記第2のモータを制御する、
請求項5に記載のドライブシステム。
The operation start time includes a first operation start time for initiating an operation in accordance with the first control command, and a second operation start time for initiating an operation in accordance with the second control command.
The driver-to-driver command unit outputs the driver-to-driver command to the second driver if the time from the reception time to the start time of the second operation is greater than or equal to the predetermined threshold.
If the time from the reception time to the first operation start time is greater than or equal to the predetermined threshold, the first control unit controls the first motor according to the first control command when the first operation start time arrives.
When the second operation start time arrives, the second control unit controls the second motor in accordance with the second control command included in the driver inter-command.
The drive system according to claim 5.
JP2022062027A 2022-04-01 2022-04-01 Drivers and drive systems Active JP7841331B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022062027A JP7841331B2 (en) 2022-04-01 2022-04-01 Drivers and drive systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022062027A JP7841331B2 (en) 2022-04-01 2022-04-01 Drivers and drive systems

Publications (2)

Publication Number Publication Date
JP2023152086A JP2023152086A (en) 2023-10-16
JP7841331B2 true JP7841331B2 (en) 2026-04-07

Family

ID=88327419

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022062027A Active JP7841331B2 (en) 2022-04-01 2022-04-01 Drivers and drive systems

Country Status (1)

Country Link
JP (1) JP7841331B2 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001161095A (en) 1999-11-30 2001-06-12 Nippon Pulse Motor Co Ltd Drive system for plurality of motors
JP2005057894A (en) 2003-08-05 2005-03-03 Okuma Corp Motor control device
JP2010088185A (en) 2008-09-30 2010-04-15 Sanyo Electric Co Ltd Motor control circuit
JP2014066912A (en) 2012-09-26 2014-04-17 Murata Mach Ltd Image forming apparatus and motor control method
JP2015204724A (en) 2014-04-16 2015-11-16 株式会社日立産機システム Control method for motor drive device, and motor control system and program
US20190260314A1 (en) 2016-03-15 2019-08-22 Panasonic Intellectual Property Management Co., Ltd. Multiaxial motor control system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001161095A (en) 1999-11-30 2001-06-12 Nippon Pulse Motor Co Ltd Drive system for plurality of motors
JP2005057894A (en) 2003-08-05 2005-03-03 Okuma Corp Motor control device
JP2010088185A (en) 2008-09-30 2010-04-15 Sanyo Electric Co Ltd Motor control circuit
JP2014066912A (en) 2012-09-26 2014-04-17 Murata Mach Ltd Image forming apparatus and motor control method
JP2015204724A (en) 2014-04-16 2015-11-16 株式会社日立産機システム Control method for motor drive device, and motor control system and program
US20190260314A1 (en) 2016-03-15 2019-08-22 Panasonic Intellectual Property Management Co., Ltd. Multiaxial motor control system

Also Published As

Publication number Publication date
JP2023152086A (en) 2023-10-16

Similar Documents

Publication Publication Date Title
JP5430793B2 (en) Electric motor control system and communication method
CN102854901B (en) Synchronous control apparatus and synchronous control method
JP6946024B2 (en) Equipment and methods for controlling automated equipment
JP6937470B2 (en) Motor control system
EP2555068B1 (en) Synchronization control apparatus
US10579031B2 (en) Controller
CN108398916B (en) Control system and pulse output device
WO2018084036A1 (en) Servo system and servo system control method
WO2019107022A1 (en) Control device and control method
JP7327225B2 (en) Robot control system and control method
JP2007219642A (en) Control system
JP2005050096A (en) Numerical controller
CN108886481A (en) Communication control system and communication control method
JP7841331B2 (en) Drivers and drive systems
WO2020054477A1 (en) Control system and control device
JP5687302B2 (en) Load drive control device and load drive control method
JP4044105B2 (en) Numerical control device having function of switching operation means for each system
JP5471588B2 (en) Motor drive device
JP7592975B2 (en) Robot control system and control method
JP2019088099A (en) Motor controller, control system and motor control method
JP7229438B1 (en) Motor drive and servo drive system
JP2017205881A (en) Electric injection molding machine whose drive shaft is controlled synchronously by multiple servo motors
JP6612866B2 (en) Servo motor drive device
JP7762882B2 (en) Motor control device, motor control method, and program
US20230297035A1 (en) Servo system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20250213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20251110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20251118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20260119

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: 20260224

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20260309

R150 Certificate of patent or registration of utility model

Ref document number: 7841331

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150