Servo control device

A servo control device includes an instruction controller to generate and transmit a preliminary instruction and a sequential instruction to a following controller, and the following controller to drive and control a motor on the basis of the preliminary instruction stored in a preliminary instruction storage unit when an external input signal is input, and subsequently drive and control the motor on the basis of the sequential instruction stored in a sequential instruction storage unit.

CROSS-REFERENCE TO RELATED APPLICATION

The present application is based on PCT filing PCT/JP2018/012050 filed Mar. 26, 2018, which is incorporated herein by reference.

FIELD

The present invention relates to a servo control device including an instruction controller and a following controller.

BACKGROUND

A servo control device includes an instruction controller that generates a motor motion instruction according to a program and a following controller that controls a motor according to the motor motion instruction, and it starts driving the motor using an external input signal as a trigger. For example, when the following controller detects the external input signal, the following controller notifies the instruction controller of a detection signal, and the instruction controller transmits the motor motion instruction to the following controller on the basis of the notification. Thus, a delay for communication time occurs from when the following controller detects the external input signal to when motor driving is started.

Patent Literature 1 describes that position instructions from start of positioning to completion of positioning, sent from a host controller that serves as an instruction controller, are saved in a servo driver that serves as a following controller in advance so that the servo driver can drive the motor independently from the host controller.

CITATION LIST

Patent Literature

SUMMARY

Technical Problem

According to Patent Literature 1, the delay for the communication time can be reduced. However, while the motor is driven, an instruction cannot be switched to a motor motion instruction created in real time by the instruction controller; therefore, while the motor is driven, the motor motion instruction from the instruction controller cannot be corrected.

The present invention has been made in consideration of the above and an object of the present invention is to obtain a servo control device capable of correcting a motor motion instruction while a motor is driven.

Solution to Problem

To solve the above problems and to achieve the object, a servo control device according to an aspect of the present invention includes a first controller and a second controller. The first controller generates and transmits a motor motion instruction. The second controller includes: a first instruction storage unit; a second instruction storage unit; an instruction storage management unit; and a motor controller. The instruction storage management unit stores, in the first instruction storage unit, a first motor motion instruction that is a motor motion instruction generated and transmitted in advance by the first controller before an input of a motor activation signal and stores, in the second instruction storage unit, a second motor motion instruction that is a motor motion instruction generated and transmitted by the first controller after an input of the motor activation signal. The motor controller drives and controls a motor on the basis of the first motor motion instruction stored in the first instruction storage unit when the motor activation signal is input, and subsequently drives and controls the motor on the basis of the second motor motion instruction stored in the second instruction storage unit.

Advantageous Effects of Invention

A servo control device according to the present invention has an effect in that, while a motor is driven, a first motor motion instruction can be switched to a second motor motion instruction and thus a motor motion instruction can be corrected.

DESCRIPTION OF EMBODIMENTS

Hereinafter, a servo control device according to embodiments of the present invention will be described in detail with reference to the drawings. The present invention is not limited to the embodiments.

Embodiment

FIG. 1is a block diagram illustrating an exemplary functional configuration of a servo control device according to an embodiment. A servo control device100includes an instruction controller10that is a first controller and a following controller20that is a second controller. InFIG. 1, an example is illustrated in which the instruction controller10and the following controller20are connected on a one-to-one basis. However, the present embodiment can be applied to a system in which a plurality of following controllers20are connected to a single instruction controller10. The following controller20is connected to a motor30on a one-to-one basis.

The instruction controller10generates a position instruction that is a motor motion instruction for controlling the motor according to a machining program. The following controller20converts the position instruction transmitted from the instruction controller10into a current instruction and drives and controls the motor30according to the current instruction obtained by the conversion. The instruction controller10and the following controller20are connected via a network.

An external input signal G that is a motor activation signal is input to the following controller20. The external input signal G functions as an activation signal of the motor30. When an external input detection unit26receives the external input signal G, the external input detection unit26inputs detection information to an activation management unit27. When the activation management unit27receives the detection information from the external input detection unit26, the activation management unit27inputs activation information ST2to an instruction generation management unit11of the instruction controller10. The activation information ST2is a signal indicating that the following controller20has been activated.

The instruction controller10includes the instruction generation management unit11, an instruction generation unit12, an instruction selection information generation unit13, an activation request generation unit14, and an instruction switching request generation unit15. The activation request generation unit14generates an activation request ST1, which is a first control signal, on the basis of the machining program or the external input signal, and it inputs the activation request ST1to the instruction generation management unit11. The activation request ST1is a signal for starting an operation for generating the position instruction by the instruction controller10. The activation request ST1is a signal that can be set such that it is generated at a given timing desired by a user. The activation request ST1is generated before the input of the external input signal G.

The instruction switching request generation unit15generates an instruction switching request SW, which is a second control signal, on the basis of the machining program or the external input signal, and it inputs the instruction switching request SW to the instruction generation management unit11. The instruction switching request SW is a signal for switching the position instruction for driving the motor30from a position instruction created by the instruction controller10before the external input signal G is input to a position instruction created by the instruction controller10after the external input signal G is input. The position instruction created by the instruction controller10before the external input signal G is input is referred to as a preliminary instruction, and the position instruction created by the instruction controller10after the external input signal G is input is referred to as a sequential instruction. The preliminary instruction corresponds to a first motor motion instruction in the claims, and the sequential instruction corresponds to a second motor motion instruction in the claims. The instruction switching request SW is a signal that can be set such that it is generated at a given timing desired by a user. The instruction switching request SW is generated after the external input signal G is input.

The instruction generation management unit11generates preliminary instruction activation information SG1using the activation request ST1as a trigger and inputs the generated preliminary instruction activation information SG1to the instruction generation unit12and the instruction selection information generation unit13. The instruction generation management unit11generates sequential instruction activation information SG2on the basis of the activation information ST2input from the following controller20and the instruction switching request SW, and it inputs the generated sequential instruction activation information SG2to the instruction generation unit12and the instruction selection information generation unit13.

The instruction generation unit12generates the preliminary instruction using the preliminary instruction activation information SG1input from the instruction generation management unit11as a trigger for each control period T, and it generates the sequential instruction using the sequential instruction activation information SG2input from the instruction generation management unit11as a trigger for each control period T. The instruction generation unit12transmits the generated motor motion instruction (preliminary instruction or sequential instruction) to the following controller20.

The instruction selection information generation unit13generates instruction selection information SL on the basis of the preliminary instruction activation information SG1and the sequential instruction activation information SG2input from the instruction generation management unit11, and it transmits the generated instruction selection information SL to the following controller20. The instruction selection information SL is information indicating whether the position instruction transmitted from the instruction controller10to the following controller20is the preliminary instruction or the sequential instruction. The instruction selection information SL corresponds to a third control signal in the claims.

The following controller20includes an instruction storage management unit21, a preliminary instruction storage unit22that is a first instruction storage unit, a sequential instruction storage unit23that is a second instruction storage unit, an instruction acquisition unit24, a motor instruction generation unit25, the external input detection unit26, and the activation management unit27. The instruction acquisition unit24and the motor instruction generation unit25correspond to a motor controller in the claims.

The instruction storage management unit21determines whether the received motor motion instruction is the preliminary instruction or the sequential instruction according to the instruction selection information SL received from the instruction controller10. The instruction storage management unit21stores the preliminary instruction in the preliminary instruction storage unit22and stores the sequential instruction in the sequential instruction storage unit23.

The preliminary instruction storage unit22has a buffer capacity capable of storing the preliminary instructions for a plurality of control periods. The preliminary instruction storage unit22is, for example, a First In First Out (FIFO) type buffer or a ring buffer. The buffer size of the preliminary instruction storage unit22can be changed to a given size according to the system dependent conditions such as a memory size. The sequential instruction storage unit23has a buffer capacity capable of storing the sequential instruction for each control period for a single control period. The sequential instruction storage unit23may have a buffer capacity capable of storing the sequential instructions for two or more control periods.

The activation management unit27generates the activation information ST2on the basis of the detection information on the external input signal G input from the external input detection unit26and inputs the generated activation information ST2to the instruction generation management unit11of the instruction controller10. Furthermore, when inputting the activation information ST2to the instruction generation management unit11, if the instruction selection information SL indicates an instruction state where the preliminary instruction is selected, the activation management unit27inputs activation information ST3to the instruction acquisition unit24.

The instruction acquisition unit24obtains the preliminary instruction from the preliminary instruction storage unit22or the sequential instruction from the sequential instruction storage unit23on the basis of the instruction selection information SL and the activation information ST3input from the activation management unit27, and it inputs the obtained motor motion instruction to the motor instruction generation unit25. After the activation information ST3from the activation management unit27is input, the instruction acquisition unit24starts to operate. After the activation information ST3is input, if the instruction selection information SL indicates the preliminary instruction, the instruction acquisition unit24obtains the preliminary instruction from the preliminary instruction storage unit22.

After the activation information ST3is input, if the instruction selection information SL indicates the sequential instruction, the instruction acquisition unit24obtains the sequential instruction from the sequential instruction storage unit23.

The motor instruction generation unit25converts the preliminary instruction and the sequential instruction that are the position instruction input from the instruction acquisition unit24into the current instructions, and it outputs the current instruction obtained by the conversion to the motor30.

Next, exemplary operations of the instruction controller10and the following controller20will be described with reference toFIGS. 2, 3, and 4.FIG. 2is a flowchart illustrating exemplary operations of the instruction controller10and the following controller20before the input of the external input signal G.FIG. 3is a flowchart illustrating exemplary operations of the instruction controller10and the following controller20after the input of the external input signal G.FIG. 4is a time chart illustrating states of various signals before and after the input of the external input signal G.

InFIG. 4, one section in the horizontal direction indicates the control period T of the instruction controller10and the following controller20. A time chart of signals related to the instruction controller10is illustrated above a line K inFIG. 4. The activation request ST1, the instruction switching request SW, the motor motion instruction output from the instruction controller10, and the instruction selection information SL are illustrated above the line K inFIG. 4. A time chart of signals related to the following controller20is illustrated below the line K inFIG. 4. The motor motion instruction (preliminary instruction) stored in the preliminary instruction storage unit22, the motor motion instruction (sequential instruction) stored in the sequential instruction storage unit23, the external input signal G, the detection information that is an output of the external input detection unit26, the activation information ST2(ST3), and the current instruction output from the motor instruction generation unit25are illustrated below the line K inFIG. 4. In the time chart inFIG. 4, it is assumed that a delay of two control periods2T occurs before the signal transmitted from the instruction controller10is received by the following controller20. Similarly, a delay of two control periods2T occurs before a signal transmitted from the following controller20is received by the instruction controller10.

First, an operation before the external input signal G is input will be described with reference toFIGS. 2 and 4. When an activation request is input by the machining program or the external input signal, the activation request generation unit14turns on the activation request ST1and inputs the activation request ST1to the instruction generation management unit11(FIG. 4, time t1). At the time t1, the instruction switching request SW is in an off-state. When detecting the activation of the activation request ST1(step S1), the instruction generation management unit11generates the preliminary instruction activation information SG1and inputs the generated preliminary instruction activation information SG1to the instruction generation unit12and the instruction selection information generation unit13.

When the preliminary instruction activation information SG1is input, the instruction generation unit12sequentially generates the preliminary instruction for each control period T (step S2). The number of preliminary instructions to be created, i.e., the number of control periods for which the preliminary instructions are created, can be specified by a parameter that can be set by a user. In a case ofFIG. 4, four preliminary instructions “A”, “B”, “C”, and “D” are created (times t1to t3). When the preliminary instruction activation information SG1is input, the instruction selection information generation unit13generates the instruction selection information SL indicating that the motor motion instruction transmitted from the instruction controller10to the following controller20is the preliminary instruction. That is, when the preliminary instruction activation information SG1is input, the instruction selection information generation unit13turns on the instruction selection information SL. Thereafter, the instruction selection information generation unit13keeps the instruction selection information SL on until the sequential instruction activation information SG2from the instruction generation management unit11is turned on.

After the generation of the instruction, the instruction generation unit12transmits the preliminary instruction to the following controller20(step S3). Furthermore, the instruction selection information generation unit13turns on the instruction selection information SL and transmits the instruction selection information SL to the following controller20. The instruction generation unit12and the instruction selection information generation unit13determine whether the creation and transmission of the preliminary instructions for the number of times set by the user have been completed (step S4) and repeat processing in steps S2and S3until the creation and the transmission of the preliminary instructions for the above number of times are completed.

When receiving the motor motion instruction (step S5), the instruction storage management unit21determines whether the received motor motion instruction is the preliminary instruction or the sequential instruction on the basis of the instruction selection information SL. If the motor motion instruction is the preliminary instruction, the instruction storage management unit21stores the received motor motion instruction in the preliminary instruction storage unit22. Furthermore, if the motor motion instruction is the sequential instruction, the instruction storage management unit21inputs the received motor motion instruction to the sequential instruction storage unit23. In this exemplary operation, the received motor motion instruction is the preliminary instruction; therefore, the instruction storage management unit21stores the received preliminary instructions “A”, “B”, “C”, and “D” in the preliminary instruction storage unit22(step S6, times t2to t4).

Next, an operation after the external input signal G is input will be described with reference toFIGS. 3 and 4. Operations in steps S21to S35illustrated inFIG. 3indicate operations in a single control period T. When the external input detection unit26detects the external input signal G (time t5), the external input detection unit26inputs the detection information to the activation management unit27(FIG. 3, step S20, time t6). The activation management unit27makes an assessment of the instruction selection information SL, and if the instruction selection information SL indicates the preliminary instruction, the activation management unit27inputs the activation information ST3to the instruction acquisition unit24.

When the activation information ST3is input, the instruction acquisition unit24determines the state of the instruction selection information SL and determines whether the motor motion instruction is stored in the preliminary instruction storage unit22(steps S21and S22). If the instruction selection information SL indicates the preliminary instruction and the motor motion instruction is stored in the preliminary instruction storage unit22, the instruction acquisition unit24obtains the preliminary instruction from the preliminary instruction storage unit22and inputs the obtained preliminary instruction to the motor instruction generation unit25(step S23). If the instruction selection information SL indicates the preliminary instruction and the motor motion instruction is not stored in the preliminary instruction storage unit22(step S22, No), the instruction acquisition unit24may not necessarily output the motor motion instruction to the motor instruction generation unit25or the instruction acquisition unit24may input, to the motor instruction generation unit25, the motor motion instruction that is the same as the motor motion instruction in the previous control period.

The motor instruction generation unit25converts the input motor motion instruction into the current instruction and transmits the current instruction to the motor30(step S25). In addition, the activation management unit27turns on the activation information ST2and transmits the activation information ST2to the instruction controller10(step S26). Note that the operation in step S26may be performed between steps S20and S21.

The operation of the following controller20in a period between the times t6and t7inFIG. 4will be described. At the time t6, the external input detection unit26turns on a detection signal. Furthermore, since the instruction selection information SL indicates the preliminary instruction at the time t6, the activation management unit27turns on the activation information ST3. With this operation, the instruction acquisition unit24determines the state of the instruction selection information SL and determines whether the motor motion instruction is stored in the preliminary instruction storage unit22. At the time t6, since the instruction selection information SL indicates the preliminary instruction, Yes is determined in the determination in step S21. Furthermore, since the preliminary instructions “A”, “B”, “C”, and “D” are stored in the preliminary instruction storage unit22, Yes is determined in the determination in step S22. Thus, the instruction acquisition unit24obtains the preliminary instruction “A” from the preliminary instruction storage unit22at the time t6(step S23). The motor instruction generation unit25converts the preliminary instruction “A” into the current instruction and transmits the current instruction to the motor30(step S25). The activation management unit27transmits, to the instruction controller10, the activation information ST2that has been turned on (step S26).

Since the instruction selection information SL indicates the preliminary instruction and the preliminary instructions “B”, “C”, and “D” are stored in the preliminary instruction storage unit22at the time t7, the instruction acquisition unit24obtains the preliminary instruction “B” from the preliminary instruction storage unit22at the time t7(step S23). The motor instruction generation unit25converts the preliminary instruction “B” into the current instruction and transmits the current instruction to the motor30(step S25). The activation management unit27transmits, to the instruction controller10, the activation information ST2that has been turned on (step S26).

At a time t8, although the state of the instruction selection information SL transmitted from the instruction controller10is switched to an off-state in which the instruction selection information SL indicates the sequential instruction, as described above, a delay of two control periods2T occurs before the following controller20detects the switching from on to off. This means that the following controller20detects the switching from on to off of the instruction selection information SL at a time t10. Thus, the instruction selection information SL indicates the preliminary instruction and the preliminary instructions “C” and “D” are stored in the preliminary instruction storage unit22at the time t8; therefore, the instruction acquisition unit24obtains the preliminary instruction “C” from the preliminary instruction storage unit22at the time t8(step S23). The motor instruction generation unit25converts the preliminary instruction “C” into the current instruction and transmits the current instruction to the motor30(step S25). The activation management unit27transmits, to the instruction controller10, the activation information ST2that has been turned on (step S26).

Since the instruction selection information SL indicates the preliminary instruction and the preliminary instruction “D” is stored in the preliminary instruction storage unit22at a time t9, the instruction acquisition unit24obtains the preliminary instruction “D” from the preliminary instruction storage unit22at the time t9(step S23). The motor instruction generation unit25converts the preliminary instruction “D” into the current instruction and transmits the current instruction to the motor30(step S25). The activation management unit27transmits, to the instruction controller10, the activation information ST2that has been turned on (step S26).

InFIG. 3, the instruction controller10receives, from the following controller20, the activation information ST2that has been turned on (step S27). On the basis of the instruction switching request SW, the instruction generation management unit11determines whether to start creation of the sequential instruction subsequent to the preliminary instruction that has been previously created (step S28). If the instruction switching request SW does not indicate switching, the instruction generation management unit11does not turn on the sequential instruction activation information SG2. In this case, the instruction generation unit12does not perform a creation operation of the motor motion instruction, and the instruction selection information generation unit13maintains the instruction selection information SL in the state indicating the preliminary instruction (step S29).

In contrast, if the instruction switching request SW indicates switching, the instruction generation management unit11turns on the sequential instruction activation information SG2. The instruction generation unit12generates the sequential instruction for each control period using the activation of the sequential instruction activation information SG2input from the instruction generation management unit11as a trigger, and it transmits the sequential instruction to the following controller20(steps S30and S31). Furthermore, the instruction selection information generation unit13switches the instruction selection information SL to the state where the instruction selection information SL indicates the sequential instruction using the activation of the sequential instruction activation information SG2as a trigger (step S31).

An operation of the instruction controller10in a period between the time t6and the time t11inFIG. 4will be described. The activation information ST2is turned on at the time t6. The instruction generation management unit11detects the activation of the activation information ST2at the time t8that is a time point after a lapse of two control periods from the time t6. Since the activation information ST2is off at the time t6, the instruction generation management unit11does not transmit the sequential instruction activation information SG2to the instruction generation unit12and the instruction selection information generation unit13yet. Thus, at the time t6, the instruction generation unit12does not perform the creation operation of the motor motion instruction, and the instruction selection information generation unit13keeps the instruction selection information SL on. A similar operation is also performed at the time t7.

The instruction generation management unit11detects the activation of the activation information ST2at the time t8(step S27) and detects the activation of the instruction switching request SW (step S28). Thus, the instruction generation management unit11turns on the sequential instruction activation information SG2at the time t8. With this operation, the instruction generation unit12creates a sequential instruction “E” subsequent to the preliminary instruction “D” and transmits the sequential instruction “E” to the following controller20at the time t8. Thereafter, a sequential instruction “F” is transmitted to the following controller20at the time t9, a sequential instruction “G” is transmitted to the following controller20at the time t10, and a sequential instruction “H” is transmitted to the following controller20at the time t11. Furthermore, after the time t8, the instruction selection information generation unit13switches the state of the instruction selection information SL to an off-state in which the instruction selection information SL indicates the sequential instruction. The following controller20detects the switching of the instruction selection information SL from on to off at the time t10that is a time point after a lapse of two control periods from the time t8.

If the instruction switching request SW is turned on after the time point at which the instruction generation management unit11detects the activation of the activation information ST2, No is determined in the determination in step S28during a period from when the instruction generation management unit11detects the activation of the activation information ST2to when the instruction switching request SW is turned on and the processing in step S29is performed. In step S29, the instruction generation unit12does not perform the creation operation of the motor motion instruction, and the instruction selection information generation unit13keeps the instruction selection information SL on.

In the following controller20, the sequential instruction “E” is stored in the sequential instruction storage unit23at the time t10, the sequential instruction “F” is stored in the sequential instruction storage unit23at the time t11, the sequential instruction “G” is stored in the sequential instruction storage unit23at a time t12, and the sequential instruction “H” is stored in the sequential instruction storage unit23at a time t13.

InFIG. 3, the following controller20receives the signal from the instruction controller10(motor motion instruction, instruction selection information SL, and end information) (step S34). The following controller20determines whether the end information is received (step S35). If the end information is not received, the following controller20advances the procedure to step S21.

If the instruction selection information SL indicates the sequential instruction in step S21inFIG. 3(step S21, No), the instruction acquisition unit24obtains the sequential instruction from the sequential instruction storage unit23and inputs the obtained sequential instruction to the motor instruction generation unit25(step S24). The motor instruction generation unit25converts the input sequential instruction into the current instruction and transmits the current instruction to the motor30(step S25). Furthermore, the activation management unit27transmits, to the instruction controller10, the activation information ST2that has been turned on (step S26).

The operation of the following controller20in a period between the time t10and the time t13inFIG. 4will be described. At the time t10, the instruction selection information SL indicates the sequential instruction. Thus, the instruction acquisition unit24obtains the sequential instruction “E” from the sequential instruction storage unit23at the time t10(step S24). The motor instruction generation unit25converts the sequential instruction “E” into the current instruction and transmits the current instruction to the motor30(step S25). The activation management unit27transmits, to the instruction controller10, the activation information ST2that has been turned on (step S26). A similar processing is performed at the times t11, t12, and t13, and the sequential instructions “F”, “G”, and “H” are output to the motor30.

If a positioning operation is stopped or completed (step S32), the instruction controller10transmits, to the following controller20, the end information indicating the completion or stop of the positioning (step S33). When the position reaches a target position in the positioning control, when a user inputs a stop instruction, or when the operation is stopped due to an error, the instruction controller10generates the end information and transmits the end information to the following controller20. When the following controller20receives the end information from the instruction controller10(step S35, Yes), the following controller20ends the operation. The instruction controller10repeatedly performs the processing in steps S27to S33until the positioning is completed, and the following controller20repeatedly performs the operations in steps S21to S26and S34and S35until the following controller20receives the end information.

FIG. 5is a diagram illustrating an example of a machining apparatus controlled by the servo control device100. The machining apparatus includes a suction device40that suctions, i.e., attracts, a workpiece W, a conveyance shaft50, and the motor30that drives the conveyance shaft50to drive and convey the suction device40along the conveyance shaft50. The machining apparatus performs a first process of suctioning the workpiece W by the suction device40, a second process of driving the motor30to convey the suction device40suctioning the workpiece W along the conveyance shaft50from the suction position to the detaching position, and a third process of detaching the workpiece W that has reached the detaching position from the suction device40.

When the suction operation of the workpiece W by the suction device40ends, the external input signal G is input to the servo control device100. Before the input of the external input signal G, the machining program or an external input is set such that the activation request ST1is generated. Furthermore, for example, the machining program or the external input is set such that the instruction switching request SW is generated in which a series of position instructions related to the conveyance operation of the workpiece W from the suction position to the detaching position is set as the preliminary instructions. Furthermore, the number of series of preliminary instructions (the number of control periods) related to the conveyance operation of the workpiece W from the suction position to the detaching position is set as a parameter. With this setting, the conveyance operation of the suction device40based on the preliminary instruction is started immediately after the input of the external input signal G, and the suction device40is conveyed from the suction position to the detaching position by the preliminary instruction. The suction device40that has been conveyed to the detaching position is driven by the sequential instruction generated after the preliminary instruction, and the next process is performed. In this way, after the input of the external input signal G, the conveyance operation of the suction device40can be performed without delay. Furthermore, the preliminary instruction can be switched to the sequential instruction by the instruction switching request SW while the motor is in operation at a given timing intended by a user. Since the sequential instruction is not generated in advance before the input of the external input signal G unlike the preliminary instruction, the sequential instruction can be corrected while the motor is driven.

Next, a hardware configuration for realizing the instruction controller10and the following controller20illustrated inFIG. 1will be described. The instruction controller10and the following controller20can be realized by a processing circuit110illustrated inFIG. 6.

The processing circuit110includes a processor101, a memory102, an input circuit103, and an output circuit104. The processor101is, for example, a central processing unit (CPU) (also referred to as processing device, computing device, microprocessor, microcomputer, processor, and digital signal processor (DSP)) and a system large scale integration (LSI). The memory102is, for example, a nonvolatile or a volatile semiconductor memory such as a random access memory (RAM), a read only memory (ROM), a flash memory, an erasable programmable read only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM, registered trademark), a magnetic disk, a flexible disk, an optical disk, a compact disk, a mini disk, or a digital versatile disc (DVD).

Each component included in the instruction controller10and each component included in the following controller20can be realized by the processor101reading corresponding programs from the memory102and executing the read programs. The input circuit103is used when receiving information to be processed by the processor101and information to be stored in the memory102from an external device, and the output circuit104is used when outputting information generated by the processor101and information stored in the memory102to an external device.

Note that the motor instruction generation unit25of the following controller20is realized by a dedicated circuit such as a conversion circuit for converting a voltage supplied from an external device and generating a voltage to be applied to the motor30and a control circuit for controlling the conversion circuit.

In this way, in the present embodiment, the preliminary instruction can be switched to the sequential instruction while the motor is in operation. Therefore, the sequential instruction can be corrected while the motor is driven.

The configurations illustrated in the above embodiment are merely examples of an aspect of the present invention and can be combined with other known techniques. Furthermore, the configurations illustrated in the embodiment can be partially omitted or changed without departing from the scope of the present invention.

REFERENCE SIGNS LIST