Numerical control devices for industrial machines

The numerical control device addresses the challenge of safely using USB memory by incorporating error detection and correction capabilities, ensuring reliable operation of industrial machinery despite mechanical vibrations and data corruption.

JP7674075B2Active Publication Date: 2025-05-09FANUC LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2019171228
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2019-09-20
Publication Date
2025-05-09
Estimated Expiration
2039-09-20

AI Technical Summary

Technical Problem

Existing numerical control devices face challenges in safely utilizing programs stored on USB memory due to mechanical vibrations, which can cause data loss or corruption, restricting the use of USB memory for direct operation of industrial machinery.

Method used

A numerical control device that includes a data acquisition unit, a code creation unit for generating error detection or correction codes, a storage unit for safely storing data and error codes, and an error response processing unit to handle errors and ensure safe operation of industrial machinery.

Benefits of technology

The solution enables safe use of programs stored on USB memory by detecting and correcting errors, ensuring reliable operation of industrial machinery even in environments prone to mechanical vibrations and data corruption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007674075000001
    Figure 0007674075000001
  • Figure 0007674075000002
    Figure 0007674075000002
  • Figure 0007674075000003
    Figure 0007674075000003
Patent Text Reader

Abstract

To safely use, in a numerical control device, data recorded in a USB memory.SOLUTION: A numerical control device that controls an industrial machine is provided with: a data acquisition unit 13 that acquires data about control of the industrial machine; a code creation unit 14 that, for the data about the control of the industrial machine, creates an error code including at least one of an error detection code or an error correction code; a storage unit 16 that stores the error code; an error detection unit 23 that detects an error in the data by use of the error code; and an error handling unit 20 that, in a case where the error detection unit 23 detects the error in the data, handles the error.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a numerical control device for industrial machinery. [Background technology]

[0002] Conventionally, most programs for numerical control devices are created on a PC (personal computer). The programs created on the PC are loaded into the memory of the numerical control device. The numerical control device analyzes the programs loaded into the memory and operates industrial machinery. For example, see Patent Document 1.

[0003] USB (Universal Serial Bus) memory is widely used as a portable storage medium. USB memory is lightweight, does not require a dedicated reading device, and is not affected by networks, making it highly versatile.

[0004] However, CF cards are recommended over USB memory as portable storage media for numerical control devices. A CF card is a card-type portable storage medium that has a flash memory and a terminal for inputting and outputting the contents stored in the flash memory. To use the data recorded on a CF card, a dedicated slot that is compatible with the type of CF card is required. If the PC does not have a compatible slot, an external card reader is required. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] JP 2019-79336 A Summary of the Invention [Problem to be solved by the invention]

[0006] As mentioned above, USB is a versatile portable storage medium, so it would be convenient if a program created on a PC could be stored in a USB and then read out by a numerical control device to use it to operate industrial machinery.

[0007] When the terminal of a USB memory is inserted into a socket, the terminal of the USB memory is fixed to the connector, but the main body of the USB memory is exposed to the outside, so it is easily affected by mechanical vibrations such as those of numerical control devices and industrial machines. While reading or writing data stored in the USB memory, mechanical vibrations can cause the USB memory to fall out of the connector, resulting in data loss. To prevent data loss due to vibrations, it is restricted to directly use programs stored in a USB memory to operate industrial machines.

[0008] In addition, in environments such as factories, disturbances such as vibrations can occur, so even portable storage media other than USB memory can be damaged or lost. Even if damage or loss does occur, you can ensure a fail-safe by taking measures in advance.

[0009] In the field of numerical control devices, technology that allows safe use of data is desired. [Means for solving the problem]

[0010] A numerical control device according to one aspect of the present disclosure is a numerical control device for controlling an industrial machine, the numerical control device including: a data acquisition unit that acquires data relating to control of the industrial machine from a portable storage medium; a code creation unit that creates an error code including at least one of an error detection code and an error correction code for the data relating to control of the industrial machine acquired from the portable storage medium; a storage unit that stores the error code; Obtained again The data processing device includes an error detection unit that detects an error in the data, and an error handling processing unit that, when the error detection unit detects an error in the data, performs processing to handle the error.

[0011] A numerical control system according to one aspect of the present disclosure is a control system for controlling an industrial machine, the system including: a data acquisition unit that acquires data relating to control of the industrial machine from a portable storage medium; a code creation unit that creates an error code including at least one of an error detection code and an error correction code for the data relating to control of the industrial machine acquired from the portable storage medium; a storage unit that stores the error code; Obtained again The data processing device includes a detection unit that detects an error in the data, and an error handling processing unit that, when the error detection unit detects an error, performs processing to handle the error. Effect of the Invention

[0012] According to one aspect of the present invention, a program on a USB memory can be used safely. [Brief description of the drawings]

[0013] [Figure 1] FIG. 2 is a hardware configuration diagram of the numerical control device according to the present embodiment. [Diagram 2] 1 is a block diagram of a numerical control device according to an embodiment of the present invention. [Diagram 3] 4 is a flowchart showing the operation of the numerical control device. [Figure 4] FIG. 13 is a block diagram of a numerical control device according to another embodiment. [Diagram 5] 13 is a flowchart showing an operation of a numerical control device according to another embodiment. [Figure 6] FIG. 13 is a block diagram of a numerical control device according to another embodiment. [Figure 7] 13 is a flowchart showing an operation of a numerical control device according to another embodiment. [Figure 8] FIG. 13 is a block diagram of a numerical control device according to another embodiment. [Figure 9] 13 is a flowchart showing an operation of a numerical control device according to another embodiment. [Figure 10] FIG. 13 is a block diagram of a numerical control device according to another embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0014] Hereinafter, an embodiment will be described in which the control device of the present disclosure is implemented in a numerical control device 100. Note that in each of the embodiments described below, a machine tool will be described as an example of an industrial machine controlled by the numerical control device 100, but the technology described in this specification can also be applied to control devices that control other industrial machines such as robots and injection molding machines.

[0015] FIG. 1 is a hardware configuration diagram of a numerical control device 100 according to an embodiment. The CPU 111 provided in the numerical control device 100 according to this embodiment is a processor that controls the entire numerical control device 100. The CPU 111 reads out a system program stored in a ROM 112 via a bus 120, and controls the entire numerical control device 100 in accordance with the system program. The RAM 113 temporarily stores temporary calculation data, display data, various data input by an operator via an input unit (not shown), and the like.

[0016] The non-volatile memory 114 is configured as a memory that retains its stored state even when the power supply of the numerical control device 100 is turned off, for example by being backed up by a battery (not shown). The non-volatile memory 114 stores programs read from the external device 72 via the interface 115, programs input via the input unit 30, and various data acquired from each unit of the numerical control device 100, a machine tool, etc. (for example, setting parameters acquired from a machine tool, etc.). The programs and various data stored in the non-volatile memory 114 may be expanded in the RAM 113 when executed / used. In addition, various system programs such as a known analysis program are written in advance in the ROM 112.

[0017] The interface 115 is an interface for connecting the numerical control device 100 to an external device 72 such as an adapter. Programs, various parameters, etc. are read from the external device 72. In addition, programs and various parameters edited in the numerical control device 100 can be stored in an external storage means via the external device 72. A PMC (Programmable Machine Controller) 116 controls the input and output of signals between a machine tool, a robot, and devices such as sensors attached to the machine tool or the robot via an I / O unit 117 using a sequence program built into the numerical control device 100.

[0018] The display unit 70 displays various data read into the memory, data obtained as a result of executing programs, etc., outputted via an interface 118. The input unit 30, which is composed of an MDI, an operation panel, a touch panel, etc., transmits commands, data, etc. based on operations by an operator to the CPU 111 via an interface 119.

[0019] An axis control circuit 130 for controlling each axis of the machine tool receives an axis movement command amount from the CPU 111 and outputs the axis command to a servo amplifier 140. The servo amplifier 140 receives this command and drives a servo motor 150 which moves the axis of the machine tool. The axis servo motor 150 has a built-in position and speed detector, and feedback signals from this position and speed detector are fed back to the axis control circuit 130 to perform feedback control of the position and speed.

[0020] A spindle control circuit 160 receives a spindle rotation command for the spindle of the machine tool, and outputs a spindle speed signal to a spindle amplifier 161. The spindle amplifier 161 receives this spindle speed signal and rotates a spindle motor 162 of the spindle at the commanded rotation speed to drive the tool. A position coder 163 is connected to the spindle motor 162, and the position coder 163 outputs a feedback pulse in synchronization with the rotation of the spindle, and the feedback pulse is read by the CPU 111.

[0021] In this embodiment, a machine tool equipped with a servo motor and a spindle motor is exemplified as an object to be controlled by the numerical control device, but other machine tools such as electric discharge machines and robots are also included.

[0022] FIG. 2 is a block diagram of a main part of a numerical control device 100 according to an embodiment of the present disclosure. The numerical control device 100 includes a start instruction detection unit 11 for detecting an operation start instruction input from a user, a connector 12 for inserting a USB memory as a portable storage medium, a USB data acquisition unit 13 for reading data stored in the USB memory, an error code creation unit 14 for creating an error detection code (or an error correction code) corresponding to predetermined data, a copy creation unit 15 for creating a copy of the data read from the USB memory, a storage unit 16 for storing a copy of the data read from the USB memory and the error code of the data, an operation control unit 17 for controlling the operation of the machine tool according to a program read from the USB memory, and an error handling processing unit 20 for dealing with errors in the program stored in the storage unit 16. In the description of the present disclosure, the data will be described as a program for the machine tool, but the type of data is not limited to a program. The type of the portable storage medium is also not limited to a USB, and may be another portable storage medium such as a flash memory or an external hard disk. When using a portable storage medium other than a USB memory, a connector and a data acquisition unit corresponding to each portable storage medium are provided.

[0023] The start instruction detection unit 11 is an input unit, a user interface, etc., and receives an instruction input from a user. When the user instructs to start running a program stored in a USB memory, the start instruction detection unit 11 notifies the error handling processing unit 20 and the data acquisition unit (USB data acquisition unit 13).

[0024] The USB data acquisition unit 13 is a device driver for the USB memory and communicates with the USB memory body. The USB data acquisition unit 13 communicates with the USB memory via the connector 12 and acquires specified data. The target data is data related to the control of the machine tool, such as the program of the machine tool and parameters related to the operation and settings of the machine tool.

[0025] The error code creation unit 14 creates an error detection code or an error correction code for the data acquired by the USB data acquisition unit 13. Here, the error detection code is a code for detecting an error, and the error correction code is a code for detecting and correcting an error in data. The error detection code includes, but is not limited to, a block code, a parity code, a checksum, and a cyclic code. The error correction code includes, but is not limited to, a block code, a convolutional code, and the like.

[0026] The copy creating unit 15 creates a copy of the data acquired from the USB memory. The copy of the data created by the copy creating unit 15 and the error code created by the error code creating unit 14 are stored in the memory unit 16. The memory unit 16 is a secure memory and is not affected by disturbances such as vibrations in a factory. The data and error code stored in the memory unit 16 are safely held.

[0027] The operation control unit 17 reads the program stored in the memory unit 16 and controls the machine tool according to the read program. The numerical control device 100 shown in Fig. 1 is a machine tool equipped with a servo motor and a spindle motor, but the machine tool to be controlled is not limited to this. For example, it includes other machine tools such as electric discharge machines and robots.

[0028] The error handling processing unit 20 includes a stored data reading unit 21 that reads data stored in the memory unit 16, a stored code reading unit 22 that reads error codes stored in the memory unit 16, an error detection unit 23 that detects errors in the data using the error codes, and an error notification unit 24 that notifies the operation control unit 17 that an error has been detected.

[0029] The error handling processing unit 20 detects errors in the data stored in the memory unit 16, and when an error is detected, it performs processing to handle the error. In this embodiment, the error handling processing unit 20 notifies the operation control unit 17 of the presence of an error. The operation control unit 17 safely stops the machine tool. By safely stopping the machine tool, a fail-safe is ensured.

[0030] Next, the operation of the numerical control device 100 in Fig. 2 will be described with reference to Fig. 3. As a premise, in this example, a program for a machine tool stored in a USB memory as data is acquired.

[0031] First, the user inserts a USB memory device storing a program into the connector 12 of the numerical control device 100 (step S1).

[0032] When the user instructs to run a program stored in the USB memory (step S2), the USB data acquisition unit 13 acquires the specified program from the USB memory (step S3). The error code creation unit 14 creates an error code of the program acquired from the USB memory (step S4). The copy creation unit 15 creates a copy of the program read in step S3 and stores it in the storage unit 16 (step S5). The error code created in step S4 is also stored in the storage unit 16 (step S6).

[0033] The stored data reading unit 21 reads the program specified by the user from the storage unit 16 (step S7). The stored code reading unit 22 reads the error code of the program specified by the user from the storage unit 16 (step S8). The error handling processing unit 20 performs error detection of the program read in step S7 using the error code read in step S8 (step S9). If there is no error in the program (step S10; NO), the operation control unit 17 controls the operation of the machine tool according to the read program (step S11). If an error in the program is detected (step S10; YES), the error handling processing unit 20 notifies the operation control unit 17 of the presence of the error (step S12). Upon receiving the notification from the error handling processing unit 20, the operation control unit 17 safely stops the machine tool (step S13).

[0034] In this way, when the numerical control device 100 in Fig. 2 acquires data from the USB memory which is a portable storage medium, it creates an error code for the acquired data and stores it together with the acquired data in the storage unit 16 which is a secure storage area. When the machine tool is in operation, it controls the machine tool while detecting errors in the data stored in the storage unit 16. If an error is present in the data, it is possible to safely stop the machine tool, ensuring a fail-safe.

[0035] Next, a numerical control device 100a according to another embodiment will be described. In the numerical control device 100a of FIG. 4, the error code creation unit 14 creates an error code before the start of operation of the machine tool. The storage unit 16 stores the error code created before the start of operation. The error handling processing unit 20a performs error detection of data acquired from the USB memory using the error code stored in the storage unit 16. When an error is detected, the operation control unit 17 safely stops the machine tool. The numerical control device 100a of FIG. 4 does not store data in the storage unit 16, and therefore does not include the copy creation unit 15 and the stored data reading unit 21 of FIG. 2. The numerical control device 100a directly processes data acquired by the USB data acquisition unit 13 without storing it in the storage unit 16. The numerical control device 100a does not store a program in the storage unit 16. The numerical control device 100a can safely control the machine tool even if the free space of the storage unit 16, which is a safe storage area, is smaller than the program capacity on the USB. Furthermore, the time required for copying a program can be reduced.

[0036] The operation of the numerical control device 100a shown in Fig. 4 will be described with reference to Fig. 5. In this example, as in the case of Fig. 3, a program is acquired from a USB memory.

[0037] First, the user inserts a USB memory into the connector of the numerical control device 100a (step S21). When the insertion of the USB memory is detected, the USB data acquisition unit 13 acquires a program from the USB memory (step S22). The error code creation unit 14 creates an error code of the program acquired from the USB memory (step S23). The error code created in step S23 is stored in the storage unit 16 (step S24).

[0038] When the user instructs to run a program stored in the USB memory (step S25), the USB data acquisition unit 13 acquires the specified program from the USB memory (step S26).

[0039] The error handling processing unit 20 uses the error code stored in the memory unit in step S24 to detect errors in the program acquired from the USB memory in step S26 (step S27). If there is no error in the program (step S28; NO), the operation control unit 17 operates the machine tool in accordance with the acquired program (step S29). If an error in the program is detected (step S28; YES), the error handling processing unit 20a notifies the operation control unit 17 of the presence of an error (step S30). Upon receiving the notification from the error handling processing unit 20a, the operation control unit 17 safely stops the machine tool (step S31).

[0040] Next, another embodiment will be described with reference to Fig. 6. In the numerical control device 100b in Fig. 6, the error handling processing unit 20b includes a stored data reading unit 21 that reads data stored in the storage unit 16, a stored code reading unit 22 that reads an error code stored in the storage unit 16, an error detection unit 23 that detects an error in the data using the error code, a retry unit 25 that instructs the USB data acquisition unit 13 to reread the corresponding portion if an error is present, a restart processing unit 26 that instructs the operation control unit 17 to restart operation if there is no error in the reread data, and an error notification unit 24 that notifies the operation control unit 17 of the presence of the error if an error is present in the reread data.

[0041] The error handling process of the numerical control device 100b shown in Fig. 6 will be described with reference to Fig. 7. As a premise of this process, it is assumed that the program acquired from the USB memory and the error code of the program are stored in the storage unit.

[0042] First, the stored data reading unit 21 reads a specified program from the storage unit 16 (step S41), and the stored code reading unit 22 reads an error code (step S42). The error detection unit 23 uses the error code read in step S42 to perform error detection on the program read in step S41 (step S43).

[0043] If there is no error in the program in step S43 (step S44; NO), the operation control unit 17 operates the machine tool according to the read program (step S45). If an error in the program is detected (step S44; YES), the retry unit 25 instructs the USB data acquisition unit 13 to reload the program (step S46). The error detection unit 23 performs error detection for the program reloaded in step S46 (step S47). If no error is detected (step S48; NO), the restart processing unit 26 instructs the operation control unit 17 to restart the operation (step S49). If an error is detected (step S48; YES), the error notification unit 24 notifies the operation control unit 17 of the existence of an error (step S50). When the operation control unit 17 receives the notification from the error handling processing unit 20b, it safely stops the machine tool (step S51).

[0044] As described above, according to the numerical control device 100b of FIG. 6, if an error exists in the program read from the USB memory, the program is reloaded, and if there is no error in the program, the operation of the machine tool is continued. If there is no error in the reloaded program, the machine tool can continue to operate without stopping. In the flowchart of FIG. 7, the number of reloads is set to one, but the process from step S46 to step S48 may be repeated multiple times. In addition, a time limit for reloading may be set. In addition, the numerical control device 100b of FIG. 6 is configured to store both the error code and the program in the storage unit 16, as in the numerical control device 100 of FIG. 2, but it may be configured to store only the error code in the storage unit 16, as in the numerical control device 100a of FIG. 4.

[0045] Next, another embodiment will be described with reference to Fig. 8. In a numerical control device 100c in Fig. 8, an error handling processing unit 20c includes a stored data reading unit 21 that reads data stored in the storage unit 16, a stored code reading unit 22 that reads an error code stored in the storage unit 16, an error detection unit 23 that detects an error in the data using the error code, an error correction unit 27 that corrects the error when an error is present, and a restart processing unit 26 that instructs the operation control unit 17 to restart operation when the error is corrected.

[0046] With reference to Fig. 9, the error handling process of the numerical control device 100c shown in Fig. 8 will be described. As a premise of this process, it is assumed that the program acquired from the USB memory and the error code of the program are stored in the storage unit 16. In addition, the error code in this process is not an error detection code that only detects errors, but an error correction code that detects and corrects errors.

[0047] First, the stored data reading unit 21 reads a specified program from the storage unit 16 (step S61), and the stored code reading unit 22 reads an error code of the program from the storage unit 16 (step S62). The error detection unit 23 uses the error code read in step S62 to perform error detection on the program read in step S61 (step S63).

[0048] If there is no error in the program in step S63 (step S64; NO), the operation control unit 17 operates the machine tool in accordance with the read program (step S65). If an error in the program is detected (step S64; YES), the error correction unit 27 corrects the program error using the error code read in step S62 (step S66). Next, the operation control unit 17 proceeds to step S65, and operates the machine tool in accordance with the program corrected in step S66. The numerical control device 100c repeats the processes of S63 to S66 until all the processes written in the program are completed.

[0049] Finally, another configuration of the numerical control device 100d will be described with reference to Fig. 10. The numerical control device 100d in Fig. 10 acquires data from a portable storage medium via a USB input / output device 40. The USB input / output device 40 is connected to the numerical control device 100d. The USB input / output device 40 includes a USB connector 41, and a USB memory can be inserted therein. The external device data acquisition unit 28 reads data stored in the USB memory via the USB input / output device 40. As in the other embodiments, the USB input / output device 40 can read data from a portable storage medium other than the USB memory, such as an external hard disk.

[0050] As described above, when using data stored on a portable storage medium, the numerical control device of this embodiment creates an error detection code for the data before the machine is operated and stores the code in a secure memory within the numerical control device, thereby enabling data corruption or loss that may occur in a factory or the like to be detected in advance and data to be used safely.

[0051] In this embodiment, the data relating to the control of the machine tool has been described as a program for the machine tool, but the data relating to the control of the machine tool is not limited to this and also includes, for example, parameters and setting information. [Explanation of symbols]

[0052] 100, 100a~100d Numerical control device 11 Start instruction detection unit 12 Connectors 13 USB data acquisition section 14 Error code generator 15 Copy Creation Department 16 Memory section 17 Operation control unit 20, 20a to 20d Error handling processing unit 21 Stored data reading unit 22 Stored code reader 23 Error detection unit 24 Error Notification Section 25 Retry Section 26 Restart Processing Unit 27 Error Correction Section 28 External device data acquisition section

Claims

1. A numerical control device for controlling an industrial machine, a data acquisition unit that acquires data related to the control of the industrial machine from a portable storage medium; a code creation unit that creates an error code including at least one of an error detection code and an error correction code for the data related to the control of the industrial machine acquired from the portable storage medium; A storage unit that stores the error code; an error detection unit that detects an error in the data acquired again from the portable storage medium by using the error code when the error code is stored in the storage unit; an error handling processing unit that, when the error detection unit detects an error in the data, performs processing to handle the error; A numerical control device comprising:

2. The numerical control device according to claim 1 , wherein the error handling processing unit switches control of the industrial machine.

3. A connector for connecting to a portable storage medium, The numerical control device according to claim 1 , wherein the data acquisition unit acquires the data stored in the portable storage medium via the connector.

4. 2. The numerical control device according to claim 1, wherein the data relating to the control of the industrial machine is a program for the industrial machine.

5. 2. The numerical control device according to claim 1, wherein, when the error detection section detects an error in the data, the error handling processing section safely stops the industrial machine.

6. The numerical control device according to claim 1 , wherein the data acquisition unit reads the data stored in the portable storage medium via a data input / output device having a connector for connecting to the portable storage medium.

7. A control system for controlling an industrial machine, a data acquisition unit that acquires data related to the control of the industrial machine from a portable storage medium; a code creation unit that creates an error code including at least one of an error detection code and an error correction code for the data related to the control of the industrial machine acquired from the portable storage medium; A storage unit that stores the error code; an error detection unit that detects an error in the data acquired again from the portable storage medium by using the error code when the error code is stored in the storage unit; an error handling processing unit that, when the error detection unit detects an error, performs processing to handle the error; A numerical control system comprising:

Citation Information

Patent Citations

  • Memory operating system of numerical control equipment

    JP1984151204A

  • Working program storage system

    JP1988288305A

  • Numerical control data transfer checking system

    JP1990098711A

  • Method for controlling memory

    JP1999025005A

  • Numerical controller

    JP1999231923A