Control device and control system

By recording instructions and execution time in industrial machinery, and calculating and outputting instructions for preparation time in advance, the preparation time problem caused by magnetic flux rise is solved, the operation efficiency and accuracy are improved, and the operation of the control device is simplified.

CN112817273BActive Publication Date: 2025-07-25FANUC LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202011270897.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-11-15
Filing Date
2020-11-13
Publication Date
2025-07-25
Estimated Expiration
2040-11-13

AI Technical Summary

Technical Problem

In the prior art, industrial machinery needs to wait for the preparation time for the magnetic flux to rise when switching from speed control to position control, resulting in an increase in cycle time and it is difficult to accurately measure the program execution time, especially the user-generated program.

Method used

By setting the execution time storage unit to record the instructions and the execution time in the industrial machinery, the advance instruction time calculation unit calculates the advance instruction time, and the advance instruction output unit outputs the instructions that require the preparation time in advance, shortening the preparation time.

Benefits of technology

It effectively shortens the preparation time of industrial machinery, improves the operation efficiency, reduces the waiting time, and eliminates the need for complex simulator measurement execution time, simplifies the load of the control device.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112817273B_ABST
    Figure CN112817273B_ABST
Patent Text Reader

Abstract

The present invention provides a control device and a control system. The control device records information on instructions and execution times of industrial machinery. The control device analyzes a program, and in the case where there is an instruction that requires a preparation time, calculates an advanced instruction time obtained by subtracting the preparation time from the start time of the instruction based on the already recorded execution time. The control device outputs in advance an instruction that requires a preparation time when the advanced instruction time is reached, thereby shortening the preparation time.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a control device and a control system for industrial machinery. Background Art

[0002] The operation of machinery requires a preparation time. For example, the spindle of a machine tool driven by an induction motor. In the vector control of an induction motor, the flux and torque current are used to control the torque. The flux is a first-order lag element of the exciting current and requires a preparation time until the flux rises sufficiently.

[0003] If the flux of the induction motor is increased, the responsiveness of the spindle is improved and the output of the torque is also increased. On the other hand, if the flux is increased, the power consumption increases and the motor heats up. Therefore, in the control of an induction motor, the exciting current is increased or decreased as needed to reduce the power consumption and suppress the heating.

[0004] Specifically, in the case where the spindle is lightly loaded and high torque is not required, speed control for controlling the rotational speed of the spindle is performed. In the case where high torque of the spindle or precision machining is required, position control with the rotational position of the spindle as the control object is performed. In addition, in the case of spindle positioning, position control is also performed. When switching the control of the spindle from speed control to position control, it is necessary to increase the flux of the induction motor. At this time, since the flux is a first-order lag element of the exciting current, a waiting time is generated.

[0005] Figure 15 Shows the change in flux when switching from speed control (light load) to position control (high response). When the exciting current of the rotor of the motor is increased at time T, since the flux is a first-order lag element of the exciting current, the flux rises later than the increase in the exciting current and reaches the desired level at time T1. The waiting time for the flux to rise causes an increase in the cycle time.

[0006] The following technique is known: pre-reading a machining program, switching from speed control to position control according to the program, measuring the time from speed control to position control, and strengthening the exciting current and increasing the flux when the measured time is below a predetermined value. For example, refer to Japanese Patent Laid-Open No. 2019-75961.

[0007] It is not easy to accurately measure the time based on the machining program. In addition, the pre-read program sometimes includes a program independently generated by the user. Measuring the execution time of such a program is difficult. Summary of the Invention

[0008] In the control of industrial machinery, a technique for shortening the preparation time of the operation is desired.

[0009] A control device according to an aspect of the present disclosure outputs a series of instructions including an instruction that requires a preparation time before the industrial machine starts operating, and controls the operation of the industrial machine. The control device includes: an execution time storage unit that causes the industrial machine to actually operate and records the correspondence between the instructions of the industrial machine and the time when the industrial machine actually operates according to the instructions; an advance instruction time calculation unit that calculates an advance instruction time obtained by subtracting the preparation time from the execution start time of the instruction that requires the preparation time based on the time stored in the execution time storage unit; and an advance instruction output unit that outputs in advance the instruction that requires the preparation time based on the advance instruction time.

[0010] A control system according to an aspect of the present disclosure outputs a series of instructions including an instruction that requires a preparation time before the industrial machine starts operating, and controls the operation of the industrial machine. The control system includes: an execution time storage unit that causes the industrial machine to actually operate and stores the correspondence between the instructions of the industrial machine and the time when the industrial machine actually operates according to the instructions; an advance instruction time calculation unit that calculates an advance instruction time obtained by subtracting the preparation time from the execution start time of the instruction that requires the preparation time based on the time stored in the execution time storage unit; and an advance instruction output unit that outputs in advance the instruction that requires the preparation time based on the advance instruction time.

[0011] According to an aspect of the present invention, it is possible to shorten the preparation time for the operation of the industrial machine. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] The above and other objects and features of the present invention will become apparent from the following description of embodiments with reference to the accompanying drawings. In these drawings:

[0013] Figure 1 is a hardware configuration diagram of the control device in the present embodiment.

[0014] Figure 2 is a block diagram of the control device in the present embodiment.

[0015] Figure 3 is a diagram for explaining a method of calculating the advance instruction time.

[0016] Figure 4 is a block diagram of the control device in the present embodiment.

[0017] Figure 5 is a block diagram of the control device in the present embodiment.

[0018] Figure 6 is a block diagram of the control device in the present embodiment.

[0019] Figure 7 is a block diagram of the control device in this embodiment.

[0020] Figure 8A is a diagram showing an example of the advance instruction generated by the instruction generation unit.

[0021] Figure 8B is a diagram showing an example of the advance instruction generated by the instruction generation unit.

[0022] Figure 9 is a block diagram of the control device in this embodiment.

[0023] Figure 10 is a block diagram of the numerical control device in this embodiment.

[0024] Figure 11 is a block diagram of the motor control device in this embodiment.

[0025] Figure 12 is a flowchart showing the sequence of advancing the output of the magnetic flux of the induction motor using the advance instruction.

[0026] Figure 13 is a diagram showing the relationship between the time constant and the output of the magnetic flux.

[0027] Figure 14 is a diagram showing the structure of the control system in this embodiment.

[0028] Figure 15 is a diagram showing the delay of the rise of the magnetic flux relative to the rise of the excitation current. Detailed Embodiment

[0029] Hereinafter, the control device of the present disclosure will be described. Figure 1 is a hardware structure diagram of the control device of an embodiment. The control device 100 includes a CPU 11, a ROM 12, a RAM 13, a non-volatile memory 14, a bus 15, and a drive control unit 20 that controls a drive unit 30 for controlling an industrial machine 40.

[0030] The CPU 11 is a processor that overall controls the control device 100. The CPU 11 reads out the system program stored in the ROM 12 via the bus 15 and controls the entire control device 100 according to this system program. Temporary calculation data, display data, and various data input by an operator are temporarily stored in the RAM 13.

[0031] The non-volatile memory 14 is configured to maintain the stored state even when the power supply of the control device 100 is turned off, for example, by battery backup (not shown). Programs read from an external device (not shown), programs input via an input unit (not shown), etc. are stored in the non-volatile memory 14. The programs stored in the non-volatile memory 14 are loaded into the RAM 13. In addition, an advance instruction output program of the present disclosure and a system program for controlling the entire control device 100 are written in the ROM 12.

[0032] The drive control unit 20 controls the drive unit 30 that drives the industrial machine 40. The CPU 11 reads out the program stored in the non-volatile memory 14 and outputs an instruction to the drive control unit 20. The drive control unit 20 controls the drive unit 30 of the industrial machine 40 according to the instruction from the CPU 11. The drive control unit 20 varies depending on the type of the industrial machine 40. In the case where the drive unit 30 is a servo motor, there are a dedicated drive circuit for controlling the servo motor, a sequence controller for a machine tool, a stamping machine, etc.

[0033] Figure 2 It is a block diagram of a control device 100a as one embodiment of the present disclosure. The control device 100a includes: a program storage unit 101 that stores a program composed of a series of instructions; a program analysis unit 102 that analyzes the program; an instruction output unit 103 that outputs the instructions described in the program to the drive control unit 20 of the industrial machine 40; an execution time recording unit 104 that records the instructions output by the instruction output unit 103 and the execution time of the industrial machine 40 for the instructions in an execution time storage unit 105; an advance instruction time calculation unit 106 that calculates the time for outputting an advance instruction; and an advance instruction output unit 107 that outputs the advance instruction time to the drive control unit 20.

[0034] The program storage unit 101 stores instructions for causing the industrial machine 40 to perform a predetermined operation. The instructions sometimes include instructions that require a preparation time. Instructions that require a preparation time are, for example, the rise of the magnetic flux of an induction motor, the tool change of a machine tool, the charging of an actuator in a stamping machine, the charging of a capacitor, etc.

[0035] The execution time recording unit 104 associates the instructions described in the program with the execution time during the actual operation of the industrial machine 40 and records them. The execution time is mainly recorded during the test run or initial operation of the industrial machine 40. In the motion programming of all machines including the industrial machine 40, before the completion of the program, it is tested whether the machine works according to requirements. During the test or initial operation, the machine is made to actually operate. The execution time during actual operation is more accurate than simulation. In addition, it is difficult to estimate the execution time of instructions independently generated by the user based on the program. However, if the machine is made to actually operate, the accurate execution time can be simply obtained. The execution time storage unit 105 stores the instructions in association with the accurate execution time of the instructions.

[0036] The advance instruction time calculation unit 106 calculates the advance instruction time of instructions that require preparation time. Based on this advance instruction time, it outputs the instructions that require preparation time. For example, in Figure 3 the example, it is assumed that the industrial machine 40 sequentially executes instructions from instruction 1 to instruction n. Here, if instruction j is an instruction that requires preparation time, the advance instruction time calculation unit calculates the advance instruction time by subtracting the preparation time from the start time of instruction j.

[0037] The preparation time can be set based on the specifications of the machine, the experience of the engineer, general methods, etc. For example, the time required for the rise of the magnetic flux of an induction motor can be set according to the time constant of the induction motor (described later). The time required for the pressure accumulation of a pressure accumulator and the charging of a capacitor can also be set according to the specifications of each component. In addition, the preparation time can also be obtained based on the execution time stored in the execution time storage unit 105.

[0038] If the advance instruction output unit 107 reaches the advance instruction time or a predetermined time before it, it outputs the instructions that require preparation time to the drive control unit 20. The drive control unit 20 drives the driven unit 31 according to the instructions that require preparation time output by the advance instruction output unit 107. By driving the driven unit 31 in advance, the standby time for the preparation time can be reduced. In addition, the instructions do not need to be strictly output to the advance instruction time. If based on the advance instruction time, they are output before and after the advance instruction time, the instruction can be started in advance, and the preparation time can be shortened.

[0039] Next, refer to Figure 4 to describe other embodiments. Figure 4 The control device 100b of

[0040] When there is an instruction that requires a preparation time in the program, the instruction determination unit 108 determines an instruction that causes the industrial machine 40 to operate at an early instruction time. As Figure 3 shown, the industrial machine 40 sequentially executes instructions from instruction 1 to instruction n, and the execution time of each instruction is stored in the execution time storage unit 105. The instruction determination unit 108 can determine an instruction that causes the industrial machine 40 to operate during the early instruction time based on the execution time stored in the execution time storage unit 105. In Figure 3 the example of, the instruction that causes the industrial machine 40 to operate during the early instruction time is instruction i.

[0041] The standby time calculation unit 109 calculates the standby time, which is the time from when the industrial machine 40 starts to operate until it reaches the early instruction time, based on the instruction i determined by the instruction determination unit 108. The standby time can be calculated by subtracting the start time of instruction i from the early instruction time.

[0042] After the industrial machine 40 starts to operate according to the instruction determined by the instruction determination unit 108, the early instruction output unit 107 outputs in advance an instruction that requires a preparation time after the standby time or after a time around the standby time.

[0043] Next, refer to Figure 5 for an explanation of other embodiments. Figure 5 The control device 100c of has an instruction determination unit 108 and an early instruction position recording unit 110, and the early instruction output unit 107 outputs an early instruction based on the position of the driven unit 31.

[0044] The early instruction position recording unit 110 acquires the position and moving direction of the driven unit 31, and records the position and moving direction of the driven unit 31 during the early instruction time.

[0045] After the industrial machine 40 starts to operate according to the instruction determined by the instruction determination unit 108, the early instruction output unit 107 monitors the position and moving direction of the driven unit 31, and outputs in advance an instruction that requires a preparation time when moving in the moving direction recorded in the early instruction position recording unit 110 based on the position recorded in the early instruction position recording unit 110 or near its position. The driven unit 31 of the industrial machine 40 is, for example, a tool of a machine tool, an arm and a hand of a robot, a component supply device, etc. The driven unit 31 moves along a predetermined track according to the determined instruction.

[0046] Next, refer to Figure 6 for an explanation of other embodiments. Figure 6 The control device 100d of has an instruction determination unit 108 and a speed recording unit 111. When there is an instruction that requires a preparation time in the program, the instruction determination unit 108 determines an instruction that causes the industrial machine 40 to operate at an early instruction time.

[0047] The speed recording unit 111 acquires the speed of the driven unit 31 and records the speed of the driven unit 31 during the advance command time.

[0048] After the industrial machine 40 starts to operate, the advance command output unit 107 monitors the speed of the driven unit 31 according to the command determined by the command determination unit 108. When the speed of the driven unit 31 reaches or is near the speed of the driven unit 31 recorded by the speed recording unit 111 within the advance command time, an instruction that requires a preparation time is output in advance. The driven unit 31 of the industrial machine 40 is, for example, a tool of a machine tool. In the case of a machine tool, the speed is not limited to one. In a machine tool, since multiple feed axes perform interpolation operations, for example, in the case of the three axes of the X-axis, Y-axis, and Z-axis, the speed becomes a vector {Vxd, Vyd, Vzd} composed of the speeds of the three axes.

[0049] Next, refer to Figure 7 for an explanation of the automatic generation of the advance output instruction. Figure 7 The control device 100e of has an instruction determination unit 108 and an instruction generation unit 112. When there is an instruction that requires a preparation time in the program, the instruction determination unit 108 determines an instruction that causes the industrial machine 40 to operate at the advance command time.

[0050] The instruction generation unit 112 generates an instruction to output an advance command at or before the advance command time and appends it to the instruction determined by the instruction determination unit 108. Figure 8A shows an example of the instruction generated by the instruction generation unit 112. The instruction "M999" is an example of an instruction that outputs an advance command. In the parameter "P_" of the instruction "M999", the driven unit is described, and in "Q_", the time is described. The instruction determined by the instruction determination unit 108 is "G00". The instruction generation unit 112 appends the instruction "M999" that outputs an advance command after the instruction "G00" determined by the instruction determination unit 108. The driven unit 31 to be driven in advance by "M999" is specified by "P21", and the standby time until the advance command is output is "Q500", that is, 500 ms.

[0051] Figure 8B is another example of the instruction generated by the instruction generation unit 112. In Figure 8B , a parameter "Q_" is appended to the existing instruction "M29". "M29" is an instruction that requires a preparation time. "Q500" outputs an advance command 500 ms after the execution start of "G00" which is the instruction before "M29". Here, when "Q_" is omitted, it is also possible to output in advance at the start of "M29". It is also possible to output in advance before the start of the determined instruction by reversing the sign of the value of Q.

[0052] In Figure 8Aand Figure 8B In the program of, specify the advance instruction time. Similarly, in Figure 5 the control device 100c, an instruction can be generated to specify the output timing of the advance instruction according to the position of the driven part 31. In addition, in Figure 6 the control device 100d, an instruction can be generated to specify the output timing of the advance instruction according to the speed of the driven part.

[0053] Next, refer to Figure 9 to describe other embodiments. Figure 9 The control device 100f of includes: a speed change unit 21 that drives the speed of the driven part 31 of the industrial machine 40 at a multiple of the speed specified by the instruction; and an execution time correction unit 113 that corrects the operation time changed by the speed change unit 21 to the normal operation time before the change.

[0054] The function of the speed change unit 21 is generally called override, and the driven part 31 is driven at a speed of 0 times to several times the speed specified by the instruction. Override is a function used, for example, in the action confirmation of the program. When performing the action confirmation of the program, first move the driven part 31 at a low speed to confirm the safety of the program. If the safety is confirmed, the speed is increased to shorten the confirmation operation. If override is performed in this way, it is driven at a speed different from the actual action, so the execution time of the industrial machine 40 deviates from the actual situation.

[0055] The execution time correction unit 113 corrects the execution time using the amount of change in speed (override value) when the speed change unit 21 performs override. The execution time recording unit 104 records the time corrected by the execution time correction unit 113 in the execution time storage unit 105.

[0056] In this way, in Figure 9 the control device 100f, when confirming the action of the industrial machine 40, even if the speed of the industrial machine 40 changes during the test run, the execution time can be corrected considering the amount of change in speed, so the execution time can be obtained.

[0057] Next, refer to Figure 10 to describe the numerical control device 100g as an embodiment. Figure 10The numerical control device 100g includes: a program storage unit 101 that stores a program composed of a series of instructions; a program analysis unit 102 that analyzes the program; an instruction output unit 103 that outputs the instructions described in the program to the motor control device 20a of the machine tool; an execution time recording unit 104 that associates the instructions output by the instruction output unit 103 with the execution time of the instructions and records them in the execution time storage unit 105; an advance instruction time calculation unit 106 that calculates the time for outputting advance instructions; an advance instruction output unit 107 that outputs the start of the instructions that require preparation time in advance to the motor control device 20a; and a preparation time storage unit 114 that stores the preparation time.

[0058] Refer to Figure 11 , an example of applying an embodiment of the present invention to the vector control of the induction motor 30a will be described. Figure 11 The numerical control device 100g includes a motor control device 20a in order to control the induction motor 30a. The motor control device 20a corresponds to the drive control unit 20 of other embodiments. Figure 11 The motor control device 20a of includes a speed control unit 200a and a position control unit 200b for controlling the induction motor 30a.

[0059] The motor control device 20a performs vector control of the induction motor 30a. In vector control, the control current of the three-phase AC motor is decomposed into two phases, a magnetic field component (d-axis) and a torque component (q-axis), and the magnitude of the torque of the driven part 31 (for example, the main shaft) of the induction motor 30a is controlled.

[0060] The two-phase three-phase conversion unit 201 converts the control current from two phases to three phases and from three phases to two phases. The two-phase three-phase conversion unit 201 decomposes the three-phase current of the induction motor 30a into an exciting current (d-axis) that generates magnetic flux and a torque current (q-axis) that acts on the magnetic flux to generate torque. Position feedback and speed feedback are fed back to the numerical control device 100g. The control of the numerical control device 100g can be switched between a position control mode and a speed control mode. In the case of the position control mode, the rotational position of the main shaft is set as the control object, and in the case of the speed control mode, the rotational speed of the main shaft is set as the control object. In the case of the position control mode, the position control unit 200b outputs a target torque to the motor control device 20a, and in the case of the speed control mode, the speed control unit 200a outputs a target torque to the motor control device 20a. The motor control device 20a performs vector control according to the target torque from the numerical control device 100g.

[0061] The magnetic flux command generation unit 202 outputs a target magnetic flux based on the target torque from the speed control unit 200a (or the position control unit 200b). The subtraction unit 203 calculates the difference between the target magnetic flux generated by the magnetic flux command generation unit 202 and the magnetic flux estimated by the magnetic flux estimation unit 205. The magnetic flux control unit 204 outputs a target excitation current based on this difference. The subtraction unit 206 calculates the difference between the excitation current (d-axis current) of the induction motor 30a output from the two-phase to three-phase conversion unit 201 and the target excitation current output from the magnetic flux control unit 204. The excitation current control unit 207 outputs a target voltage for the d-axis based on this difference.

[0062] The torque current generation unit 208 outputs a target torque current based on the target torque of the induction motor. The subtraction unit 209 calculates the difference between the target torque current generated by the torque current generation unit 208 and the torque current (q-axis current) of the induction motor 30a output from the two-phase to three-phase conversion unit 201. The torque current control unit 210 outputs a target voltage for the q-axis based on this difference.

[0063] The two-phase to three-phase conversion unit 201 converts the target voltage for the d-axis output from the excitation current control unit 207 and the target voltage for the q-axis output from the torque current control unit 210 into a three-phase alternating current and outputs it to the induction motor 30a. In this way, the motor control device 20a performs vector control of the induction motor 30a.

[0064] In the speed control mode, the speed servo of the numerical control device 100g and the vector control of the motor control device 20a are performed in parallel. In the position control mode, the position servo of the numerical control device 100g and the vector control of the motor control device 20a are performed in parallel. The speed servo may also be included in the position servo.

[0065] In Figure 11In order to facilitate the description of vector control, the numerical control device 100g has the functions of speed servo and position servo. Generally, the functions of speed servo and position servo are functions of the motor control device 20a. Specifically, the speed control unit 200a and the position control unit 200b are included in the motor control device 20a. Speed feedback is fed back to the speed control unit 200a. Position feedback is fed back to the position control unit 200b. The command output unit 103 of the numerical control device 100g outputs a speed command for the speed control unit 200a and a position command for the position control unit 200b, respectively. The control switch switches the target torque to either the output of the speed control unit 200a or the output of the position control unit 200b. The switching is performed according to the instruction of the program analysis unit 102 of the numerical control device 100g. Speed servo may also be included in position servo. As described above, even when the motor control device 20a has the functions of speed servo and position servo, the effects of the present invention do not change at all.

[0066] Refer to Figure 12 , the flux rise when switching from speed control to position control will be described. In this example, the Figure 8A shown program is used. In Figure 8A , if "G00" is rapid feed and "G84" is peck cycle processing, the switch from "G00 (speed control)" to "G84 (position control)" is performed. In the switch from speed control to position control, a preparation time for flux rise is required.

[0067] An early output command such as "M999" is described after "G00". The program analysis unit 102 reads "M999" (step S1), and reads the parameter "P500" representing the control object and the parameter "Q21" representing the standby time (step S2). The early command output unit 107 of the numerical control device 100g stands by for the standby time "500 ms" specified by "Q500" after the execution of "G00" starts (step S3). Then, the program analysis unit 102 outputs in advance a command indicating the flux rise of the induction motor "21" specified by the parameter "P21" (step S4).

[0068] The motor control device 20a increases the exciting current that generates the flux according to the early command of the numerical control device 100g (step S5). After that, since the flux is a first-order lag element of the exciting current, it starts to increase lagging behind the rise of the exciting current (step S6). If the flux increases as the exciting current rises, it is considered that the speed of the induction motor increases excessively, but in fact it is not the case. As Figure 11As shown, the induction motor is affected not only by vector control but also by speed servo and position servo. The speed servo responds faster than the magnetic flux. Even if the torque increases due to the enhanced magnetic flux, the target torque and the torque current decrease due to the action of the speed servo, so there is no significant change in the rotational speed of the spindle. Therefore, even if the magnetic flux of the induction motor is strengthened during cutting, there will be no problem. After increasing the excitation current, the magnetic flux increases while keeping the speed of the spindle constant (step S7).

[0069] After step S5, if the preparation time has elapsed, it is the time when the command output unit 103 outputs the command "G84". Here, the numerical control device 100g switches from speed control, i.e., "G00", to position control, i.e., "G84" (step S8). In this embodiment, the preparation for the command "G84", i.e., the rise of the magnetic flux, is implemented in advance. Therefore, even when switching from speed control to position control, "G84" can be started without waiting for the preparation time of the induction motor (step S9).

[0070] In addition, in Figure 10 the preparation time storage unit 114, the preparation time required for the magnetic flux to rise is set. This preparation time is based on the time constant of the induction motor. Figure 13 is the change in the magnetic flux when the excitation current changes from 0 to 100%. If n is set as an integer and τ is set as the time constant, after the excitation current rises, the output of the magnetic flux at time τ is 63.2%, and the output of the magnetic flux at 2τ is 86.5%. At 4τ, it is 98.2%, and at 7τ, it is 99.9%. Thus, if the time from the rise of the excitation current is 4 to 7 times the time constant, the output is close to 100%. Therefore, it is preferable to set a value of 4 to 7 times the time constant as the preparation time in the preparation time storage unit 114. In this way, the preparation time can be set based on the mechanical specifications, the experience of engineers, general methods, etc.

[0071] As described above, in this embodiment, during the test run and initial operation of the industrial machine 40, information on commands and execution times is recorded. The control device 100 analyzes the program. In the case of a command that requires a preparation time, based on the recorded execution time, the control device 100 calculates the advance command time obtained by subtracting the preparation time from the start time of the command. The control device 100 outputs in advance the command that requires a preparation time when the advance command time is reached, shortening the preparation time. The test run is generally necessarily carried out when using the machine including the industrial machine 40. Therefore, the accurate execution time when the machine actually operates can be obtained without increasing the burden on the user. In addition, by obtaining the execution time at the initial operation of the machine, the accuracy can also be improved step by step.

[0072] In order to obtain the execution time for the actual operation of the industrial machine 40, complex software like that of a simulator is not required. Additionally, it is difficult to measure instructions independently generated by the user based on a program using a simulator. If the industrial machine 40 is actually operated, the execution time can be obtained immediately.

[0073] By generating an instruction that outputs a pre-instruction and inserting it into the program, it is not necessary to measure the timing of the pre-output during program execution, which can reduce the load on the control device 100. Additionally, the user can rewrite the parameters of the instruction for fine-tuning.

[0074] In Figures 1 - 7 and Figure 9 In the embodiment, it is configured such that the drive control unit 20 is included in the control devices 100, 100a to 100f, but it can also be like the embodiment of Figure 10 where the control device (numerical control device 100g) and the drive control unit (motor control device 20a) are set as different devices. Additionally, in the present embodiment, the industrial machine 40 and the control devices 100, 100a to 100f are regarded as different devices, but the control device of the present embodiment can also be assembled inside the industrial machine 40. Additionally, in the present embodiment, a program storage unit is provided in the control device, but it is also possible to read a program recorded on a removable recording medium or obtain a program stored on a network. Additionally, the pre-instruction output unit 107 can also be provided not in the control device 100 but in the drive control unit 20.

[0075] Furthermore, in the case of a machine tool, sometimes the execution time of one instruction is very short, such as in micro machining. In such a case, the execution time can also be recorded according to a predetermined number of each instruction. For example, if it is recorded for every 10 instructions, it is recorded as the execution time of instructions 1 to 10, the execution time of instructions 11 to 20,....

[0076] In Figure 14 In the control system 500 of n the external storage device 50 stores the program and the execution time. In the control system 500 as one embodiment, it includes a plurality of numerical control devices 1001 to 100 n and the industrial machines 401 to 40 n controlled by each numerical control device. The numerical control devices 1001 to 100

[0077] The external storage device 50 has a program storage unit 101 and an execution time storage unit 105. The external storage device 50 can store high-capacity data. When the operation of the industrial machine 40 is complex, the data volume of the program and instructions increases, and the data volume of the execution time corresponding to the instructions also increases. In the case of a machine tool, when machining a curved surface shape approximated by minute line segments, the number of instructions becomes huge. If a high-capacity external storage device is used, it is possible to cope with a significant increase in the data volume of the program and the execution time.

[0078] In addition, when the same program is executed using the same type of industrial machine 40, it is considered that the execution time is the same. Therefore, if an advance instruction time is set in one industrial machine 40, there is no need to set the advance instruction time during the test run and initial operation of other industrial machines 40.

[0079] As described above, the embodiments of the present invention have been described, but the present invention is not limited to the above-described example of the embodiment, and can be implemented in various ways by making appropriate changes.

Claims

1. A control device that outputs a series of instructions including instructions that require a preparation time before the industrial machine starts operating to the industrial machine and controls the operation of the industrial machine. Characterized in that, The control device includes: An execution time recording unit that causes the industrial machine to actually operate and records the instructions of the industrial machine and the time when the industrial machine actually operates according to the instructions in correspondence; An advance instruction time calculation unit that calculates an advance instruction time obtained by subtracting the preparation time from the execution start time of the instruction that requires the preparation time based on the time recorded by the execution time recording unit; An advance instruction output unit that outputs in advance the instruction that requires the preparation time based on the advance instruction time; An instruction determination unit that determines an instruction for causing the industrial machine to operate within the advance instruction time based on the time when the industrial machine actually operates; And A standby time calculation unit that calculates the time from when the industrial machine starts operating according to the determined instruction until the advance instruction time is reached, After the industrial machine starts operating according to the determined instruction, the advance instruction output unit outputs an instruction that requires the preparation time based on the time calculated by the standby time calculation unit.

2. A control device that outputs a series of instructions including instructions that require a preparation time before the industrial machine starts operating to the industrial machine and controls the operation of the industrial machine. Characterized in that, The control device includes: An execution time recording unit that causes the industrial machine to actually operate and records the instructions of the industrial machine and the time when the industrial machine actually operates according to the instructions in correspondence; An advance instruction time calculation unit that calculates an advance instruction time obtained by subtracting the preparation time from the execution start time of the instruction that requires the preparation time based on the time recorded by the execution time recording unit; An advance instruction output unit that outputs in advance the instruction that requires the preparation time based on the advance instruction time; An instruction determination unit that determines an instruction for causing the industrial machine to operate within the advance instruction time according to the time when the industrial machine actually operates; And An advance instruction position recording unit that records the position of the driven part of the industrial machine within the advance instruction time when the industrial machine operates according to the determined instruction, The advance instruction output unit outputs an instruction that requires the preparation time based on the position of the driven part recorded in the advance instruction position recording unit.

3. A control device that outputs a series of instructions including instructions that require a preparation time before the industrial machine starts operating to the industrial machine and controls the operation of the industrial machine. Characterized in that, The control device includes: An execution time recording unit that causes the industrial machine to actually operate and records the instructions of the industrial machine and the time when the industrial machine actually operates according to the instructions in correspondence; An advance instruction time calculation unit that calculates an advance instruction time obtained by subtracting the preparation time from the execution start time of an instruction that requires the preparation time, based on the time recorded by the execution time recording unit; An advance instruction output unit that outputs in advance an instruction that requires the preparation time, based on the advance instruction time; An instruction determination unit that determines an instruction for operating the industrial machine within the advance instruction time, according to the time of actual operation of the industrial machine; And A speed recording unit that, when the industrial machine operates according to the determined instruction, records the speed of the driven part of the industrial machine within the advance instruction time, The advance instruction output unit outputs an instruction that requires the preparation time, based on the speed of the driven part recorded in the speed recording unit.

4. The control device according to any one of claims 1 to 3, characterized in that The control device includes an instruction generation unit that generates an instruction for outputting an advance instruction based on the advance instruction time and adds the instruction to the instruction determined by the instruction determination unit.

5. The control device according to any one of claims 1 to 3, characterized in that The control device includes: A speed change unit that controls so that the operation of the industrial machine is performed at a multiple speed of the speed specified by the instruction; and An execution time correction unit that corrects the operation time controlled by the speed change unit to the normal operation time that is not controlled, The execution time recording unit records the time corrected by the execution time correction unit as the time of actual operation of the industrial machine.

6. The control device according to any one of claims 1 to 3, characterized in that The industrial machine includes an induction motor, The control device includes a preparation time setting unit that sets a multiple of the time constant of the induction motor as the preparation time.

7. The control device according to claim 6, characterized in that In the case where there is an instruction to switch the induction motor from speed control to position control, The control device performs the following control: based on the advance instruction time of the instruction, increases the excitation current of the induction motor, and continues speed control before the start of the operation according to the instruction, and switches from speed control to position control at the start of the operation of the instruction.

8. The control device according to any one of claims 1 to 3, characterized in that The control device includes a preparation time setting unit that sets the preparation time of the instruction based on the preparation time required when the industrial machine actually operates.

9. A control system that outputs a series of instructions including an instruction that requires a preparation time before the start of operation of an industrial machine to the industrial machine and controls the operation of the industrial machine, Characterized in that The control system includes: An execution time recording unit that causes the industrial machine to actually operate and stores the instruction of the industrial machine and the time of actual operation of the industrial machine according to the instruction in correspondence; An advance instruction time calculation unit that calculates an advance instruction time obtained by subtracting the preparation time from the execution start time of an instruction that requires the preparation time, based on the time stored in the execution time recording unit; An advance instruction output unit that outputs in advance an instruction that requires the preparation time, based on the advance instruction time; An instruction determination unit that determines an instruction for causing the industrial machine to operate within the advance instruction time, based on the time of actual operation of the industrial machine; A standby time calculation unit that calculates the time from when the industrial machine starts operating according to the determined instruction until the advance instruction time is reached; And An external storage device, wherein the execution time recording unit is provided in the external storage device, and the advance instruction output unit outputs an instruction that requires the preparation time, based on the time calculated by the standby time calculation unit, after the industrial machine starts operating according to the determined instruction.

10. A control system that outputs a series of instructions including an instruction that requires a preparation time before the industrial machine starts operating, to the industrial machine and controls the operation of the industrial machine, characterized in that the control system includes: An execution time recording unit that causes the industrial machine to actually operate and records the instruction of the industrial machine and the time when the industrial machine actually operates according to the instruction in association with each other; An advance instruction time calculation unit that calculates an advance instruction time obtained by subtracting the preparation time from the execution start time of an instruction that requires the preparation time, based on the time recorded by the execution time recording unit; An advance instruction output unit that outputs in advance an instruction that requires the preparation time, based on the advance instruction time; An instruction determination unit that determines an instruction for causing the industrial machine to operate within the advance instruction time, according to the time of actual operation of the industrial machine; An advance instruction position recording unit that records the position of the driven part of the industrial machine within the advance instruction time when the industrial machine operates according to the determined instruction; and An external storage device, wherein the execution time recording unit is provided in the external storage device, and the advance instruction output unit outputs an instruction that requires the preparation time, based on the position of the driven part recorded in the advance instruction position recording unit.

11. A control system that outputs a series of instructions including an instruction that requires a preparation time before the industrial machine starts operating, to the industrial machine and controls the operation of the industrial machine, characterized in that the control system includes: An execution time recording unit that causes the industrial machine to actually operate and records the instruction of the industrial machine and the time when the industrial machine actually operates according to the instruction in association with each other; An advance instruction time calculation unit that calculates an advance instruction time obtained by subtracting the preparation time from the execution start time of an instruction that requires the preparation time, based on the time recorded by the execution time recording unit; An advance instruction output unit that outputs in advance an instruction that requires the preparation time, based on the advance instruction time; An instruction determination unit that determines an instruction for operating the industrial machine within the advance instruction time based on the time of the actual operation of the industrial machine; A speed recording unit that records the speed of the driven part of the industrial machine within the advance instruction time when the industrial machine operates according to the determined instruction; and An external storage device, The execution time recording unit is provided in the external storage device, The advance instruction output unit outputs an instruction that requires the preparation time based on the speed of the driven part recorded in the speed recording unit.

Citation Information

Patent Citations

  • Motor controller

    JP2019075961A

  • Motor control device

    CN109687793A

  • Machine tool and data conversion method in the machine tool

    JP2007200018A

  • Numerical controller

    US20060239386A1

  • Numerical controller for notifying execution of auxiliary function in advance

    US20170003673A1