Numerical control device
The numerical control device dynamically adjusts the control period based on operating state to ensure timely data processing and stable machine control, addressing the challenges of increased processing demands and system loads.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-07-13
- Publication Date
- 2026-03-17
AI Technical Summary
Numerical control devices face challenges in completing periodic processing within a fixed control cycle due to increased processing capacity, multi-functionalization of machines, and heavy system loads, leading to unstable data input and output, and potential slow response times if the control cycle is lengthened to ensure stability.
The numerical control device dynamically adjusts the control period based on the operating state by using a control cycle determination unit that compares state information with thresholds and adjusts the control cycle length through a control cycle change unit.
This approach prevents uncontrollable situations by ensuring timely data processing and maintains fast response times by adapting the control cycle to the device's state, thereby stabilizing machine control.
Smart Images

Figure 0007832328000001 
Figure 0007832328000002 
Figure 0007832328000003
Abstract
Description
[Technical Field]
[0001] This invention relates to a numerical control device. [Background technology]
[0002] Numerical control devices (NCUs) have a numerical control unit that inputs and outputs data to and from motor control units, peripheral device control units, and other components at a fixed control cycle. This data input and output is performed within processes that are executed periodically at predetermined control cycles. To ensure that data input and output processes are executed without delay, it is necessary to complete multiple processes (periodic processes) that are executed periodically within a fixed control cycle.
[0003] However, the number and volume of periodic processes performed by the numerical control unit are increasing due to the following factors. - Increased processing capacity for each periodic process due to multi-axis machining. - Increase in the number of periodic processes due to the multi-functionalization of machines - Increased load on program commands executed by numerical control units. - Increased parameter and signal settings that place a heavy load on the system. Therefore, periodic processing may not be completed within a fixed period, and data may not be input or output. Conventionally, periodic processing has been accelerated by changing the control period for axes that perform high-speed commands (for example, Patent Documents 1 and 2). [Prior art documents] [Patent Documents]
[0004] [Patent Document 1] Japanese Patent Publication No. 2005-186549 [Patent Document 2] Japanese Patent Application Publication No. 63-052207 [Overview of the Initiative] [Problems that the invention aims to solve]
[0005] As the periodic processing performed by numerical control devices increases, it may become impossible to input and output data at a constant control cycle, resulting in the numerical control device being unable to stably control the machine. On the other hand, if the control cycle is set too long in order to complete the periodic processing within the control cycle, the control itself becomes stable, but the response with the control equipment becomes slow. Therefore, there is a need for a technology that can set an appropriate control cycle length according to the operating state. [Means for solving the problem]
[0006] The numerical control device disclosed herein solves the above problem by dynamically changing the control period for executing periodic processing according to the operating state of the numerical control device.
[0007] Furthermore, one aspect of the present disclosure is a numerical control device that inputs and outputs control information to and from a controlled object, comprising: a numerical control unit that inputs and outputs the control information to and from the controlled object at a predetermined control cycle; a control cycle determination unit that compares information relating to the operating state of the numerical control device with a predetermined threshold and determines the necessity of changing the length of the control cycle based on the comparison result; and a control cycle change unit that changes the length of the control cycle based on the determination result of the control cycle determination unit. The control cycle determination unit comprises a state data storage unit that stores time-series data of information relating to the state, and the control cycle determination unit estimates changes in the information relating to the state based on the time-series data of information relating to the state stored in the state data storage unit, and determines the necessity of changing the length of the control cycle based on the time-series data of past control cycles based on the estimation result. It is a numerical control device. [Effects of the Invention]
[0008] In one aspect of this disclosure, it is expected that in the execution of processing by a numerical control device, the control period will be dynamically changed according to the state of the numerical control device, and that an uncontrollable situation will not occur due to the execution time of periodic processing exceeding the control period. [Brief explanation of the drawing]
[0009] [Figure 1] This is a schematic hardware diagram of a numerical control device according to one embodiment of the present invention. [Figure 2] This is a block diagram showing the schematic functions of a numerical control device according to the first embodiment of the present invention. [Figure 3]It is a diagram showing an example of a process executed for each control cycle in a normal state. [Figure 4] It is a diagram showing an operation example of a numerical control device according to the prior art when the amount of control information to be processed increases more than expected. [Figure 5] It is a diagram showing an operation example of a numerical control device according to the first embodiment when the amount of control information to be processed increases. [Figure 6] It is a block diagram showing a schematic function of a numerical control device according to the second embodiment of the present invention. [Figure 7] It is a block diagram showing a schematic function of a numerical control device according to the third embodiment of the present invention. [Figure 8] It is an example of display of information related to a state and the length of a changed control cycle. [Figure 9] It is another example of display of information related to a state and the length of a changed control cycle. [Figure 10] It is another example of display of information related to a state and the length of a changed control cycle.
Embodiments of the Invention
[0010] Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a schematic hardware configuration diagram showing a main part of a numerical control device according to an embodiment of the present invention. The numerical control device 1 according to this embodiment can be implemented as a numerical control device that controls an industrial machine 2 installed at a manufacturing site such as a factory. Examples of the industrial machine 2 include a machining center, an electric discharge machining machine, an injection molding machine, a robot, and the like.
[0011] The CPU 11 included in the numerical control device 1 according to this embodiment is a processor that controls the numerical control device 1 as a whole. The CPU 11 reads out a system program stored in the ROM 12 via the bus 22 and controls the entire numerical control device 1 according to the system program. Temporary calculation data, display data, and various data input from the outside are temporarily stored in the RAM 13.
[0012] The non-volatile memory 14 is composed of, for example, a battery-backed memory (not shown) or an SSD (Solid State Drive), and its stored state is maintained even when the power to the numerical control device 1 is turned off. The non-volatile memory 14 stores data acquired from the industrial machine 2, control programs and data read from external devices 72 via the interface 15, control programs and data input via the input device 71, and control programs and data acquired from other devices via the network. The control programs and data stored in the non-volatile memory 14 may be expanded into the RAM 13 when executed / used. In addition, various system programs, such as known analysis programs, are pre-written in the ROM 12.
[0013] Interface 15 is an interface for connecting the CPU 11 of the numerical control device 1 to an external device 72 such as a USB device. From the external device 72, control programs and setting data used to control the industrial machine 2 are read, for example. Control programs and setting data edited within the numerical control device 1 can also be stored in an external storage means via the external device 72. The PLC (Programmable Logic Controller) 16 executes a ladder program and outputs signals to control equipment attached to the industrial machine 2 (for example, multiple sensors such as temperature sensors and humidity sensors, actuators such as robots placed around it) via the I / O unit 19. It also receives signals from various switches on the control panel on the main body of the industrial machine 2 and peripheral devices, processes the necessary signals, and then passes them to the CPU 11. In Figure 1, the PLC 16 is built into the numerical control device 1, but the PLC 16 may also be connected to the outside of the numerical control device 1.
[0014] The display device 70 displays data obtained as a result of the execution of various data, programs, etc., loaded into memory, via the interface 17. The input device 71, consisting of a keyboard and pointing device, transmits commands, data, etc., based on operator operations to the CPU 11 via the interface 18.
[0015] The axis control circuit 30, which controls the axes of the industrial machine 2, receives a command from the CPU 11 to move the axis by a predetermined amount and outputs the axis command to the servo amplifier 40. The servo amplifier 40 receives this command and drives the servo motor 50 that moves the axis of the machine tool. The servo motor 50 of the axis has a built-in position and speed sensor, and the position and speed feedback signal from this position and speed sensor is fed back to the axis control circuit 30 to perform position and speed feedback control. In the hardware configuration diagram of Figure 1, only one axis control circuit 30, servo amplifier 40, and servo motor 50 are shown, but in reality, there are as many as the number of axes of the industrial machine 2 to be controlled. In Figure 1, the axis control circuit 30 is built inside the numerical control device 1, but the axis control circuit 30 may be connected to the outside of the numerical control device 1.
[0016] Figure 2 is a schematic block diagram showing the functions of the numerical control device 1 according to the first embodiment of the present invention. Each function of the numerical control device 1 according to this embodiment is realized by the CPU 11 of the numerical control device 1 shown in Figure 1 executing a system program and controlling the operation of each part of the numerical control device 1.
[0017] The numerical control device 1 of this embodiment includes a numerical control unit 100, a motor control unit 110, a peripheral device control unit 120, a control cycle determination unit 130, and a control cycle change unit 140. In addition, a control program 200, which includes commands for controlling the industrial machine 2, is pre-stored in the RAM 13 or non-volatile memory 14 of the numerical control device 1.
[0018] The numerical control unit 100 sequentially reads each block of the control program 200 and analyzes the commands in each block. It also analyzes signals from peripheral devices of the industrial machine 2. Next, based on the analysis results, the numerical control unit 100 creates control information related to the control of the servo motors 50 and peripheral devices of the industrial machine 2. Then, it inputs and outputs the created control information to and from the motor control unit 110 and the peripheral device control unit 120 at a predetermined control cycle. The control information created by the numerical control unit 100 may be, for example, information related to axis movement for controlling each axis of the industrial machine 2. Alternatively, the control information created by the numerical control unit 100 may be, for example, information related to signals for controlling peripheral devices of the industrial machine 2. When the numerical control device 1 starts controlling the industrial machine 2 based on the control program 200, the numerical control unit 100 executes each process at a predetermined control cycle (for example, 8ms). On the other hand, when the control cycle change unit 140 commands a change in the control cycle, the numerical control unit 100 performs each process at the commanded control cycle.
[0019] Furthermore, the numerical control unit 100 acquires information relating to the operating state of the numerical control device 1 from each part of the numerical control device 1. This state-related information may include, for example, the control program 200 to be analyzed within the current control cycle, the block number of the control program to be analyzed within the current control cycle, the amount of blocks in the control program 200 to be analyzed within the current control cycle, the processing load for analyzing the blocks within the current control cycle, the amount of signals to be processed within the current control cycle, the amount of control information data created within the current control cycle, the amount of control information data input and output between the motor control unit 110 and the peripheral device control unit 120 within the current control cycle, the RAM 13 and non-volatile memory 14, and parameters related to the control of the industrial machine 2 set in the control program 200. The state-related information may include multiple pieces of the above-mentioned information. The numerical control unit 100 outputs this acquired state-related information to the control cycle determination unit 130.
[0020] The motor control unit 110 controls the servo motor 50 of the industrial machine 2 based on control information input from the numerical control unit 100. It also outputs control information related to the operation of the servo motor 50 to the numerical control unit 100. When the numerical control device 1 starts controlling the industrial machine 2 based on the control program 200, the motor control unit 110 operates at a predetermined control cycle (for example, 8 ms). On the other hand, when the control cycle change unit 140 commands a change in the control cycle, the motor control unit 110 processes at the commanded control cycle. In Figure 2, the motor control unit 110 is built into the numerical control device 1, but the motor control unit 110 may be connected to the outside of the numerical control device 1.
[0021] The peripheral device control unit 120 outputs predetermined signals to the peripheral devices of the industrial machine 2 based on control information input from the numerical control unit 100. It also outputs control information related to the signals input from the peripheral devices to the numerical control unit 100. When the numerical control device 1 starts controlling the industrial machine 2 based on the control program 200, the peripheral device control unit 120 operates at a predetermined control cycle (for example, 8ms). On the other hand, when the control cycle change unit 140 commands a change in the control cycle, the peripheral device control unit 120 processes at the commanded control cycle. In Figure 2, the peripheral device control unit 120 is built into the numerical control device 1, but the peripheral device control unit 120 may be connected to the outside of the numerical control device 1.
[0022] The control cycle determination unit 130 determines the need to change the length of the control cycle for the processing of each control unit based on the state information input from the numerical control unit 100. The control cycle determination unit 130 compares the state information with a predetermined threshold value set in advance for the state information. If the state information exceeds the predetermined threshold value, it determines that the control cycle needs to be changed. For example, the amount of control information data input and output between the motor control unit 110 and the peripheral device control unit 120 as state information is set with a predetermined threshold value Th dsAssume that this is set. At this time, the control cycle determination unit 130 determines the amount of control information data to be exchanged with each control unit within the current control cycle, which is input from the numerical control unit 100, and the threshold Th ds The amount of control information data to be exchanged is then compared to the threshold Th. ds If the following conditions are met, the control cycle determination unit 130 determines that a change in the control cycle is not necessary. On the other hand, threshold Th ds If the value exceeds this limit, it is determined that the length of the current control cycle needs to be changed. This determination process may be based, for example, on the amount of blocks in the control program 200 to be analyzed within the current control cycle, the processing load related to the analysis of the blocks, the amount of signals to be processed, and the amount of control information data to be created. Alternatively, the determination may take into account the parameters related to the control of the industrial machine 2. The control cycle determination unit 130 outputs the determination result to the control cycle change unit 140.
[0023] The control cycle change unit 140 instructs the numerical control unit 100, motor control unit 110, and peripheral device control unit 120 to change the length of the current control cycle based on the result of the determination by the control cycle determination unit 130. The length of the control cycle to be changed by the control cycle change unit 140 may be predetermined for each threshold used in the determination. It is desirable that the length of this control cycle be set to be long enough for processing related to state information to be completed. That is, for example, if the state information is the input / output amount of control information, the length should be set to be long when the value is greater than the threshold, and short when the value is less than the threshold. If it can be determined from the state information that the processing of the numerical control unit 100 within the control cycle will increase, the length of the control cycle should be increased. Conversely, if it can be determined that the processing will decrease, the length of the control cycle should be shortened. Furthermore, if the control cycle determination unit 130 determines that a change in the control cycle is not necessary, the control cycle change unit 140 instructs each control unit to return to a predetermined control cycle.
[0024] Figure 3 shows an example of processing performed in each control cycle under normal conditions. For simplicity of explanation, in the example in Figure 3, the numerical control unit 100 is assumed to perform program analysis processing and signal analysis processing as processes performed in each control cycle. The numerical control unit 100 performs program analysis processing and signal analysis processing in each control cycle. Each process involves input of control information, analysis processing, and output of control information created as a result. Under normal conditions, the length of the control cycle is fixed to a predetermined length (8ms in the figure). The numerical control unit 100 performs each process within this defined control cycle and outputs the created control information to the motor control unit 110 and the peripheral device control unit 120. The motor control unit 110 and the peripheral device control unit 120 operate on the premise that control information is input in the same control cycle.
[0025] Figure 4 shows an example of the operation of a conventional numerical control device when the amount of control information to be processed increases beyond expectations. In the example in Figure 4, the number of control program blocks to be processed increases in the second control cycle, and the processing that the numerical control unit should perform within the control cycle is not completed. Even in such a case, in conventional numerical control devices, the motor control unit and peripheral device control unit operate on the assumption that control information is input in the same control cycle, so they are unable to receive control information from the numerical control unit, and the operation becomes unstable.
[0026] FIG. 5 shows an operation example of the numerical control device 1 according to the present embodiment when the amount of control information to be processed increases. In the example of FIG. 5, as in the example of FIG. 4, the number of blocks of the control program to be processed in the second control cycle has increased. The numerical control unit 100 according to the present embodiment estimates the amount of control information to be processed in a control cycle based on the number and type of blocks of the control program 200 that have been pre-read or the like. Then, according to the estimated amount of control information to be processed, the control cycle determination unit 130 and the control cycle change unit 140 change the length of the control cycle. In the example of FIG. 5, the length of the second control cycle is changed to 12 ms. This change is commanded not only to the numerical control unit 100 but also to the motor control unit 110 and the peripheral device control unit 120. Therefore, even when the data amount of control information (that is, the processing amount in the control cycle) increases in each control unit, the input / output of control information can be synchronized within the control cycle.
[0027] In the numerical control device 1 according to the present embodiment having the above configuration, during the execution of processing, the control cycle is dynamically changed according to the state of the numerical control device 1, and it is expected that a situation where control becomes impossible due to the execution time of the periodic processing exceeding the control cycle will not occur. It is expected that the response to the control device will be as fast as possible by being executed with a control cycle according to the state of the numerical control device 1.
[0028] As a modification example of the numerical control device 1 according to the present embodiment, the control cycle determination unit 130 may perform the determination of the stepwise change in the length of the control cycle using a plurality of threshold values in the determination process. For example, for the data amount of control information input / output between the motor control unit 110 and the peripheral device control unit 120 as information related to the state, threshold values Th ds1 、Th ds2 、Th ds3 、Th ds4 (However, Th ds1 < Th ds2 < Th ds3 < Th ds4Assume that ) is set. At this time, the control cycle determination unit 130 determines the amount of control information data D that should be exchanged with each control unit within the control cycle input from the numerical control unit 100. c Then, compare it with each threshold. And D c ≦Th ds1 In this case, the control cycle determination unit 130 determines that a change in the control cycle is not necessary. Also, Th ds1 <D c ≦Th ds2 If this is the case, it is determined that the control cycle needs to be changed by one step. Also, Th ds2 <D c ≦Th ds3 If this is the case, it is determined that the control cycle needs to be changed in two stages. Also, Th ds3 <D c ≦Th ds4 If this is the case, it is determined that the control cycle needs to be changed in three stages. Also, Th ds4 <D c If this is the case, it is determined that the control cycle needs to be changed in four stages. Upon receiving this determination, the control cycle changing unit 140 commands the numerical control unit 100, the motor control unit 110, and the peripheral device control unit 120 to change the control cycle to the length set according to each stage. The numerical control device 1 according to this modified example can flexibly change the control cycle according to the state of the numerical control device 1.
[0029] Figure 6 is a schematic block diagram showing the functions of the numerical control device 1 according to the second embodiment of the present invention. Each function of the numerical control device 1 according to this embodiment is realized by the CPU 11 of the numerical control device 1 shown in Figure 1 executing a system program and controlling the operation of each part of the numerical control device 1.
[0030] The numerical control device 1 of this embodiment includes a numerical control unit 100, a motor control unit 110, a peripheral device control unit 120, a control cycle determination unit 130, and a control cycle change unit 140. Furthermore, a control program 200, which includes commands for controlling the industrial machine 2, is pre-stored in the RAM 13 or non-volatile memory 14 of the numerical control device 1. In addition, a state data storage unit 210, which is an area for storing data related to the state of the numerical control device 1 and the industrial machine 2, is pre-provided in the RAM 13 or non-volatile memory 14 of the numerical control device 1.
[0031] The motor control unit 110, peripheral device control unit 120, and control cycle changing unit 140 in this embodiment operate in the same manner as the functions in the first embodiment. The numerical control unit 100 in this embodiment stores information related to the operating state acquired from each part of the numerical control device 1 as time-series data in the state data storage unit 210. Other operations of the numerical control unit 100 are the same as those of the numerical control unit 100 in the first embodiment.
[0032] The control cycle determination unit 130 in this embodiment estimates information relating to the operating state of the numerical control device 1 during the current control cycle based on time-series data of state-related information stored in the state data storage unit 210. Based on the estimation result, it determines the necessity of changing the length of the control cycle related to the processing of each control unit. The control cycle determination unit 130 may also estimate the state-related information during the current control cycle based on, for example, the trend of change in state-related information. For example, if the amount of control information data input and output between the numerical control unit 100, the motor control unit 110, and the peripheral device control unit 120 tends to increase, it can be estimated that the amount of control information data during the current control cycle will also increase. Conversely, if the trend is decreasing, it can be estimated that the amount of control information data during the current control cycle will also increase. In another example, a past period with a graph shape similar to that of the state-related information during the most recent predetermined period may be identified, and the value of the state-related information may be estimated assuming that similar changes will occur during that similar past period. Furthermore, the execution block number of the control program 200 may be stored as state-related information, and if the same execution block is being executed, the state-related information during the control cycle may be estimated assuming that other state-related information will also undergo similar changes. The control cycle determination unit 130 then determines the need to change the length of the control cycle based on the estimated state information. The other operations of the control cycle determination unit 130 are the same as those of the numerical control unit 100 in the first embodiment.
[0033] The numerical control device 1 according to this embodiment, which has the above configuration, estimates the value of state information in the control cycle based on state information stored in the past. If the accuracy of the estimation is improved, it becomes possible to appropriately set the length of the period in the control cycle.
[0034] Figure 7 is a schematic block diagram showing the functions of the numerical control device 1 according to the third embodiment of the present invention. Each function of the numerical control device 1 according to this embodiment is realized by the CPU 11 of the numerical control device 1 shown in Figure 1 executing a system program and controlling the operation of each part of the numerical control device 1.
[0035] The numerical control device 1 according to this embodiment includes a numerical control unit 100, a motor control unit 110, a peripheral device control unit 120, a control cycle determination unit 130, a control cycle change unit 140, and a display unit 150. In addition, a control program 200, which includes commands for controlling the industrial machine 2, is pre-stored in the RAM 13 or non-volatile memory 14 of the numerical control device 1.
[0036] The numerical control unit 100, motor control unit 110, peripheral device control unit 120, control cycle determination unit 130, and control cycle change unit 140 in this embodiment operate in the same manner as the functions in the first embodiment. The display unit 150 in this embodiment displays the status related to the operation of the numerical control device 1 acquired by the numerical control unit 100 and the length of the control cycle changed by the control cycle change unit 140 on the display device 70. The display unit 150 may display instantaneous values, average values, and peak values of the information related to a predetermined state and the length of the changed control cycle at a predetermined period (for example, a 1-second period), as illustrated in Figure 8. Alternatively, as illustrated in Figure 9, the information related to a predetermined state and the length of the changed control cycle may be displayed as a time-series graph. Furthermore, as illustrated in Figure 10, not only information related to the overall status of the numerical control device 1 may be displayed, but also information related to the status of each machine group and each system.
[0037] The numerical control device 1 according to this embodiment, which has the above configuration, allows for easy recognition of the current operating status of the numerical control device 1 because the changes in state information and the control cycle value can be grasped at a glance.
[0038] Although embodiments of the present invention have been described above, the present invention is not limited to the examples of embodiments described above, and can be implemented in various forms by making appropriate modifications. [Explanation of Symbols]
[0039] 1. Numerical control device 2. Industrial Machinery 11 CPU 12 ROM 13 RAM 14 Non-volatile memory 15,17,18 Interface 16 PLC 19 I / O units 22 buses 30-axis control circuit 40 Servo Amplifier 50 servo motors 70 Display device 71 Input device 72 External equipment 100 Numerical Control Unit 110 Motor control unit 120 Peripheral device control unit 130 Control period determination unit 140 Control cycle change unit 150 Display section 200 Control Programs 210 State data storage unit
Claims
1. A numerical control device that inputs and outputs control information to and from a controlled object, A numerical control unit that inputs and outputs the control information to and from the controlled object at a predetermined control cycle, A control cycle determination unit compares information relating to the operating state of the numerical control device with a predetermined threshold and determines the necessity of changing the length of the control cycle based on the comparison result. A control cycle changing unit that changes the length of the control cycle based on the determination result of the control cycle determination unit, A state data storage unit that stores time-series data of information relating to the aforementioned state, Equipped with, The control cycle determination unit estimates changes in the state information based on the time-series data of the state information stored in the state data storage unit, and determines the necessity of changing the length of the control cycle based on the time-series data of past control cycles based on the estimation result. Numerical control device.
2. The control cycle changing unit shortens the length of the control cycle when the information relating to the state is smaller than the threshold, and lengthens the length of the control cycle when the information relating to the state is larger than the threshold. The numerical control device according to claim 1.
3. The length of the control cycle changed by the control cycle changing unit is long enough to allow the processing of the information relating to the state to be completed. The numerical control device according to claim 1.
4. The information relating to the aforementioned state is the amount of control information data that is input and output to and from the controlled object. The numerical control device according to claim 1.
5. The system further includes a display unit that displays information relating to the aforementioned state and the length of the control cycle changed by the control cycle changing unit. The numerical control device according to claim 1.
6. The display unit displays the information relating to the state, divided into the entire numerical control device, the system, and the machine group. The numerical control device according to claim 5.
7. The information relating to the aforementioned state includes at least one of the following: a control program to be analyzed within the control cycle, the block number of the control program to be analyzed within the control cycle, the amount of blocks in the control program to be analyzed within the control cycle, the processing load for the analysis of the blocks to be analyzed within the control cycle, the amount of signals to be processed within the control cycle, the amount of data of control information created within the control cycle, the amount of data of control information input and output to and from the controlled object within the control cycle, and the parameters related to the set control. The numerical control device according to claim 1.
Citation Information
Patent Citations
Numerical controller
JP1988052207A
Drive control device and image forming device
JP2005186549A
Monitor device
JP2007249903A