Numerical control system
Patent Information
- Application Number
- PCT/JP2023/035434
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-28
- Publication Date
- 2025-04-03
AI Technical Summary
The prior art is difficult to effectively maintain the predetermined time difference between the virtual machine sequence and the actual machine sequence, resulting in the problem that the machine may stop in an incorrect position or be unable to avoid collisions in time.
By introducing a data acquisition unit, a real-time time calculation unit and a processing speed control unit in the CNC system, the time difference between the virtual machine sequence and the actual machine sequence is monitored and adjusted in real time to ensure that the virtual machine sequence always leads the actual machine sequence by a predetermined time.
It realizes the accurate maintenance of the time difference between the virtual machine sequence and the actual machine sequence in the CNC system, so as to ensure timely detection and collision avoidance, prevent the machine from stopping in an incorrect position, and reduce unnecessary downtime and damage.
Smart Images

Figure JP2023035434_03042025_PF_FP_ABST
Abstract
Description
Numerical Control System
[0001] The present disclosure relates to numerical control systems.
[0002] Conventionally, numerical control systems that control industrial machinery using machine tools and robots have become multi-axis, multi-system, and highly functional, and have been equipped with functions to prevent collisions between structures (tools, workpieces, jigs, etc.) (for example, Patent Document 1 and Patent Document 2).
[0003] In Patent Document 1, the machining simulator monitors the machining simulation executed based on the machining command value received from the servo control unit. When the machining simulator detects an abnormality, the operation of the machining machine is corrected and controlled to prevent the same malfunction from occurring in the machining machine.
[0004] Patent Document 2 describes how the difference between the CPU processing speed of the robot controller that drives the manipulator and the CPU processing speed of the computer that performs the simulation can be resolved by using a processing speed adjustment unit to delay the CPU processing of the robot controller simulation device.
[0005] JP 2004-227047 A JP 2003-300185 A
[0006] Incidentally, a virtual machine system that checks for the possibility of a collision may be set up separately from the system that actually controls the machine, and by controlling both systems in parallel, accurate collision checks, including simulating the operation of auxiliary equipment, may be performed. In order to reliably prevent a collision in the real machine when a collision is detected in the virtual machine system, the virtual machine system must always be kept ahead of the real machine system by a "predetermined time."
[0007] However, depending on the time required for processing each system, the leading virtual machine system may not be able to lead the real machine system by a predetermined time, or may lead by more than the predetermined time. For example, if the leading time of the virtual machine is longer than the predetermined time set in consideration of the time from collision detection to operation stoppage, the industrial machine may stop far before the position where the collision was detected in the leading check system, and machining such as drilling may be stopped in an incomplete state. Conversely, if the actual leading time is shorter than the predetermined time, the industrial machine may not be able to stop at the position where the collision was detected in the leading check system, and there is a risk of machine damage.
[0008] The present disclosure has been made in consideration of the above-mentioned problems, and aims to provide a technology that can appropriately maintain the time that a virtual machine series leads a real machine series in a numerical control system.
[0009] The present disclosure relates to a numerical control system including a machine control series that controls industrial machinery based on input information that specifies an operation; a leading check series that controls a virtual machine that simulates the industrial machinery based on the same input information so that it leads the machine control series by a predetermined time, and virtually performs a collision check; a data acquisition unit that acquires time series data that associates time with data related to the industrial machinery and the virtual machine; an actual leading time calculation unit that calculates an actual leading time of the leading check series based on the time series data of the industrial machine and the time series data of the virtual machine; and a processing speed control unit that controls the processing speed of the leading check series based on a comparison result between the actual leading time and the predetermined time.
[0010] According to the present disclosure, it is possible to provide a technique that can appropriately maintain the time that a virtual machine series leads a real machine series in a numerical control system.
[0011] 1 is a functional block diagram of a numerical control system according to a first embodiment. FIG. 1 is a diagram schematically showing the position of a virtual machine preceding an industrial machine. FIG. 2 is a graph showing the relationship between time series data of an industrial machine and a virtual machine acquired by a data acquisition unit. FIG. 3 is a graph showing the relationship between time series data of an industrial machine and time series data of a virtual machine after shifting. FIG. 4 is a graph showing the relationship between time series data of an industrial machine and a virtual machine after determination of an estimated value. FIG. 5 is a graph showing the relationship between the system time and absolute time of an industrial machine and a virtual machine when the actual leading time is longer than a predetermined time. FIG. 6 is a graph showing the relationship between the time series data of an industrial machine and a virtual machine when the actual leading time is longer than a predetermined time. FIG. 7 is a graph showing the relationship between the system time and absolute time of an industrial machine and a virtual machine when the actual leading time is shorter than a predetermined time. FIG. 8 is a graph showing the relationship between the time series data of an industrial machine and a virtual machine when the actual leading time is shorter than a predetermined time. FIG. 9 is a graph showing the relationship between the time series data of an industrial machine and a virtual machine when the feed rate is changed significantly. FIG. 10 is a graph showing the relationship between the time series data of an industrial machine and a virtual machine when the feed rate is changed slowly. FIG. 11 is a diagram schematically showing an industrial machine performing a measurement operation. 10 is a graph showing the positional relationship between the industrial machine and the virtual machine during measurement operation. It is a functional block diagram of a numerical control system according to a second embodiment. It is a functional block diagram of a numerical control system according to a third embodiment.
[0012] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings. In the description of the second and subsequent embodiments, the same reference numerals will be used to designate components common to the first and second embodiments, and the description thereof will be omitted as appropriate.
[0013] First Embodiment Fig. 1 is a functional block diagram of a numerical control system 1 according to a first embodiment. Fig. 2 is a diagram schematically showing the position of a virtual machine 3 preceding an industrial machine 2.
[0014] The numerical control system 1 is composed of a numerical control device 10 that controls the operation of industrial machinery 2. The numerical control device 10 is a computer equipped with hardware such as a processor, a main memory device, and an auxiliary memory device. The industrial machinery 2 is, for example, a machine tool or a robot that operates based on content specified in a machining program or content input by manual operation.
[0015] The numerical control system 1 of the first embodiment includes functional units that operate on a computer processor, such as a machine control series 11, a lead check series 12, a data acquisition unit 13, an actual lead time calculation unit 14, and a processing speed control unit 15.
[0016] The machine control system 11 controls the operation of the industrial machine 2 based on input information that specifies the operation, such as a machining program and manual operation input values by an operator. The machine control system 11 of this embodiment includes a command generation unit 21, a drive unit 22, and a command suppression unit 23.
[0017] The command generating unit 21 generates commands for operating the industrial machine 2 based on the machining program.
[0018] The driving unit 22 executes control to operate the industrial machine 2 based on the command generated by the command generating unit 21 .
[0019] The command suppression unit 23 executes control to suppress actual operations such as delaying the movement of the industrial machine 2 based on a signal from the data acquisition unit 13 described later.
[0020] The advance check series 12 controls the operation of a virtual machine 3 that simulates the industrial machine 2 in the simulation. The advance check series 12 simulates the control of the operation of the virtual machine 3 based on the same input information (e.g., machining program, manual operation input values, command values used in the industrial machine 2, etc.). The advance check series 12 controls the operation of the virtual machine 3 so that it precedes the machine control series 11 by a predetermined time TA.
[0021] The predetermined time TA that the lead check system 12 leads the machine control system 11 can be expressed by the following formula (1): By maintaining the predetermined time TA as the lead time, it is possible to reliably avoid a situation in which a collision occurs between the time the lead check system 12 detects a collision and the time the drive of the machine control system 11 is stopped.
[0022] T1: Time required for the preceding check system 12 to notify the machine control system 11 that a collision has been detected. T2: Time required for the machine control system 11 to perform processing to stop the operation of the industrial machine 2 by the drive unit 22. T3: Maximum time required for the drive unit 22 to start decelerating the operation of the industrial machine 2 and stop it. T4: Margin.
[0023] Note that T3 differs depending on conditions such as the drive shaft of the industrial machine 2, the feed speed, the type of feed (positioning, cutting feed), and the combination of these, and therefore the maximum value expected under each condition is adopted.
[0024] The preceding check sequence 12 of this embodiment includes a command generation unit 31, a collision check unit 32, and a processing speed control unit 15.
[0025] The command generating unit 31 generates commands for operating the virtual machine 3 in a simulation based on the machining program.
[0026] The collision check unit 32 executes a collision check to check whether or not an abnormality occurs in the operation of the virtual machine 3 based on the command generated by the command generation unit 31 .
[0027] Various methods such as known techniques can be used for the collision check. The collision check unit 32 stores, for example, the contour shape of the tool used in machining the industrial machine 2, the workpiece to be machined, and the contour shape of the industrial machine 2. The collision check unit 32 checks whether interference between the tool and another object will occur based on the preceding position calculated in consideration of the preceding time.
[0028] The data acquisition unit 13 acquires time-series data in which time (hours) is associated with the data related to the industrial machine 2 and the data related to the virtual machine 3. The data related to the industrial machine 2 and the data related to the virtual machine 3 include at least one of the position, speed, acceleration, and jerk of each axis belonging to each of the industrial machine 2 and the virtual machine 3, as well as signals and sensor data associated with each of the axes. The associated signals are information related to operation, such as an in-position signal output upon detecting that the motor position has reached a specified position, a signal indicating ON / OFF of a coolant, or a signal indicating ON / OFF of spindle rotation. The sensor data is, for example, information detected by an acceleration sensor. The data related to the industrial machine 2 and the data related to the virtual machine 3 are information for determining the time difference between the operations of the industrial machine 2 and the virtual machine 3, and other information indicating operation, such as execution timing, can also be used.
[0029] In addition, the data acquisition unit 13 of this embodiment acquires the state in which the industrial machine 2 and the virtual machine 3 are executing an operation to detect contact between structures, by including this state in the data regarding the industrial machine 2 and the data regarding the virtual machine 3.
[0030] The actual leading time calculation unit 14 calculates the actual leading time of the leading check series 12 based on the time series data of the industrial machine 2 and the time series data of the virtual machine 3 .
[0031] Fig. 3 is a graph showing the relationship between the time series data of the industrial machine 2 and the time series data of the virtual machine 3 acquired by the data acquisition unit 13. Fig. 4 is a graph showing the relationship between the time series data of the industrial machine 2 and the post-shift time series data of the virtual machine 3. The actual leading time calculation unit 14 of this embodiment acquires post-shift time series data of the virtual machine 3 (graph in Fig. 4 ) obtained by shifting the time series data of the virtual machine 3 (graph in Fig. 3 ) by time ΔT.
[0032] Next, the actual leading time calculation unit 14 calculates the time shift amount ΔT that maximizes the similarity between the time series data of the virtual machine 3 after the shift and the time series data of the industrial machine 2, and sets this ΔT as the estimated value Te of the actual leading time. The estimated value Te can be calculated, for example, from the time shift amount ΔT that maximizes the cross-correlation coefficient.
[0033] The processing speed control unit 15 controls the processing speed of the lead check series 12 based on a comparison between the actual lead time and a predetermined time. The processing speed control unit 15 normally sets the predetermined time TA as the lead time, and changes the processing time when a difference occurs between the actual lead time and the predetermined time. The processing time can be changed, for example, by changing the clock frequency of the CPU (processor) or by changing the feed speed of the motor.
[0034] 5 is a graph showing the relationship between the time-series data of the industrial machine 2 and the virtual machine 3 after the estimated value Te has been determined. In this embodiment, the actual leading time is the estimated value Te calculated by the actual leading time calculation unit 14. The predetermined time is the aforementioned previously set leading time. The processing speed control unit 15 compares the estimated value Te of the actual leading time with the predetermined time TA. The processing time is set based on the following equation (2).
[0035] Te: actual lead time indicating the actual lead time calculated by the actual lead time calculation unit 14 TA: preset lead time TC: processing time change time for changing the processing time
[0036] In this embodiment, the processing time change time TC indicates the time during which the virtual machine 3 is controlled with the changed processing time. The processing time change time TC is a time that is set in advance. When the processing time change time TC has elapsed, the processing time returns to the original preceding time (predetermined time TA).
[0037] The case where the estimated value Te of the actual leading time is longer than the predetermined time TA (Te>TA) will be described. Fig. 6 is a graph showing the relationship between the system time and absolute time of the industrial machine 2 and the virtual machine 3 when the actual leading time is longer than the predetermined time. Here, system time refers to the time internally determined in each of the machine control series and the leading check series. Furthermore, absolute time refers to the time in the real world, and is a time independent of the system time. Fig. 7 is a graph showing the relationship between the time series data of the industrial machine 2 and the virtual machine 3 when the actual leading time is longer than the predetermined time.
[0038] 7, when the processing speed control unit 15 determines that the estimated value Te is longer than the predetermined time TA, it executes a process to reduce the processing speed of the virtual machine 3. In this embodiment, the processing speed of the preceding check sequence 12 is multiplied by 1-(Te-TA) / TC. Since Te>TA, the processing speed of the virtual machine 3 is reduced.
[0039] A case where the estimated value Te of the actual leading time is shorter than the predetermined time TA (Te<TA) will be described. Fig. 8 is a graph showing the relationship between the system time and the absolute time of the industrial machine 2 and the virtual machine 3 when the actual leading time is shorter than the predetermined time. Fig. 9 is a graph showing the relationship between the time-series data of the industrial machine 2 and the virtual machine 3 when the actual leading time is shorter than the predetermined time.
[0040] When the processing speed control unit 15 determines that the estimated value Te is shorter than the predetermined time TA, it executes a process to increase the processing speed of the virtual machine 3. In this embodiment, the processing speed of the preceding check sequence 12 is multiplied by 1-(Te-TA) / TC. Since Te<TA, the processing speed of the virtual machine 3 is increased.
[0041] Furthermore, when the processing speed control unit 15 of this embodiment detects a change in the feed speed of the industrial machine 2, it executes a process of changing the processing speed using the estimated value Te of the actual leading time. The feed speed is changed, for example, by operating an override switch.
[0042] Fig. 10 is a graph showing the relationship between the time-series data of the industrial machine 2 and the virtual machine 3 when the feed rate is changed significantly. As shown in Fig. 10, when the feed rate of the actually operating industrial machine 2 is changed, a time lag occurs until the change in feed rate is reflected in the processing speed of the virtual machine 3. When the feed rate is increased, the processing speed of the virtual machine 3 immediately after the change lags behind the processing speed of the industrial machine 2, and the actual leading time becomes shorter than the predetermined time (Te<TA).
[0043] Fig. 11 is a graph showing the relationship between the time-series data of the industrial machine 2 and the virtual machine 3 when the feed rate is changed to a lower value. As shown in Fig. 11, when the feed rate is changed to a lower value, the processing speed of the virtual machine 3 immediately after the change becomes faster relative to the processing speed of the industrial machine 2, and the actual leading time becomes longer than the predetermined time (Te>TA).
[0044] The processing speed control unit 15 corrects the difference in the lead time caused by this time lag by correcting the processing time of the virtual machine 3. The method for correcting the processing time is the same as the method described above. By changing the processing time in this way, the lead time becomes the predetermined time TA after the processing time change time TC, and an appropriate distance is maintained between the industrial machine 2 and the virtual machine 3.
[0045] Next, a case will be described in which the industrial machine 2 performs a measurement operation in which the probe 40 is pressed against the workpiece to measure the workpiece. Fig. 12 is a diagram schematically showing the industrial machine 2 performing the measurement operation. Fig. 13 is a graph showing the positional relationship between the industrial machine 2 and the virtual machine 3 during the measurement operation. Fig. 13 shows the positional relationship between the positions on the X-axis and Z-axis and the absolute time.
[0046] As shown in FIG. 12, a measurement operation for detecting contact between structures, such as when the probe 40 is pressed against the workpiece to perform measurement, is premised on a collision.
[0047] First, when the processing speed control unit 15 determines that the virtual machine 3 has started a detection operation for detecting contact between structures, it sets the processing speed in the X-axis direction to 0 until the industrial machine 2 catches up with the virtual machine 3. The timing at which the processing speed is set to 0 is in the section N1 in Figures 12 and 13. When the processing speed of the virtual machine 3 becomes 0, the operation stage of the virtual machine 3 and the operation stage of the industrial machine 2 become the same.
[0048] The determination of whether or not the state has transitioned to the detection state may be triggered by, for example, detecting a command to start a measurement operation, or may be performed at the timing of a block switch in the program.
[0049] When the processing speed control unit 15 determines that the industrial machine 2 has caught up with the virtual machine 3, it sets the processing speed in the X-axis direction of the preceding check series 12 to be the same as the processing speed in the X-axis direction of the machine control series 11 until contact is detected (during measurement operation). The time for making the processing speeds the same is performed in the section N2 in Figures 12 and 13. Furthermore, in the section N2, the preceding check series 12 is controlled not to execute collision check processing.
[0050] When the processing speed control unit 15 detects a contact state between structures, such as when the probe 40 of the industrial machine 2 comes into contact with a workpiece, it controls the processing time in the Z-axis direction so that the virtual machine 3 again precedes the industrial machine 2. This control is performed in the section N3 in Figures 12 and 13 .
[0051] As described above, the numerical control system 1 of this embodiment comprises a machine control series 11 that controls the industrial machine 2 based on input information that specifies an operation, a leading check series 12 that controls the virtual machine 3 that simulates the industrial machine 2 based on the same input information so that it leads the machine control series 11 by a predetermined time, and virtually performs a collision check, a data acquisition unit 13 that acquires time series data that associates time with each of the data related to the industrial machine 2 and the virtual machine 3, an actual leading time calculation unit 14 that calculates the actual leading time of the leading check series 12 based on the time series data of the industrial machine 2 and the time series data of the virtual machine 3, and a processing speed control unit 15 that controls the processing speed of the leading check series based on the result of comparing the actual leading time with the predetermined time.
[0052] As a result, the processing speed of the lead check series 12 is dynamically changed depending on the amount by which the virtual machine 3 of the lead check series 12 actually leads the industrial machine 2 of the machine control series 11. Therefore, even if the lead check series 12 actually leads the machine control series 11 by a time that is different, the difference can be corrected to enable accurate collision checking, thereby avoiding unnecessary processing stoppages and machine damage.
[0053] Furthermore, in this embodiment, the data related to the industrial machine 2 and the virtual machine 3 includes at least one of the position, speed, acceleration, and jerk of each axis belonging to each of the industrial machine 2 and the virtual machine 3, signals related to the operations associated with each, and sensor data for acquiring information related to the operations. This makes it possible to easily acquire time-series data to be compared using information related to the operations of the industrial machine 2 and the virtual machine 3.
[0054] In addition, in this embodiment, the actual lead time calculation unit 14 calculates the time shift amount ΔT at which the similarity between the time series data of the industrial machine 2 and the time series data of the virtual machine 3 increases as the estimated value Te of the actual lead time of the lead check series 12.
[0055] This makes it possible to easily obtain the estimated value Te by utilizing the similarity between the time-series data of the industrial machine 2 and the virtual machine 3.
[0056] In addition, in this embodiment, the data acquisition unit 13 further acquires a detection state indicating that the virtual machine 3 is performing an operation to detect contact between structures, and when the processing speed control unit 15 determines that the virtual machine 3 has transitioned to the detection state, it controls the processing speed of the preceding check series 12 to 0 so that the operation of the industrial machine 2 catches up with the operation of the virtual machine 3, and controls the processing speed of the preceding check series 12 so that the virtual machine 3 does not get ahead of the industrial machine 2 from the time the operation of the industrial machine 2 catches up with the operation of the virtual machine 3 until contact is detected.
[0057] As a result, in an operation that assumes a collision, such as a measurement operation, the virtual machine 3 does not perform advance collision detection prior to the operation of the industrial machine 2, thereby making it possible to avoid unnecessary collision detection.
[0058] In addition, in this embodiment, the preceding check series 12 does not perform a collision check while the processing speed of the preceding check series 12 is controlled so that the virtual machine 3 does not precede the industrial machine 2 .
[0059] This makes it possible to reliably avoid the occurrence of a situation in which it is erroneously determined that a collision has occurred during an operation that assumes a collision, such as a measurement operation.
[0060] The above describes an example in which an industrial machine 2 and a virtual machine 3 are controlled in parallel by a single numerical control device 10. Note that the present invention is not limited to the configuration of the above embodiment. For example, the command suppression unit 23 arranged in the machine control system 11 may be omitted, and the data acquisition unit 13 and the actual lead time calculation unit 14 may be arranged in either the machine control system 11 or the lead check system 12.
[0061] [Second embodiment] Next, an example of configuring a numerical control system using a plurality of numerical control devices and computers will be described. Fig. 14 is a functional block diagram of a numerical control system 1A according to the second embodiment. As shown in Fig. 14, the numerical control system 1A of the second embodiment is configured with a first numerical control device 11a, a second numerical control device 12a, and an information processing device 5.
[0062] The first numerical control device 11a, the second numerical control device 12a and the information processing device 5 are all computers equipped with hardware such as a processor, a main memory device and an auxiliary memory device, and are configured to be able to communicate with other computers.
[0063] The first numerical control device 11a is hardware that realizes the functions of the machine control system 11 in the first embodiment, and controls the industrial machine 2. In the processor of the first numerical control device 11a, a command generation unit 21, a drive unit 22, and a command suppression unit 23 are executed as functional units.
[0064] The second numerical control device 12a is hardware that realizes the function of the preceding check sequence 12 in the first embodiment, and controls the virtual machine 3. In the processor of the second numerical control device 12a, a command generation unit 31, a collision check unit 32, and a processing speed control unit 15 are executed as functional units.
[0065] The information processing device 5 is hardware that realizes the functions of the data acquisition unit 13 and the actual lead time calculation unit 14 in the first embodiment. Note that the information processing device 5 may be configured to belong to either the first numerical control device 11a or the second numerical control device 12a.
[0066] The configuration of the second embodiment described above can also achieve the same effects as those of the first embodiment. Furthermore, even if the actual advance time deviates from the predetermined time TA due to differences in the hardware performance of the first numerical control device 11a and the second numerical control device 12a, the configuration of this embodiment adjusts the processing time, thereby maintaining accurate collision detection capability.
[0067] [Third embodiment] Fig. 15 is a functional block diagram of a numerical control system 1B according to a third embodiment. As shown in Fig. 15, the numerical control system 1B of the third embodiment differs from the configuration of the first embodiment in that a processing speed change unit 50 that changes the processing speed of the preceding check sequence 12 is independent from the processing speed control unit 15a.
[0068] The processing speed change unit 50 compares the estimated value Te of the lead time obtained from the actual lead time calculation unit 14 with the processing speed changed based on the predetermined time TA and outputs the result to the processing speed control unit 15a. The processing speed of the processing speed control unit 15a is updated according to the comparison result. The processing speed control unit 15a changes the processing time of the lead check sequence 12 according to the updated processing speed. The configuration of the second embodiment described above can also achieve the same effects as the above embodiment.
[0069] The numerical control system 1B of the third embodiment may also be configured by a single computer, or may be realized by a plurality of computers.
[0070] The present disclosure is not limited to the above-described embodiments, and any modifications and improvements that can achieve the object of the present disclosure are included in the present disclosure. For example, the numerical control system of the above-described embodiment may be realized on a cloud computing system.
[0071] The following supplementary notes are further disclosed regarding the above-described embodiment and modified examples: (Supplementary Note 1) A numerical control system (1, 1A, 1B) comprising: a machine control sequence (11) that controls an industrial machine (2) based on input information that specifies an operation; a leading check sequence (12) that controls a virtual machine (3) that simulates the industrial machine (2) based on the same input information so that the virtual machine (3) leads the machine control sequence (11) by a predetermined time, and virtually performs a collision check; a data acquisition unit (13) that acquires time-series data that associates time with data related to the industrial machine (2) and the virtual machine (3); an actual leading time calculation unit (14) that calculates an actual leading time of the leading check sequence (12) based on the time-series data of the industrial machine (2) and the time-series data of the virtual machine (3); and a processing speed control unit (15) that controls the processing speed of the leading check sequence based on a result of comparing the actual leading time with the predetermined time.
[0072] (Supplementary Note 2) In the above-described numerical control systems (1, 1A, 1B), the data relating to the industrial machine (2) and the virtual machine (3) includes at least one of the position, speed, acceleration, and jerk of each axis belonging to each of the industrial machine (2) and the virtual machine (3), and signals relating to the operations associated with each of them, and sensor data for acquiring information relating to the operations.
[0073] (Supplementary Note 3) In the above-described numerical control system (1, 1A, 1B), the actual leading time calculation unit (14) determines, as an estimate (Te) of the actual leading time of the leading check series (12), a time shift amount (ΔT) at which the similarity between the time series data of the industrial machine (2) and the time series data of the virtual machine (3) increases.
[0074] (Supplementary Note 4) In the above-described numerical control system (1, 1A, 1B), the data acquisition unit (13) further acquires a detection state indicating that the virtual machine (3) is executing an operation to detect contact between structures, and the processing speed control unit (15), when determining that the virtual machine (3) has transitioned to the detection state, controls the processing speed of the preceding check series (12) to 0 so that the operation of the industrial machine (2) catches up with the operation of the virtual machine (2), and controls the processing speed of the preceding check series (12) so that the virtual machine (3) does not precede the industrial machine (2) from the time the operation of the industrial machine (2) catches up with the operation of the virtual machine (3) until contact is detected.
[0075] (Supplementary Note 5) In the above-mentioned numerical control system (1, 1A, 1B), the preceding check sequence (12) does not execute the collision check while controlling the processing speed of the preceding check sequence (12) so that the virtual machine (3) does not precede the industrial machine (2).
[0076] 1, 1A, 1B Numerical control system 2 Industrial machine 3 Virtual machine 11 Machine control sequence 12 Lead check sequence 13 Data acquisition unit 14 Actual lead time calculation unit 15 Processing speed control unit
Claims
1. A numerical control system comprising: a machine control series which controls an industrial machine based on input information specifying an operation; a leading check series which controls a virtual machine simulating the industrial machine based on the same input information so that it leads the machine control series by a predetermined time, thereby virtually performing a collision check; a data acquisition unit which acquires time series data in which time is associated with each of data relating to the industrial machine and the virtual machine; an actual leading time calculation unit which calculates an actual leading time of the leading check series based on the time series data of the industrial machine and the time series data of the virtual machine; and a processing speed control unit which controls the processing speed of the leading check series based on a result of comparing the actual leading time with the predetermined time.
2. The numerical control system according to claim 1, wherein the data relating to the industrial machine and the virtual machine includes at least one of the position, speed, acceleration, and jerk of each axis belonging to each of the industrial machine and the virtual machine, and signals relating to the operations associated therewith, and sensor data for acquiring information relating to the operations.
3. The numerical control system according to claim 1, wherein the actual lead time calculation unit determines the time shift amount at which the similarity between the time series data of the industrial machine and the time series data of the virtual machine increases as an estimate of the actual lead time of the lead check series.
4. The numerical control system of claim 1, wherein the data acquisition unit further acquires a detection state indicating that the virtual machine is executing an operation to detect contact between structures, and the processing speed control unit, when it is determined that the virtual machine has transitioned to the detection state, controls the processing speed of the preceding check series to 0 so that the operation of the industrial machine catches up with the operation of the virtual machine, and controls the processing speed of the preceding check series so that the virtual machine does not get ahead of the industrial machine during the period from when the operation of the industrial machine catches up with the operation of the virtual machine to when contact is detected.
5. A numerical control system as described in claim 4, wherein the anticipatory check sequence does not execute the collision check while controlling the processing speed of the anticipatory check sequence so that the virtual machine does not precede the industrial machine.
Citation Information
Patent Citations
Method and unit for control
JP2002215214A
Numerical control device
JP2014002461A
Method for numerical control and numerical control machine
WO2009130759A1
Simulation device, control system, simulation method, and program
WO2021261018A1