Information processing apparatus and computer-readable storage medium
The apparatus accurately determines and charges for the usage of chargeable codes in machining programs by monitoring execution, addressing inaccuracies in existing systems and reducing user costs through precise usage calculation.
Patent Information
- Application Number
- JP2023563369
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-11-24
- Publication Date
- 2025-07-15
- Estimated Expiration
- 2041-11-24
AI Technical Summary
Existing charging systems for optional programs in numerical control devices face inaccuracies in calculating the actual usage amount, leading to potential deviations.
An information processing apparatus and method that determines the presence of chargeable codes in machining programs, monitors the execution of these codes, and calculates usage amounts based on machine state, either through actual processing or simulation, to accurately charge for the used portion of optional system programs.
Enables precise calculation of usage amounts, reducing user financial burden by charging only for actual usage, allowing for variable or flat-rate billing based on frequency, and providing transparent usage records for service improvement and new option development.
Smart Images

Figure 0007708881000001 
Figure 0007708881000002 
Figure 0007708881000003
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing apparatus and a computer-readable storage medium.
Background Art
[0002] Machine tools incorporate servo motors. A servo motor and a servo driver form a servo system. A numerical control device stores a machining program and a system program. The machining program is mainly composed of a character string of alphabets and numbers, and describes the coordinates of tools and operation commands. The system program generates signals from the commands of the machining program and controls the servo system according to the description of the machining program.
[0003] Some system programs of numerical control devices adopt a billing system. In the billing system, a basic system program and an optional system program are stored in the numerical control device, and the fee for the optional system program is billed.
[0004] In the billing system, there is a need to pay only for the used portion of the optional program. To meet this need, in the usage status management system of Patent Document 1, "a plurality of numerical control devices that have an optional function and control a machine based on a machining program, and a management device that manages the usage status of the optional function for each of the plurality of numerical control devices are provided, and the numerical control device detects the number of times the optional function is used and generates information related to the usage status of the optional function" is described.
Prior Art Documents
Patent Documents
[0005]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0006] When calculating the usage amount of an option program based on a processing program as in Patent Document 1, there may be a deviation from the actual usage amount.
[0007] In the charging system of a numerical control device, a technique for calculating the usage amount to be charged is desired.
Means for Solving the Problem
[0008] An information processing apparatus according to an aspect of the present disclosure is an information processing apparatus that calculates the usage amount of a system program that converts a processing program into a control signal for a machine tool, and includes a valid block determination unit that determines whether a code to be charged exists in the processing program, a processing state determination unit that determines whether processing is being executed based on the machine state of the machine tool when the processing program is executed, and a usage amount calculation unit that calculates the usage amount of the code to be charged when the code to be charged is being executed. A storage medium according to an aspect of the present disclosure stores instructions readable by one or more processors that, when executed by the one or more processors, determine whether a code to be charged exists in a processing program for a machine tool, execute the processing program, determine whether processing is being executed based on the machine state of the machine tool when the processing program is executed, and calculate the usage amount of the code to be charged when the code to be charged is being executed.
Effect of the Invention
[0009] According to one aspect of the present invention, it is possible to calculate the usage amount to be charged.
Brief Description of the Drawings
[0010]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5A
Figure 5B
Figure 6
Figure 7
Figure 8
Figure 9
Mode for Carrying Out the Invention
[0011] [First Disclosure] Hereinafter, the numerical control device 100 of the first disclosure will be described. The first disclosure describes the numerical control device 100 as an example of an information processing device. The information processing device can also be applied to information processing devices other than the numerical control device, such as a PC (personal computer), a server, etc., as long as it has the function of converting a machining program into a control signal for a machine tool.
[0012] FIG. 1 is a block diagram of the numerical control device 100. The numerical control device 100 includes a machining program storage unit 11, a system program storage unit 12, a selection option storage unit 13, a valid block determination unit 14, a machining execution unit 15, a usage amount calculation unit 16, a machining state determination unit 17, a charging table storage unit 18, and a charging fee calculation unit 19.
[0013] The machining program storage unit 11 stores the machining programs subject to charging. FIG. 2 shows an example of a machining program. The machining program is composed of a plurality of lines called blocks. The blocks include codes such as G-codes and M-codes that specify the functions of the machine tool. By instructing the codes, internal settings of the numerical control device of the machine tool, such as axis movement, coordinate setting, rotation, and target machining method of the tool of the machine tool, can be performed.
[0014] The system program storage unit 12 stores a system program that converts the machining program into a control signal for the machine tool. As shown in FIG. 3, the system program is composed of a basic program and an option program. The basic program can be used free of charge. The option program is subject to charging. The numerical control device 100 is provided with various options. When the user enables an option, the code corresponding to the option and the option program for executing the code become available. Examples of options include tool tip point control, smooth transfer control, and three-dimensional error correction. The selected option storage unit 13 stores the codes and the enabled / disabled status of the options. FIG. 4 shows an example of the data stored in the selected option storage unit 13.
[0015] The valid block determination unit 14 determines whether there is a code subject to charging in the machining program. Specifically, it analyzes the machining program and determines whether the code subject to charging included in the machining program is available (the option is enabled).
[0016] The machining execution unit 15 analyzes the machining program, generates a control signal for the axis, and outputs the control signal to the servo system. The servo motor of the machine tool drives the motor according to the control signal to execute the machining.
[0017] The machining state determination unit 17 determines whether machining is being executed using a code subject to charging based on the machine state set in the numerical control device 100. There are two ways to determine whether processing is being executed. The first is to determine from the operation mode. If the operation mode is dry run, machine lock, etc., it is an idle operation and it is determined that processing is not being executed. The second is to check the actual movement of the machine. The contact between the tool and the workpiece can be determined based on the spindle load, image recognition, the relative positional relationship between the tool and the workpiece, etc. The charging determination unit determines whether actual processing is being performed based on these data.
[0018] The usage calculation unit 16 calculates the usage amount of the code subject to charging. The usage amount of the code includes, but is not limited to, the execution time of processing or the number of times of processing execution. Note that the usage amount of a code not subject to charging may also be calculated. By calculating the usage amounts of various codes, the differences in usage amounts for each code can be understood. The usage calculation unit 16 may register conditions under which charging is not performed even if the usage amount is calculated. Examples of conditions under which charging is not performed even if the usage amount is calculated include malfunctions of machines such as machine tools and numerical control devices 100, power outages during operation, etc. The usage calculation unit 16 does not add the usage amount when processing is interrupted under the registered conditions. The usage calculation unit 16 records the usage amount of the code. By recording the usage amount, it is possible to check the usage history of the user, such as the usage time and the number of usage times of the code.
[0019] The charging fee calculation unit 19 calculates the charging fee based on the usage amount of the code subject to charging. The charging table storage unit 18 stores the unit price of the usage amount of each code. An example of the charging table is shown in FIG. 5. The charging table in FIG. 5A consists of the code and the charging fee (unit price) per usage time. The charging table in FIG. 5B consists of the code and the charging fee (unit price) per usage number. The charging fee calculation unit 19 calculates the charging fee based on the usage amount of the code, such as the execution time of processing and the number of times of processing execution, of the code subject to charging.
[0020] The processing of the numerical control device 100 of the first disclosure will be described with reference to FIG. 6. The user of the numerical control device 100 selects the options to be used (step S1). The code corresponding to the selected option becomes valid for use. The numerical control device 100 determines the block containing the code to be charged (step S2). The numerical control device 100 starts the machining (step S3). The numerical control device 100 determines whether the machining is being executed (step S4). The determination is based on operation modes such as dry run and machine lock, spindle load, image recognition, the relative positional relationship between the tool and the workpiece, etc. If the machining is interrupted under specified conditions in advance, it is determined that the machining is not being executed.
[0021] The numerical control device 100 calculates the usage amount of the code to be charged (step S5). Examples of the code usage amount include, but are not limited to, the usage time and the number of uses of the code.
[0022] The numerical control device 100 calculates the charging fee for each code based on the usage amount of the code (step S6). The numerical control device 100 records the usage amount of the code such as the usage time and the number of uses of the code, and the charging fee of the code (step S7).
[0023] As described above, the numerical control device 100 of the first disclosure searches for the block in which the code to be charged is described, determines whether machining is being executed with the code to be charged, and calculates the usage amount of the code. With the numerical control device 100 of the first disclosure, it is possible to obtain the user's usage records such as the usage time, the number of uses, and the usage fee of the option. In addition, the usage records can be utilized for service improvement or lead to the creation of new options.
[0024] According to the numerical control device 100 of the first disclosure, since charging is performed only for the portion where the code is used, the user's financial burden is reduced. In addition, the user can also confirm which block has incurred how much fee. The user can also select variable charging and flat-rate charging according to the usage frequency.
[0025] [Second Disclosure] Hereinafter, the numerical control device 100 of the second disclosure will be described. In the second disclosure, the numerical control device 100 is described as an example of an information processing device. The information processing device can be applied to information processing devices other than the numerical control device, such as a PC (personal computer), a server, etc., as long as it has the function of converting a machining program into a control signal for a machine tool.
[0026] FIG. 7 is a block diagram of the numerical control device 100. The numerical control device 100 includes a machining program storage unit 11, a system program storage unit 12, a selection option storage unit 13, a valid block determination unit 14, a simulation execution unit 20, a usage amount calculation unit 16, a machining state determination unit 17, a charging notation storage unit 18, a charging fee calculation unit 19, and a charging fee presentation unit 21. The numerical control device 100 of the second disclosure determines whether machining is to be executed by simulation. Information regarding the usage record of the system program can be calculated before executing machining by simulation. The information regarding the usage record includes, but is not limited to, usage time, usage frequency, charging fee, etc. In the description of the numerical control device 100 of the second disclosure, the description of the same components as those of the numerical control device 100 of the first disclosure is omitted.
[0027] The machining program storage unit 11 stores the machining program subject to charging. The system program storage unit 12 stores a system program that converts the machining program into a control signal for a machine tool. As shown in FIG. 3, the system program stores a basic program and an option program. The basic program can be used free of charge. The option program is subject to charging.
[0028] The selection option storage unit 13 stores the code for which the use of the code subject to charging becomes valid when the user selects an option. The valid block determination unit 14 determines whether there is a code subject to charging in the processing program. Specifically, it analyzes the processing program and determines whether the code subject to charging included in the processing program is available (the option is valid).
[0029] The simulation execution unit 20 executes the simulation of the processing program. Based on the simulation, the processing state determination unit 17 determines whether processing is executed using the code subject to charging. There are two methods for determining whether processing is being executed. The first is the method of determining from the operation mode. If the operation mode is dry run, machine lock, etc., it is an idle run, and it is determined that processing is not being executed. The second is the method of checking the actual movement of the machine. The contact between the tool and the workpiece can be determined based on the relative positional relationship between the tool and the workpiece, etc. The charging determination unit determines whether actual processing is being performed based on these data. Calculate the usage amount of the code such as the execution time of processing or the number of executions of processing. If the operation mode of the simulation is dry run, machine lock, etc., the processing state determination unit 17 determines that it is an idle run. Also, it determines whether actual processing is being performed based on the coordinate positions of the tool and the workpiece in the simulation.
[0030] The usage amount calculation unit 16 calculates the usage amount of the code subject to charging. The usage amount of the code includes, but is not limited to, the execution time of processing or the number of executions of processing. Note that the usage amount of the code not subject to charging may also be calculated. By calculating the usage amounts of various codes, the differences in usage amounts for each code can be understood. The usage amount calculation unit 16 records the usage amount of the code. By recording the usage amount, the usage history of the user, such as the usage time and the number of usage times of the code, can be confirmed.
[0031] The charging fee calculation unit 19 calculates the charging fee based on the usage amount of the code to be charged. The charging table storage unit 18 stores the unit price of the usage amount of each code. The charging fee calculation unit 19 calculates the charging fee based on the usage amount such as the usage time and the number of uses of the code.
[0032] The charging fee presentation unit 21 presents the charging fee calculated by the charging fee calculation unit 19 to the user. The user can refer to the charging fee to determine which options to select and which codes to use.
[0033] With reference to FIG. 8, the processing of the numerical control device 100 of the second disclosure will be described. The user of the numerical control device 100 selects the options to be used (step S11). The code corresponding to the option becomes valid for use. The numerical control device 100 determines the presence of a block including the code to be charged (step S12). The numerical control device 100 starts the simulation (step S13). The numerical control device 100 determines whether processing is executed using the code to be charged (step S14). The determination is based on the operation mode and the coordinate positions of the tool and the workpiece in the simulation.
[0034] The numerical control device 100 calculates the usage amount of the code to be charged (step S15). As the usage amount of the code, the usage time and the number of uses of the code are obtained.
[0035] The numerical control device 100 calculates the charging fee for each code based on the usage amount of the code (step S16). The numerical control device 100 records the usage amount of the code such as the usage time and the number of uses of the code and the charging fee of the code (step S17).
[0036] The numerical control device 100 notifies the user of the charging fee of the code based on the simulation (step S18). The user checks the charging fee based on the simulation and determines whether to use the code.
[0037] As described above, the numerical control device 100 of the second disclosure searches for blocks in which codes subject to charging are described and performs simulation of machining programs. During the simulation, the usage amount of the codes subject to charging is calculated. With the numerical control device 100 of the second disclosure, it is possible to confirm the usage results of options such as the usage time, usage frequency, and usage fees of the codes. In addition, the usage results can be utilized for service improvement or lead to the creation of new options.
[0038] According to the numerical control device 100 of the second disclosure, since the charging fee is calculated during the simulation, the charging fee can be confirmed before the machining is executed. The user can take measures such as rewriting the machining program after confirming the charging fee. In addition, the user can confirm which block incurs how much fee. The user can select per - quantity charging and flat - rate charging according to the usage frequency.
[0039] [Hardware Configuration] With reference to FIG. 9, the hardware configuration of the numerical control device 100 will be described. The CPU 111 included in the numerical control device 100 is a processor that controls the numerical control device 100 as a whole. The CPU 111 reads out the system program processed in the ROM 112 via a bus and controls the entire numerical control device 100 according to the system program. In the RAM 113, temporary calculation data, display data, various data input by the user via the input unit 71, etc. are temporarily stored.
[0040] The display unit 70 is a monitor or the like attached to the numerical control device 100. The display unit 70 displays the operation screen, setting screen, etc. of the numerical control device 100.
[0041] The input unit 71 is integrated with the display unit 70 or is a separate keyboard, touch panel, etc. from the display unit 70. The user operates the input unit 71 to input to the screen displayed on the display unit 70. Note that the display unit 70 and the input unit 71 may be a mobile terminal.
[0042] The non-volatile memory 114 is 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 machining programs, system programs, available options, charging tables, etc. Programs read from external devices via an interface (not shown) into the non-volatile memory 114, programs input via the input unit 71, and various data acquired from each part of the numerical control device 100 and machine tools, etc. (for example, set parameters acquired from a machine tool) are stored in the non-volatile memory 114. The programs and various data stored in the non-volatile memory 114 may be expanded to the RAM 113 during execution / use. Also, various system programs are pre-written in the ROM 112.
Explanation of Signs
[0043] 100 Numerical control device 11 Machining program storage unit 12 System program storage unit 13 Selectable option storage unit 14 Valid block determination unit 15 Machining execution unit 16 Usage calculation unit 17 Machining state determination unit 18 Charging table storage unit 19 Charging fee calculation unit 20 Simulation execution unit 21 Charging fee presentation unit 70 Display unit 71 Input unit 111 CPU 112 ROM 113 RAM 114 Non-volatile memory
Claims
1. An information processing apparatus that calculates the usage amount of a system program for converting a machining program into a control signal of a machine tool, comprising: a valid block determination unit that determines whether or not a code to be charged exists in the machining program; a machining state determination unit that determines whether or not machining is being performed based on the machine state of the machine tool when the machining program is executed; a usage amount calculation unit that calculates the usage amount of the code to be charged when the code to be charged is being executed; An information processing apparatus comprising the above.
2. The information processing apparatus according to claim 1, wherein the usage amount calculation unit calculates at least one of the usage time and the number of times of use for the code to be charged to perform machining.
3. The machining state determination unit determines whether or not the machine tool is performing machining, The information processing apparatus according to claim 1, wherein the usage amount calculation unit calculates the usage amount of the code to be charged in the machine tool.
4. The machining state determination unit determines whether or not the machine tool is performing machining in simulation, The information processing apparatus according to claim 1, wherein the usage amount calculation unit calculates the usage amount of the code to be charged in the simulation.
5. The information processing apparatus according to claim 1, wherein the machining state determination unit determines that the machining is not being performed when the machining is an idle run.
6. The information processing apparatus according to claim 1, which accepts registration of conditions for not performing charging, and determines that charging is not required when the machine state is interrupted by the conditions.
7. The information processing apparatus according to claim 1, further comprising a charging fee calculation unit that calculates the charging fee of the code based on the usage amount of the code to be charged.
8. A charging fee calculation unit that calculates the charging fee of the code based on the usage amount of the code to be charged in the simulation, and The information processing apparatus according to claim 4, further comprising a charging fee presentation unit that presents the charging fee in the simulation to the user.
9. By one or more processors executing, determine whether or not a code to be charged exists in the machining program of the machine tool, execute the machining program, determine whether or not machining is being performed based on the machine state of the machine tool when the machining program is executed, calculate the usage amount of the code to be charged when the code to be charged is being executed, A storage medium storing instructions readable by the processor.
Citation Information
Patent Citations
Numerical control unit option function use situation management system
JP2016081469A
Plant operation method, control apparatus, and program
JP2020009166A
Optional function usage fee calculation method, optional function usage fee calculation device, and computer program
JP2020017029A