Drivers and drive systems
The driver system addresses the issue of unnotified motor control failures by using a receiving and control unit to execute commands above a threshold time and a notification unit to alert the host, ensuring timely error notification and synchronized or sequential motor operations.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-04-01
- Publication Date
- 2026-04-07
AI Technical Summary
Existing driver systems fail to notify a host device when motor control is impossible at a specified operation start time, leading to uncertainty about the execution of control commands.
The driver system includes a receiving unit to receive control commands with specified start times, a control unit to execute commands if the time from reception exceeds a threshold, and a notification unit to alert the host device if the time is below the threshold, ensuring timely motor control and error notification.
Ensures that the host device is informed of motor control impossibility at specified times, allowing for appropriate countermeasures such as command re-sending or user notification, and enables synchronized or sequential motor operations without synchronous communication.
Smart Images

Figure 0007841331000001 
Figure 0007841331000002 
Figure 0007841331000003
Abstract
Description
Technical Field
[0001] The present invention relates to a driver and a drive system.
Background Art
[0002] A multi-axis control system that synchronizes and controls a plurality of axes so as to operate at the time indicated by the start time information acquired from a tool, and a system that drives a motor at a timing when a specified absolute time matches an internal timer have been proposed (see, for example, Patent Documents 1 and 2).
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Patent Document 2
Summary of the Invention
Problems to be Solved by the Invention
[0004] When causing a driver to execute control according to a command signal at a desired time, it may be considered to specify the operation start time from a host device and transmit the command signal to the driver. Here, if the driver receives the command signal at a timing after the operation start time, it is not possible to execute control according to the command signal at the specified operation start time. If an error is not notified in such a case, the host device cannot grasp whether or not control according to the command signal has been executed.
[0005] One aspect of the disclosed technology aims to provide a driver and a drive system that can notify a host device when motor control is impossible at a specified operation start time.
Means for Solving the Problems
[0006] One aspect of the disclosed technology is exemplified by the following driver: The driver includes a receiving unit that receives a command signal from a higher-level device, which includes a control command specifying the start time of operation and a control command relating to motor control; a control unit that controls the motor according to the control command when the start time of operation arrives, provided that the time from the time of reception of 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 reception to the start time of operation is less than the predetermined threshold.
[0007] 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 of operation. If the time between the reception time and the start time of operation is less than the predetermined threshold, the driver determines that it is not possible to control the motor according to the control signal at the start time of operation and notifies the higher-level device of the error. Therefore, according to the above driver, it is possible to notify the higher-level device if motor control is not possible at the specified start time of operation. Here, the predetermined threshold may be appropriately determined based on the time required from receiving the command signal to starting the motor drive. Alternatively, the predetermined threshold may be determined considering the communication delay between the higher-level device and the driver.
[0008] The above driver may have the following features: The above operation start time includes a first operation start time and a second operation start time; the above control command includes a first control command to start at the first operation start time and a second control command to start at the second start time; and when the first operation start time arrives, the control unit operates according to the first control command. The driver controls the motor, and when the second operation start time arrives, it controls the motor according to the second control command. By having these features, the driver can realize sequence processing that causes the motor to perform multiple operations.
[0009] The above driver may have the following features: The second operation start time is later than the first operation start time, and the control unit prohibits the execution of the motor control according to the second control command if the second operation start time indicates a time before the motor control according to the first control command has finished. 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 above driver prevents the interruption of control according to the first control command and the execution of control according to the second control command. In addition, the higher-level device can understand that control according to the second control command has been prohibited by notifying an error when the execution of the motor control according to the second control command is prohibited.
[0010] The disclosed technology can also be understood from the perspective of a drive system equipped with multiple of the above drivers. [Effects of the Invention]
[0011] According to the disclosed technology, if motor control is impossible at a specified start time, a notification can be sent to a higher-level device. [Brief explanation of the drawing]
[0012] [Figure 1] Figure 1 shows an example of a servo system according to an embodiment. [Figure 2] Figure 2 shows a schematic diagram of the functional components of a PLC. [Figure 3] Figure 3 is the first diagram showing the schematic configuration of the functional parts of the servo driver. [Figure 4] Figure 4 is a second diagram showing the schematic configuration of the functional parts of the servo driver. [Figure 5] Figure 5 is a first diagram schematically showing control by the servo system according to the embodiment, in accordance with a command signal specifying the start time of operation. [Figure 6]FIG. 6 is a second diagram schematically showing control according to a command signal specifying an operation start time by the servo system according to the embodiment. [Figure 7] FIG. 7 is a first diagram showing an example of a processing flow of the servo driver in the embodiment. [Figure 8] FIG. 8 is a second diagram showing an example of a processing flow of the servo driver in the embodiment. [Figure 9] FIG. 9 is a diagram showing an example of a servo system according to the first modification. [Figure 10] FIG. 10 is a diagram schematically showing control according to a specified signal for the operation start time by the servo system according to the first modification. [Figure 11] FIG. 11 is a diagram showing an example of a servo system according to the second modification. [Figure 12] FIG. 12 is a diagram schematically showing control according to a command signal specifying an operation start time by the servo system according to the second modification. [Figure 13] FIG. 13 is a diagram schematically showing control according to each of a plurality of command signals specifying an operation start time in the third modification. [Figure 14] FIG. 14 is a diagram showing an example of a processing flow in the third modification. [Figure 15] FIG. 15 is a diagram showing an example of a servo system according to the fourth modification. [Figure 16] FIG. 16 is a sequence diagram showing an example of a method for calculating a predetermined offset in the fourth modification. MODE FOR CARRYING OUT THE INVENTION
[0013] <Embodiment> Hereinafter, embodiments will be described with reference to the drawings. FIG. 1 is a diagram showing an example of a servo system 100 according to an embodiment. The servo system 100 includes a PLC 1, servo drivers 2a, 2b, servo motors 3a, 3b, screw shafts 4a, 4b, precision stages 5a, 5b, a table 6, an industrial network N1, and an inter-driver communication line N2. The servo system 100 is, for example, a system of a gantry mechanism in which the servo drivers 2a, 2b cooperate to displace the table 6.
[0014] The PLC 1 and the servo driver 2a are connected by the industrial network N1. The servo driver 2a and the servo driver 2b are connected by the inter-driver communication line N2. A screw shaft 4a is connected to the output shaft of the servo motor 3a. A screw shaft 4b is connected to the output shaft of the servo motor 3b. The screw shafts 4a and 4b are arranged in parallel. The precision stage 5a is arranged on the screw shaft 4a. The precision stage 5b is arranged on the screw shaft 4b. The table 6 is supported by the precision stages 5a, 5b. By driving the servo motors 3a, 3b, the table 6 is displaced along the axial directions of the screw shafts 4a, 4b. The servo system 100 is, for example, a servo system of a gantry mechanism.
[0015] The PLC 1 outputs a command signal to the servo driver 2a via the industrial network N1. The PLC 1 functions as, for example, a monitoring device for the servo drivers 2a, 2b by executing processing according to a pre-prepared program. The industrial network N1 is, for example, a TCP / IP network. The PLC 1 is connected to the servo driver 2a by the industrial network N1. The PLC 1 is an example of a "superordinate device".
[0016] The servo driver 2a receives a command signal from the PLC 1 via the industrial network N1. The servo driver 2a outputs an inter-driver command for causing the servo motor 3b to perform an operation according to the command signal from the PLC 1 to the servo driver 2b via the inter-driver communication line N2.
[0017] 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".
[0018] 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. The 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 of the servo motors 3a and 3b, information about the rotational speed of the output shafts, and information about the rotational direction of the output shafts. The servo motors 3a and 3b are examples of "motors".
[0019] Note that 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.
[0020] Figure 2 is a diagram showing the schematic configuration of the functional units of PLC1. PLC1 is a computing unit, 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 PLC1. PLC1 has a command unit 11, an acquisition unit 12, and an output unit 13, but it may also have other functional units.
[0021] The command unit 11 outputs command signals to the servo driver 2a to drive the servo motors 3a and 3b. The command signals include, for example, the specification of the start time of operation, the rotation speed, rotation direction, and rotation amount of the output shafts of the servo motors 3a and 3b. The start time of operation is specified, for example, by the user of PLC1.
[0022] 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 the error notification include display on a screen, sending an email, printing, and outputting an alarm sound.
[0023] Figure 3 is a schematic diagram of the functional components of the servo driver 2a. The servo driver 2a can be considered as a computer having an arithmetic unit, memory device, etc. The functional components shown in Figure 3 are realized when a predetermined program is executed in the servo driver 2a. The servo driver 2a has 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.
[0024] The receiving unit 21 receives command signals from the PLC1 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 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".
[0025] The driver-to-driver command unit 23 outputs a driver-to-driver command to the servo driver 2b that includes the start time of operation and a command for the servo motor 3b, for any command signal that the determination unit 22 has determined to have a time from the reception time to the start of operation time that is 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".
[0026] The control unit 24 stores in the storage unit 26 any command signals for which the time from the reception time to the operation start time has been determined by the determination unit 22 to be greater than or equal to a predetermined offset. The control unit 24 drives the servo motor 3a according to the command signals stored in the storage unit 26 whose current time and operation start time coincide. The control unit 24 is an example of a "control unit". The predetermined offset is an example of a "predetermined threshold".
[0027] The notification unit 25 outputs an error notification to the PLC1 via the industrial network N1 for command signals for which the time from the reception time to the operation start time is determined by the determination unit 22 to be less than a predetermined offset, indicating that control cannot be executed according to the command signal at the operation start time. The notification unit 25 is an example of a "notification unit".
[0028] The memory unit 26 stores, for example, command signals received from the PLC1, and various data used for processing by the receiving unit 21, determination unit 22, driver command unit 23, control unit 24, and notification unit 25. The memory unit 26 is, for example, an EEPROM.
[0029] Figure 4 shows a schematic configuration of the functional units of the servo driver 2b. The servo driver 2b can be considered as a computer having an arithmetic unit, memory device, etc. The functional units shown in Figure 4 are realized when a predetermined program is executed 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 units.
[0030] 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".
[0031] The control unit 222 executes an inter-driver command stored in the memory unit 223 whose current time matches the start time of operation. The control unit 222 is an example of a "second control unit".
[0032] The memory unit 223 stores, for example, inter-driver commands received from the servo driver 2a, and various data used in processing performed by the receiver unit 221 and the memory unit 223. The memory unit 223 is, for example, an EEPROM.
[0033] Figure 5 is a first diagram schematically illustrating the control performed by the servo system 100 according to the embodiment, in accordance with 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. The 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 of operation T3 shown in the figure.
[0034] At reception time T1, the servo driver 2a receives a command signal from PLC1. Upon receiving the command signal, the servo driver 2a performs a determination by 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 inter-driver command unit 23 outputs an inter-driver command to the servo driver 2b, which includes the operation start time and the command for the servo motor 3b included in the command signal received from PLC1.
[0035] At reception time T2, servo driver 2b receives an inter-driver command from servo driver 2a. When the current time becomes the start time T3, servo driver 2a drives servo motor 3a according to the command signal received from PLC1. Similarly, when the current time becomes T3, servo driver 2b drives servo motor 3b according to the inter-driver command received from servo driver 2a. In Figure 5, the drive of servo motor 3a is schematically shown by trapezoid R1, and the drive of servo motor 3b is schematically shown by trapezoid R2. Referring to Figure 5, it can be understood that servo motor 3a and servo motor 3b are driven synchronously.
[0036] Figure 6 is a second diagram schematically illustrating the control performed by the servo system 100 according to the embodiment, in accordance with 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 each of the servo drivers 2a and 2b. The 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.
[0037] 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 PLC1 at the start time T4 indicating that it is not possible to perform control according to the command signal.
[0038] 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.
[0039] In S1, the receiving unit 21 receives a command signal from the PLC1. In S2, the determination unit 22 determines whether the start time of the operation specified by the command signal received in S1 is later than the time 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.
[0040] In S3, the driver-to-driver command unit 23 outputs a driver-to-driver command to the servo driver 2b that includes the start time of operation and the command for the servo motor 3b, which are included in the command signal received in S1.
[0041] In S4, the control unit 24 determines whether the current time is the start time of operation. If it is the start time of operation (YES in S4), the process proceeds to S5. If it is not the start time of operation (NO in S4), the process in S4 is repeated, and the system waits until the start time of operation.
[0042] 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 PLC1 that it is not possible to perform control according to the command signal at the start time of operation.
[0043] 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.
[0044] 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 start time of operation. If it is the start time of operation (YES in S12), the process proceeds to S13. If it is not the start time of operation (NO in S12), the process in S12 is repeated, and the system waits until the start time of operation.
[0045] In S13, the control unit 222 drives the servo motor 3b according to the driver command received in S11.
[0046] In this embodiment, the command from PLC1 includes the start time for initiating the driving 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, servo motors 3a and 3b can be driven synchronously without having to construct a control program that utilizes synchronous communication.
[0047] In this embodiment, if the time of receiving a command from PLC1 has passed the start time of the operation specified in the command, the notification unit 25 notifies PLC1 of this fact. As a result, PLC1 can take countermeasures such as resending the command or notifying the user that the command was not executed.
[0048] <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 be described below with reference to the drawings.
[0049] Figure 9 shows an example of a servo system 100a according to the first modified example. The servo system 100a differs from the servo system 100 in that the screw shafts 4a and 4b are arranged to be orthogonal to each other.
[0050] In the servo system 100a, screw shafts 4a and 4b are mechanically connected on the screw shaft 4a. When the servo motor 3a is driven, screw shaft 4b moves along the axial direction of screw shaft 4a. Also, when the servo motor 3b is driven, the precision stage 5b moves along the axial direction of screw shaft 4b.
[0051] 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.
[0052] Figure 10 schematically shows the control of the start time of operation by the servo system 100a according to the first modified example, according to a specified signal. In Figure 10, for 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.
[0053] At reception time T6, the servo driver 2a receives a command signal from PLC1. 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 inter-driver command unit 23 outputs an inter-driver command to the servo driver 2b that includes the operation start time of the servo motor 3b and the command for the servo motor 3b, which are included in the command signal received from PLC1.
[0054] At reception time T7, servo driver 2a receives an inter-driver command from servo driver 2a. When the current time becomes the start time T8, servo driver 2a drives servo motor 3a according to the command signal received from PLC1. Similarly, when the current time becomes 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 trapezoid R3, and the drive of servo motor 3b is schematically shown by trapezoid R4. Referring to Figure 10, it can be understood that servo motor 3a and servo motor 3b are driven at different times.
[0055] 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 servo motors 3a and 3b, it is possible to realize sequence processing that executes multiple processes consecutively.
[0056] <Second variation> In the embodiments and the first modification described above, a servo system in which multiple axes are driven was illustrated, but the disclosed technology is also applicable to a single-axis servo system. In the second modification, a single Let's explain an example using an axis servo system.
[0057] Figure 11 shows an example of a servo system 100b according to the second modification. The servo system 100b comprises a PLC1, 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.
[0058] Figure 12 schematically shows the control of the servo system 100b according to the second modified example, in accordance with 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 a command signal from PLC1 at reception time T10.
[0059] 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 of rotation, and amount of rotation of the output shaft of the servo motor 3a at the start time T11, and commands related to the drive of the servo motor 3a, such as the rotational speed, direction of rotation, and amount of rotation of the output shaft of the servo motor 3a at the 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 the "first start time". Start time T12 is an example of the "second start time".
[0060] In the second modified example, the command signal includes multiple start times for operation 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 an operation according to the command signals.
[0061] <Third variation> If multiple command signals are output from PLC1, the time during which control according to the first of the multiple command signals 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.
[0062] 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. In Figure 13, it is assumed that time progresses from left to right on the time axis t for the servo driver 2a. It is assumed that the servo driver 2a has 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.
[0063] 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 PLC1 of the error.
[0064] Figure 14 shows an example of the processing flow in the third modified example. The following description of the example of the processing flow in the third modified example will refer to Figure 14.
[0065] In S21, the control unit 24 executes control according to the first command signal among the command signals stored in the memory unit 26 whose current time matches the operation start time.
[0066] In S22, the control unit 24 identifies a second command signal that is scheduled to be executed after the first command signal executed in S21. The control unit 24 obtains the start time of the operation of the identified second command signal.
[0067] In S23, the control unit 24 determines whether the operation start time acquired in S22 is before the end of the control performed by the receiving unit 21 according to the first command signal. The end time of the control performed according to the first command signal can be calculated from 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 amount of rotation of the output shaft specified in the first command signal. If the operation start time acquired in S22 is before the end 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 end of the control performed by the receiving unit 21 according to the first command signal (NO in S23), the process proceeds to S24.
[0068] In S24, when the start time of the second command signal arrives, the control unit 24 executes control according to the second command signal. In S25, the notification unit 25 outputs an error notification to the PLC1 indicating that the second command signal cannot be executed.
[0069] 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 control currently being executed. 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.
[0070] <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.
[0071] 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 PLC1 by the industrial network N1. Because PLC1 and servo driver 2b are connected by the industrial network N1, PLC1 can output command signals to servo driver 2b without going through servo driver 2a.
[0072] Figure 16 is a sequence diagram showing an example of a method for calculating a predetermined offset in the fourth modified example. The method for calculating a predetermined offset in the fourth modified example will be described below with reference to Figure 16.
[0073] In F1, PLC1 sends an adjustment signal to servo driver 2a. The adjustment signal includes the transmission time from PLC1.
[0074] In F2, the servo driver 2a, having received the adjustment signal transmitted in F1, calculates the difference between the time the adjustment signal was received and the transmission time included in the adjustment signal. In F3, the servo driver 2a notifies the PLC1 of the difference calculated in F2.
[0075] In F4, PLC1 sends an adjustment signal to servo driver 2b. The adjustment signal includes the transmission time from PLC1.
[0076] In F5, the servo driver 2b, having received the adjustment signal transmitted in F4, calculates the difference between the time the adjustment signal was received and the transmission time included in the adjustment signal. In F6, the servo driver 2b notifies the PLC1 of the difference calculated in F5.
[0077] In F7, PLC1 determines the larger of the two differences—the difference received from servo driver 2a in F3 and the difference received from servo driver 2b in F6—as the offset. In F8, PLC1 transmits the offset determined in F7 to servo driver 2a. In F9, servo driver 2a sets the offset received from PLC1.
[0078] In F10, PLC1 transmits the offset determined in F7 to servo driver 2b. In F11, servo driver 2b sets the offset received from PLC1.
[0079] 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 receive the adjustment signal. Therefore, according to the fourth modification, the offset can be determined based on the time required for communication between the PLC1 and the servo drivers 2a and 2b.
[0080] <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.
[0081] In the embodiments and modifications described above, the servo driver 2b did not determine whether the time from the time of receiving the inter-driver command to the start of operation was greater than or equal to a predetermined offset, but the servo driver 2b may perform such a determination. When the servo driver 2b receives an inter-driver command, it should execute control according to the inter-driver command if the time from the time of receiving the inter-driver command to the start of operation specified in the inter-driver command is greater than or equal to a predetermined offset. The servo driver 2b may also notify the PLC1 of an error if the time from the time of receiving the inter-driver command to the start of operation specified in the inter-driver command is greater than or equal to a predetermined offset. When the PLC1 receives an error notification from either servo driver 2a or 2b, it may instruct the other servo driver of servo drivers 2a or 2b to stop the control according to the command signal.
[0082] In the embodiments described above, the servo system 100 is a so-called servo system controlled by the PLC1, but the application of the technology according to this embodiment is not limited to servo systems. The application of the technology according to this embodiment may also be to drive systems (such as stepping motors) that do not require control by feedback from an encoder.
[0083] The embodiments and modifications described above can be combined.
[0084] <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 controls the motor (3a) according to the control command when the start of operation time arrives. (24) and, 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).
[0085] <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) described above 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, 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, 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). [Explanation of Symbols]
[0086] 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 Department 12...Acquisition part 13. Output section 21. Receiving section 22... Judgment section 23. Inter-driver command unit 24. Control Unit 25·Notification Department 26...Storage section 100 Servo System 100a Servo System 100b Servo System 221 ··Receiving Unit 222 ··Control Unit 223...Storage section N1 Industrial Network N2 ·· Driver-to-driver communication line
Claims
1. 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.
2. 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.
3. 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.
4. 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.
5. 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 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. 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.
6. 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. The second control unit controls the second motor according to the second control command included in the driver inter-command when the second operation start time arrives. The drive system according to claim 5.
Citation Information
Patent Citations
Drive system for plurality of motors
JP2001161095A
Numerical control system
JP2004110359A
Motor controller
JP2005057894A
Motor control circuit
JP2010088185A
Image forming apparatus and motor control method
JP2014066912A