Sign In to Follow Application
View All Documents & Correspondence

Control Device, Machine Learning Device, And Control Method

Abstract: A control device (10A) for determining a job allocation method for a numerical control device (1) that allocates a job constituting software to each of a plurality of calculation units so that the calculation unit executes the job is characterized by comprising: a transition diagram display unit (111) which, on the basis of log data acquired from the numerical control device (1), displays a transition diagram indicating, in time series, the execution status of the job executed by each of the plurality of calculation units, said log data including information identifying calculation units that executed jobs in the past, and also identifying the timings with which the jobs were executed in the past; an option generation unit (14) which, on the basis of constraints imposed on the software, generates options for how to change the allocation status of a job indicated by the transition diagram; an input reception unit (12) which receives input information indicating an option selected from among the generated options; and a change information output unit (16) which, in accordance with the option indicated by the input information, outputs change information for changing the allocation status of the job.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
22 July 2022
Publication Number
39/2022
Publication Type
INA
Invention Field
COMPUTER SCIENCE
Status
Email
info@krishnaandsaurastri.com
Parent Application
Patent Number
Legal Status
Grant Date
2025-09-16
Renewal Date

Applicants

MITSUBISHI ELECTRIC CORPORATION
7-3, Marunouchi 2-chome, Chiyoda-ku, Tokyo 1008310

Inventors

1. NAGAE, Keishi
c/o Mitsubishi Electric Corporation, 7-3, Marunouchi 2-chome, Chiyoda-ku, Tokyo 1008310
2. TSUDA, Takeshi
c/o Mitsubishi Electric Corporation, 7-3, Marunouchi 2-chome, Chiyoda-ku, Tokyo 1008310
3. KIMATA, Toshiaki
c/o Mitsubishi Electric Corporation, 7-3, Marunouchi 2-chome, Chiyoda-ku, Tokyo 1008310

Specification

FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENTS RULES, 2003
COMPLETE SPECIFICATION
[See section 10, Rule 13]
CONTROL DEVICE, MACHINE LEARNING DEVICE, AND CONTROL
METHOD;
MITSUBISHI ELECTRIC CORPORATION, A CORPORATION ORGANISED
AND EXISTING UNDER THE LAWS OF JAPAN, WHOSE ADDRESS IS 7-3,
MARUNOUCHI 2-CHOME, CHIYODA-KU, TOKYO 1008310, JAPAN
THE FOLLOWING SPECIFICATION PARTICULARLY DESCRIBES THE
INVENTION AND THE MANNER IN WHICH IT IS TO BE PERFORMED
2
DESCRIPTION
Field
[0001] The present disclosure relates to a control
5 device, a machine learning device, and a control method for
determining how to assign jobs constituting software for
controlling an operation of a numerical control device, the
numerical control device assigning the jobs to each of a
plurality of operation units for execution of the assigned
10 jobs.
Background
[0002] In recent years, functions required of numerical
control devices for controlling machine tools have been
15 diversified and advanced, and required processing
performance has also been increased. One method of
improving the processing performance of a numerical control
device is a method of allowing the numerical control device
to execute processes in parallel, using hardware including
20 a plurality of operation units. A numerical control device
including a plurality of operation units changes in
processing performance, depending on the state of
assignment of jobs to the operation units. Each of the
jobs executed in parallel defines a basis of processing.
25 It is thus important to control the state of job assignment
to the operation units to improve the processing
performance of the numerical control device.
[0003] Patent Literature 1 discloses a method for a
numerical control device including a plurality of operation
30 units to control, on the basis of machining conditions set
for a machine tool, the state of job assignment to the
operation units, using machine learning.
3
Citation List
Patent Literature
[0004] Patent Literature 1: Japanese Patent Application
Laid-open No. 2019-003271
5
Summary
Technical Problem
[0005] Unfortunately, the technique disclosed in Patent
Literature 1 experiences a problem of being difficult for a
10 person having no expert knowledge of parallel programming
to adjust the state of job assignment to the operation
units while checking the state.
[0006] In software for numerical control devices which
has been developed assuming execution by a single operation
15 unit, there are various constraints on the assignment of
jobs constituting the software to each of a plurality of
operation units. For example, if the execution result of a
first job is required to be used in a second job, the first
job and the second job cannot be parallelized. If the
20 first job and the second job are required to access the
same memory area, the first job and the second job cannot
be parallelized. Thus, since there are constraints to be
considered in performing parallel programming, it is
difficult for a person having no expert knowledge of
25 parallel programming to adjust the state of job assignment
to the operation units.
[0007] The present disclosure has been made to solve the
problem as described above, and an object of the present
disclosure is to provide a control device that allows even
30 a person having no expert knowledge of parallel programming
to easily adjust the state of job assignment to operation
units while checking the state.
4
Solution to Problem
[0008] To solve the above problem and achieve the object,
the present disclosure provides a control device to
determine how to assign jobs constituting software for a
5 numerical control device to assign the jobs to each of a
plurality of operation units for execution of the assigned
jobs, the control device comprising: a transition diagram
display unit to display, on a basis of log data, a
transition diagram showing, in time series, an execution
10 state of the jobs in each of the plurality of operation
units, the log data being acquired from the numerical
control device and including information specifying
operation units that have executed the jobs in the past and
timings at which the jobs have been executed in the past;
15 an option generation unit to generate, on the basis of
constraints imposed on the software, options of how to
change an assignment state of the jobs displayed in the
transition diagram; an input acceptance unit to accept
input information indicating an option selected from the
20 generated options; and a change information output unit to
output change information for changing the assignment state
of the jobs in accordance with the option indicated by the
input information.
25 Advantageous Effects of Invention
[0009] The present disclosure has the effect of allowing
even a person having no expert knowledge of parallel
programming to easily adjust the state of job assignment to
operation units while checking the state.
30
Brief Description of Drawings
[0010] FIG. 1 is a diagram illustrating a configuration
of a numerical control device including a control device
5
according to a first embodiment.
FIG. 2 is a flowchart for explaining the operation of
the control device illustrated in FIG. 1.
FIG. 3 is a diagram illustrating an example of a
5 transition diagram displayed by a transition diagram
display unit in step S103 in FIG. 2.
FIG. 4 is a diagram illustrating an example of options
displayed in step S106 in FIG. 2.
FIG. 5 is a diagram illustrating an example of a post10 change transition diagram displayed in step S109 in FIG. 2.
FIG. 6 is a flowchart for explaining details of step
S108 in FIG. 2.
FIG. 7 is a diagram illustrating a functional
configuration of a control device according to a second
15 embodiment.
FIG. 8 is a diagram illustrating a configuration of
the numerical control device including a control device
according to a third embodiment.
FIG. 9 is a flowchart for explaining the operation of
20 the control device illustrated in FIG. 8.
FIG. 10 is a diagram illustrating an example of a
transition diagram abstracted in step S201 in FIG. 9.
FIG. 11 is a diagram illustrating an example of
options abstracted in step S202 in FIG. 9.
25 FIG. 12 is a diagram illustrating an example of a
post-change transition diagram abstracted in step S203 in
FIG. 9.
FIG. 13 is a diagram illustrating a configuration of a
control device according to a fourth embodiment.
30 FIG. 14 is a diagram illustrating a configuration of
the numerical control device including a control device
according to a fifth embodiment.
FIG. 15 is a diagram illustrating a functional
6
configuration of a machine learning device illustrated in
FIG. 14.
FIG. 16 is a diagram illustrating a configuration of a
control device according to a sixth embodiment.
5 FIG. 17 is a diagram illustrating dedicated hardware
for implementing functions of the control devices according
to the first to sixth embodiments.
FIG. 18 is a diagram illustrating a configuration of a
control circuit for implementing functions of the control
10 devices according to the first to sixth embodiments.
Description of Embodiments
[0011] A control device, a machine learning device, and
a control method according to embodiments of the present
15 disclosure will be hereinafter described in detail with
reference to the drawings. Note that the following
embodiments are not intended to limit the technical scope
of the present disclosure.
[0012] First Embodiment.
20 FIG. 1 is a diagram illustrating a configuration of a
numerical control device 1 including a control device 10A
according to a first embodiment. The numerical control
device 1 includes the control device 10A, a change
information storage unit 17, a numerical control processing
25 execution unit 18, and a log data storage unit 19.
[0013] The numerical control device 1 includes a
plurality of operation units (not illustrated). The
plurality of operation units may be a multi-core CPU
including a plurality of cores in one central processing
30 unit (CPU) or may be a multi-CPU including a plurality of
CPUs. That is, the operation units of the numerical
control device 1 may be “cores” of a CPU or may be
processing units such as “CPUs”. Each of the operation
7
units is hereinafter sometimes referred to as a “core”.
The numerical control device 1 assigns jobs constituting
software to each of the plurality of operation units for
execution of the assigned jobs. Each of the plurality of
5 operation units executes the assigned jobs. By thus using
the plurality of operation units, the numerical control
device 1 can execute two or more jobs in parallel. The
numerical control device 1, which executes two or more jobs
in parallel, can have higher processing power than when
10 executing jobs sequentially with a single operation unit.
[0014] The control device 10A has a function to
determine how to assign the jobs to the plurality of
operation units of the numerical control device 1. The
control device 10A acquires log data from the numerical
15 control device 1. The log data includes information
specifying the assignment state of the jobs executed in the
past by the numerical control device 1 and information
specifying the execution state of the jobs. The
information specifying the assignment state of the jobs is
20 information for specifying in which operation unit each job
executed in the past by the numerical control device 1 has
been executed. Adding information specifying timings at
which the jobs have been executed to the information
specifying the assignment state of the jobs results in the
25 information specifying the execution state of the jobs.
For example, the log data includes job names that are
information for identifying the jobs, information
indicating the operation units to which the jobs are
assigned, and event occurrence time information on each job.
30 The job names and the information indicating the operation
units to which the jobs are assigned are an example of the
information specifying the assignment state of the jobs.
The event occurrence time information on each job is an
8
example of the information specifying the timings at which
the jobs have been executed. The control device 10A
performs various types of processing on the basis of the
acquired log data to thereby generate change information
5 for changing the assignment state of the jobs, and outputs
the generated change information. The change information
storage unit 17 stores therein the change information
generated by the control device 10A.
[0015] Using the plurality of operation units, the
10 numerical control processing execution unit 18 performs
numerical control processing on a machine tool to be
controlled by the numerical control device 1. The
numerical control processing execution unit 18 is a
software processing execution unit for implementing
15 functions required of the numerical control device 1.
Specific examples of the processing executed by the
numerical control processing execution unit 18 include
processing to analyze a machining program describing
details of machining to be executed by the machine tool,
20 interpolation processing to smoothly give instructions on
the tool path, acceleration-deceleration processing to
create a velocity pattern for quickly operating the machine
tool without vibration, etc. The numerical control
processing execution unit 18 can change the assignment
25 state of the jobs in accordance with the change information
stored in the change information storage unit 17. In
accordance with constraints imposed on the software, the
numerical control processing execution unit 18 determines
timings at which each of the plurality of operation units
30 executes the assigned jobs. The numerical control
processing execution unit 18 generates log data for output
to the log data storage unit 19 while performing the
numerical control processing.
9
[0016] The log data storage unit 19 stores therein the
log data output by the numerical control processing
execution unit 18. In FIG. 1, the change information
storage unit 17 and the log data storage unit 19 are
5 included in the numerical control device 1, but the change
information storage unit 17 and the log data storage unit
19 may be storage areas on a computer, a hard disk, or the
like accessible by the numerical control device 1 via a
network. The log data includes, for example, the names of
10 jobs constituting the numerical control processing,
information specifying the operation unit assigned to each
job, and event occurrence times of each job. Processing on
the software is done on a job-by-job basis, and the
destinations of assignment of the jobs to the plurality of
15 operation units are changeable. The jobs are not only
units such as functions in programming but also units that
are sets of functions such as tasks and processes.
[0017] There are multiple types of events. Examples
include a “start event” that occurs when a job obtains an
20 execution right in an operation unit, a “preempted event”
that occurs when a job being executed that has obtained an
execution right is deprived of the execution right by a job
having a higher priority than the job being executed, such
as an interrupt job, an “exit event” that occurs when a job
25 completes processing and releases an execution right, and a
“release to xxx event” that occurs when a job releases an
execution right to another job. A job name indicating
another target job is entered in “xxx” of the “release to
xxx event”. To perform processing to acquire event logs,
30 the numerical control processing execution unit 18 can use
an application programming interface (API) provided by a
widespread real-time operating system (OS) or the like.
[0018] The control device 10A includes a display unit 11,
10
an input acceptance unit 12, a transition diagram
generation unit 13, an option generation unit 14, a postchange transition diagram estimation unit 15, and a change
information output unit 16.
5 [0019] The display unit 11 provides a display screen
including a transition diagram, options of how to change
the assignment state of the jobs, and a post-change
transition diagram. The display unit 11 can perform
drawing processing using a display device inside or outside
10 the numerical control device 1 to provide the above display
screen.
[0020] The display unit 11 includes a transition diagram
display unit 111, an option display unit 112, and a postchange transition diagram display unit 113. The transition
15 diagram display unit 111 displays a transition diagram
generated by the transition diagram generation unit 13.
The option display unit 112 displays options generated by
the option generation unit 14. The post-change transition
diagram display unit 113 displays a post-change transition
20 diagram estimated by the post-change transition diagram
estimation unit 15. Each of the transition diagram display
unit 111, the option display unit 112, and the post-change
transition diagram display unit 113 may perform drawing
processing such that two or more of the transition diagram,
25 the options, and the post-change transition diagram are
simultaneously included in a single screen area drawn by
the display unit 11. For example, if the display unit 11
provides a display screen including the transition diagram,
the options, and the post-change transition diagram, each
30 of the transition diagram display unit 111, the option
display unit 112, and the post-change transition diagram
display unit 113 performs the drawing processing on a part
of the screen area. When the user performs a switching
11
operation with one or two of the transition diagram, the
options, and the post-change transition diagram being
displayed, the display unit 11 may change the displayed
contents.
5 [0021] The input acceptance unit 12 accepts input
information generated by the user using an input device or
input information generated by a machine. The input
acceptance unit 12 can output the accepted input
information to each of the option generation unit 14, the
10 post-change transition diagram estimation unit 15, and the
change information output unit 16.
[0022] On the basis of the log data the transition
diagram generation unit 13 generates a transition diagram
showing, in time series, the execution state of the jobs in
15 each of the plurality of operation units. The transition
diagram shows, in time series, which job has been executed
by each of the plurality of operation units included in the
numerical control device 1 at a certain time. The
transition diagram generation unit 13 outputs the generated
20 transition diagram to the transition diagram display unit
111 of the display unit 11.
[0023] The option generation unit 14 generates an option
of how to change the assignment state of a job indicated by
the input information output by the input acceptance unit
25 12. The job indicated by the input information output by
the input acceptance unit 12 is a specified job of the jobs
displayed in the transition diagram. The option of how to
change the assignment state is an option regarding how to
change the assignment state of the job, such as which of
30 the plurality of operation units executes each job of the
software of the numerical control device 1, which job is
executed in parallel with the job, or whether or not the
job is distributed to the plurality of operation units and
12
executed in parallel. At this time, the option generation
unit 14 generates a “changeable option” on the basis of the
constraints imposed on the software. The constraints
imposed on the software include, for example, combinations
5 of jobs among the plurality of jobs constituting the
software, which combination of jobs cannot be processed in
parallel. Other examples of the constrains are constraints
imposed on the order of the jobs, and constraints imposed
on an operation unit that can execute the job. If the
10 option generation unit 14 does not generate options on the
basis of the constraints imposed on the software, the
generated options may include an unchangeable option.
Examples of the unchangeable option include an option to
process, in parallel, two or more jobs that cannot be
15 processed in parallel. The option generation unit 14
outputs the generated option to the option display unit 112
of the display unit 11.
[0024] The post-change transition diagram estimation
unit 15 estimates, on the basis of the log data, a
20 transition diagram when the assignment state of the jobs is
changed in accordance with an option indicated by the input
information output by the input acceptance unit 12. The
option indicated by the input information output by the
input acceptance unit 12 is an option selected from options
25 generated by the option generation unit 14. The postchange transition diagram estimation unit 15 outputs the
estimated post-change transition diagram to the post-change
transition diagram display unit 113 of the display unit 11.
[0025] The change information output unit 16 generates
30 change information for changing the assignment state of the
jobs in accordance with an option indicated by the input
information output by the input acceptance unit 12. The
option indicated by the input information output by the
13
input acceptance unit 12 is an option selected from options
generated by the option generation unit 14. The input
information may indicate two or more options. If two or
more options are selected, the change information output
5 unit 16 generates change information on the basis of all
the options currently selected. The change information
output unit 16 can output the generated change information
to the change information storage unit 17.
[0026] The change information is data described in a
10 format for the numerical control processing execution unit
18 to reflect the change in the assignment state of the
jobs. For example, the change information may be a file in
which information such as to which operation unit each job
is assigned or whether or not to distribute a certain job
15 to the plurality of operation units for execution is
described in text form in line with a predetermined format,
or may be a binary file in which the above information is
described in such a way as to be analyzable by a real-time
OS or the like.
20 [0027] FIG. 2 is a flowchart for explaining the
operation of the control device 10A illustrated in FIG. 1.
First, the control device 10A acquires log data from the
log data storage unit 19 (step S101). The log data
acquired from the log data storage unit 19 is output to
25 each of the transition diagram generation unit 13 and the
post-change transition diagram estimation unit 15.
[0028] The transition diagram generation unit 13
generates a transition diagram on the basis of the log data
(step S102). Specifically, the log data includes
30 information specifying the execution state of jobs such as
job names, operation units that have executed the jobs, and
event occurrence times of each job. On the basis of these
pieces of information, the transition diagram generation
14
unit 13 generates a transition diagram showing, in time
series, the execution state of the jobs in each of the
plurality of operation units. The transition diagram
generation unit 13 outputs the generated transition diagram
5 to the transition diagram display unit 111.
[0029] The transition diagram display unit 111 displays,
on the display screen, the transition diagram generated by
the transition diagram generation unit 13 (step S103). The
jobs displayed in the transition diagram can be selected.
10 The input acceptance unit 12 can accept input information
indicating a selected job. The assumption is that the user
looking at the display screen performs an input operation
of selecting a job included in the displayed transition
diagram.
15 [0030] FIG. 3 is a diagram illustrating an example of
the transition diagram displayed by the transition diagram
display unit 111 in step S103 in FIG. 2. The horizontal
axis in FIG. 3 is a time axis. Core0, core1, core2, and
core3 in FIG. 3 indicate the plurality of operation units
20 of the numerical control device 1. Each of a plurality of
blocks illustrated in FIG. 3 represents a job. The types
of the illustrated jobs can be distinguished by the types
of textures that fill the blocks. Instead of using
textures, the transition diagram display unit 111 may use
25 block colors, text, or the like to display the types of the
jobs in a distinguishable manner. Assume that text is used
for distinguishing the types of jobs. When a box
indicating a job is selected, the transition diagram
display unit 111 may display pop-up information using text
30 etc. indicating the nature of the job such as the type of
the job. FIG. 3 illustrates the execution state of the
jobs in time series for each operation unit. Note that FIG.
3 is an example. The transition diagram is only required
15
to show, in time series, the execution state of the jobs in
each of the plurality of operation units. Although the
horizontal axis is a time axis in FIG. 3, the vertical axis
may be a time axis.
5 [0031] The display of the transition diagram showing the
execution state of the jobs in time series for each
operation unit allows the user of the control device 10A to
intuitively grasp which operation unit bears a high load.
Further, the transition diagram in FIG. 3, in which the
10 horizontal axis is a time axis, shows that when two or more
blocks representing jobs overlap vertically, these blocks
are executed in parallel. FIG. 3 shows that the operation
unit indicated by “core1” bears a higher processing load
than the other operation units.
15 [0032] By checking the displayed transition diagram, the
user can grasp how the numerical control device 1 is
currently operating. After grasping how the numerical
control device 1 is currently operating, the user performs
analysis based on an awareness of each of the associated
20 problem. For example, if the processing of the numerical
control device 1 is not completed within a predetermined
period, the user specifies a job that is a bottleneck in
processing time or analyzes imbalances in load status
between the operation units. On the basis of the results
25 of the analysis, the user can perform an operation of
determining and selecting a target job for solving the
problem.
[0033] Reference is made back to FIG. 2. The input
acceptance unit 12 determines whether or not there is a
30 selection of a job displayed in the transition diagram
(step S104). If there is no selection of a job displayed
in the transition diagram (step S104: No), the processing
is repeated from step S103.
16
[0034] If there is a selection of a job displayed in the
transition diagram (step S104: Yes), that is, if the input
acceptance unit 12 accepts input information indicating a
selected job, the input acceptance unit 12 outputs the
5 accepted input information to the option generation unit 14.
On the basis of the constraints imposed on the software,
the option generation unit 14 generates an option of how to
change the assignment state of the selected job (step S105).
If the input information indicates two or more jobs, the
10 option generation unit 14 generates an option of how to
change the assignment state of each of the two or more jobs.
The option generation unit 14 may generate, for one job, a
single or more than one option of how to change the
assignment state.
15 [0035] The option generation unit 14 checks static
constraint conditions on a target job, using constraint
condition information indicating the constraints imposed on
the software. The static constraint conditions are
constraint conditions defined by the natures of the
20 individual jobs, regardless of how the jobs are assigned to
the operation units. For example, the static constraint
conditions are conditions that “a second job should not be
executed until the execution of a first job is completed”,
“a third job and a fourth job should not be executed in
25 parallel”, etc. The static constraint conditions are
checked, following which a selectable option of how to
change the assignment state is determined within the
constraints imposed on the software of the numerical
control device 1.
30 [0036] The constraint condition information, which is
stored in the form of a list, a database, etc. is, for
example, information on constraint conditions existing on
the software and previously enumerated by a person having
17
expert knowledge of the software for controlling the
numerical control device 1, such as a software developer of
a manufacturer manufacturing the numerical control device 1.
[0037] Subsequently, using information indicating an
5 operation unit that is a destination of assignment, the
option generation unit 14 checks dynamic constraint
conditions on each job included in the log data. The
dynamic constraint conditions are constraint conditions
imposed by the operation units that are currently assigned
10 the jobs. For example, if an asymmetrical multiprocessing
(AMP) multi-core CPU is used, there may be a core to which
a job cannot be assigned depending on the properties of the
job and the core. The option generation unit 14 generates
a changeable option as a result of checking the static
15 constraint conditions and the dynamic constraint conditions.
The option generation unit 14 outputs the generated option
to the option display unit 112.
[0038] The option display unit 112 displays, on the
display screen, the option generated by the option
20 generation unit 14 (step S106). Options displayed on the
display screen can be selected. The input acceptance unit
12 can accept input information indicating a selected
option. The assumption is that the user looking at the
display screen performs an input operation to select a
25 displayed option.
[0039] FIG. 4 is a diagram illustrating an example of
options displayed in step S106 in FIG. 2. Fig. 4 indicates
that three jobs are selected in step S104 and a single
option is generated for each of the three jobs. The option
30 display unit 112 can display, on the display screen, the
selected jobs whose assignment is to be changed. Of
options of how to change the assignment state of the
selected jobs, options determined to be “changeable” on the
18
basis of the constraints imposed on the software can be
also displayed on the display screen by the option display
unit 112. The option of how to change the assignment state
of the job, which is illustrated in the upper part of FIG.
5 4, is processing distribution indicating that one job is
divided into two or more jobs, or four jobs in this case,
and each of the four jobs is executed by the corresponding
one of the operation units. The option of how to change
the assignment state of the job, which is illustrated in
10 the middle part of FIG. 4, is movement to another core.
This movement to another core illustrated in the middle
part of FIG. 4 indicates that the operation unit to execute
the job is changed so that the job executed by the
operation unit indicated by “core1” is executed by the
15 operation unit indicated by “core2”. The option of how to
change the assignment state of the job, which is
illustrated in the lower part of FIG. 4, is movement to
another core. This movement to another core illustrated in
the lower part of FIG. 4 indicates that the operation unit
20 to execute the job is changed so that the job executed by
the operation unit indicated by “core2” is executed by the
operation unit indicated by “core1”.
[0040] The method of displaying an option may be the
method of illustrating a change in schematic diagrams
25 before and after application of the option as illustrated
in the upper part of FIG. 4, or may be the method of
expressing an option in list form as illustrated in the
middle and lower parts of FIG. 4. The method of displaying
an option is desirably a method that allows the user to
30 grasp the states before and after application of the option.
[0041] Reference is made back to FIG. 2. The input
acceptance unit 12 determines whether or not there is a
selection of an option displayed on the display screen
19
(step S107). If there is no selection of an option (step
S107: No), the processing is repeated from step S106.
[0042] If there is a selection of an option (step S107:
Yes), that is, if the input acceptance unit 12 accepts
5 input information indicating a selected option, the input
acceptance unit 12 outputs the accepted input information
to the post-change transition diagram estimation unit 15.
The input information accepted by the input acceptance unit
12 may indicate a single option or two or more options.
10 The post-change transition diagram estimation unit 15
estimates, on the basis of the log data, a transition
diagram after the assignment state of the jobs is changed
in accordance with the selected option (step S108). If the
input information indicates two or more options, the post15 change transition diagram estimation unit 15 estimates a
transition diagram after the assignment state of the jobs
is changed in accordance with the two or more options. The
post-change transition diagram estimation unit 15 outputs
the estimated transition diagram to the post-change
20 transition diagram display unit 113.
[0043] The post-change transition diagram display unit
113 displays the estimated post-change transition diagram
on the display screen (step S109).
[0044] FIG. 5 is a diagram illustrating an example of
25 the post-change transition diagram displayed in step S109
in FIG. 2. FIG. 5 illustrates the post-change transition
diagram generated when all the options illustrated in FIG.
4 are selected. The method by which the post-change
transition diagram display unit 113 presents the post30 change transition diagram is the same as the method by
which the transition diagram display unit 111 presents the
transition diagram. The horizontal axis in FIG. 5 is a
time axis. Core0, core1, core2, and core3 in FIG. 5
20
indicate the plurality of operation units included in the
numerical control device 1. Each of a plurality of blocks
illustrated in FIG. 5 represents a job. The types of the
illustrated jobs can be distinguished by the types of
5 textures that fill the blocks. The post-change transition
diagram display unit 113 may display an operating portion
for determining whether or not to confirm the change,
together with the post-change transition diagram as
illustrated in FIG. 5. The user checks the post-change
10 transition diagram, determines whether or not issues such
as processing time and processing load can be resolved, and
performs an input operation of determining whether or not
to confirm the change.
[0045] Reference is made back to FIG. 2. The input
15 acceptance unit 12 determines whether or not to confirm the
change on the basis of accepted input information (step
S110). “To confirm the change” means that, of the options
of how to change the assignment state generated in step
S105, the option selected in step S107 is applied to the
20 job selected in step S104.
[0046] If the change is not confirmed (step S110: No),
the input acceptance unit 12 outputs the input information
to the transition diagram generation unit 13 and causes the
transition diagram display unit 111 to repeat the
25 processing in step S103. At this time, the input
acceptance unit 12 may operate so that the processing is
repeated from step S106. In this case, the user can start
over from the selection of an option instead of the
selection of a job.
30 [0047] If the change is confirmed (step S110: Yes), the
input acceptance unit 12 adds the option selected in step
S107 to a confirmed option (step S111). The input
acceptance unit 12 instructs the post-change transition
21
diagram generation unit 15 to display a screen for
accepting an input operation of determining whether or not
to complete the option selection. When the user performs
an input operation on the displayed screen, the input
5 acceptance unit 12 determines, on the basis of the accepted
input information, whether or not to complete the option
selection (step S112).
[0048] If the option selection is not completed (step
S112: No), the input acceptance unit 12 outputs the input
10 information to the post-change transition diagram
estimation unit 15, and the processing is repeated from
step S103. If the processing is repeated from step S103
after the change is confirmed, the post-change transition
diagram that reflects the application of the option
15 selected in step S107 is displayed in step S103, and it is
determined in step S104 whether or not there is a selection
of a job displayed in the post-change transition diagram.
That is, if the processing is repeated from step S103 after
the change is confirmed, the post-change transition diagram
20 display unit 113 displays the transition diagram in step
S103.
[0049] If the option selection is completed (step S112:
Yes), the input acceptance unit 12 outputs, to the change
information output unit 16, information indicating the
25 confirmed option(s). The change information output unit 16
outputs, to the change information storage unit 17, change
information for the numerical control processing execution
unit 18 to change the assignment state of the jobs in
accordance with the confirmed option(s) (step S113). The
30 numerical control processing execution unit 18 operates on
the basis of the change information stored in the change
information storage unit 17 to thereby change the state of
job assignment to the operation units.
22
[0050] Two or more options of how to change the job
assignment state may exist for a single job. Thus, the
processing performance of the numerical control device 1
varies depending on a combination of options individually
5 applied to each of two or more jobs. Depending on a
combination of options applied, the processing performance
may be rather degraded. For this reason, the operation
illustrated in FIG. 5 allows the user to select a
combination of options to be applied from the generated
10 options by trial and error, watching the estimated
transition diagram.
[0051] FIG. 6 is a flowchart for explaining details of
step S108 in FIG. 2. In step S108 in FIG. 2, to estimate a
post-change transition diagram, the post-change transition
15 diagram estimation unit 15 is required to estimate the
times of occurrence of events related to the execution of
the target job, such as a “start event” and an “exit event”.
Thus, the post-change transition diagram estimation unit 15
estimates times of occurrence of events after the change of
20 the assignment state of the target job, on the basis of
times of occurrence of events before the change of the
assignment state of the target job, on the basis of the log
data.
[0052] First, the post-change transition diagram
25 estimation unit 15 starts searching for an event log
included in the log data from the top (step S11). When
finding an event log, the post-change transition diagram
estimation unit 15 determines whether or not the event
indicated by the found event log is an event of the target
30 job (step S12). If the event is an event of the target job
(step S12: Yes), the post-change transition diagram
estimation unit 15 determines whether or not the event
indicated by the found event log is the first “start event”
23
(step S13).
[0053] If the event is not an event of the target job
(step S12: No), and if the event is not the first “start
event” (step S13: No), the post-change transition diagram
5 estimation unit 15 proceeds to searching for the next event
log (step S14) and repeats the processing from step S12.
[0054] If the event is the first “start event” (step
S13: Yes), the post-change transition diagram estimation
unit 15 estimates, on the basis of the time of occurrence
10 of the found event log, the time of occurrence of the
“start event” of the target job after the application of
the change (step S15).
[0055] The post-change transition diagram estimation
unit 15 proceeds to searching for the next event log (step
15 S21). When finding an event log, the post-change
transition diagram estimation unit 15 determines whether or
not the event indicated by the found event log is an event
of the target job (step S22). If the event is not an event
of the target job (step S22: No), the post-change
20 transition diagram estimation unit 15 repeats the
processing in step S21.
[0056] If the event is an event of the target job (step
S22: Yes), the post-change transition diagram estimation
unit 15 determines whether or not the event indicated by
25 the found event log is an “exit event” (step S23). If the
event is not an “exit event” (step S23: No), the postchange transition diagram estimation unit 15 estimates the
time of occurrence of the event of the target job after the
application of the change (step S24), and returns to the
30 processing in step S21.
[0057] If the event is an “exit event” (step S23: Yes),
the post-change transition diagram estimation unit 15
estimates the time of occurrence of the “exit event” after
24
the application of the change (step S25).
[0058] The post-change transition diagram estimation
unit 15 searches for an event log in the range from step
S21 to step S25 (step S31). The post-change transition
5 diagram estimation unit 15 determines whether or not the
search for an event log in the search range has been
finished (step S32). If the search in the search range has
not been finished (step S32: No), the post-change
transition diagram estimation unit 15 determines whether or
10 not an event indicated by a target event log is influenced
by an event that has been changed so far (step S33). A
criterion for determining the presence or absence of an
influence is determined in advance. For example, if the
time of occurrence of a “release event” relative to the
15 target job is changed, the post-change transition diagram
estimation unit 15 determines that there is an influence.
Furthermore, if the assignment of a job having a higher
priority than the target job is changed and such a job
having the higher priority is executed by the same
20 operation unit as the target job, the post-change
transition diagram estimation unit 15 determines that there
is an influence. If the time in the interval between the
“start event” and the “exit event” of the target job
overlaps the interval between a “start event” and an “exit
25 event” of another job, the post-change transition diagram
estimation unit 15 determines that there is an influence.
[0059] If there is an influence (step S33: Yes), the
post-change transition diagram estimation unit 15 estimates
the time of occurrence of the event after the application
30 of the change (step S34), proceeds to searching for the
next event log (step S35), and returns to the processing in
step S32. When there is no influence (step S33: No), the
post-change transition diagram estimation unit 15 skips the
25
processing in step S34 and proceeds to the processing in
step S35.
[0060] When the search in the search range has been
finished (step S32: Yes), the post-change transition
5 diagram estimation unit 15 repeats the processing in steps
S11 to S35 on all jobs including events determined to be
influenced (step S41).
[0061] The post-change transition diagram estimation
unit 15 determines whether or not searching through the log
10 data for the last event has been finished (step S42). If
the searching through the log data for the last event has
been finished (step S42: Yes), the post-change transition
diagram estimation unit 15 finishes the processing. If the
searching through the log data for the last event has not
15 been finished (step S42: No), the post-change transition
diagram estimation unit 15 repeats the processing from step
S11. However, when returning from step S42 to step S11,
the post-change transition diagram estimation unit 15
executes the processing in step S11 not from the top of the
20 event log but from the first event determined to be
influenced.
[0062] As described above, the post-change transition
diagram estimation unit 15 performs the processing in steps
S11 to S15 to thereby search for an event log of the
25 selected target job from the top of the log data, and
estimate, on the basis of the occurrence time of the first
“start event”, the time of occurrence of a “start event”
after the application of the change. An example of the
method of estimating a time of occurrence of an event is a
30 method of estimating the time on the basis of the time of
occurrence of a “relase event” relative to the target job
immediately before the “start event” of current interest,
among “release events” relative to the target job. The
26
post-change transition diagram estimation unit 15 performs
the processing in steps S21 to S25 to thereby estimate
times of occurrence of all events after the application of
the change, using the above-described event occurrence time
5 estimation method, the all-events following the “start
event” of interest and including an “exit event”
immediately after the “start event” of interest, among
events of the selected target job. Further, the postchange transition diagram estimation unit 15 performs the
10 processing in steps S31 to S35 to thereby determine the
presence or absence of an influence of an event changed by
a previous estimation for all events of other jobs that
have occurred in the interval between the “start event” and
the “exit event” of current interest of the selected target
15 job, and estimate a time of occurrence of the event
determined to be influenced. The post-change transition
diagram estimation unit 15 performs the processing in steps
S41 and S42 to thereby repeat the processing in steps S11
to S35 for each job including an event determined to be
20 influenced in the processing in steps S31 to S35 until the
last event included in the log data is reached.
[0063] In the above description, the post-change
transition diagram estimation unit 15 estimates, on the
basis of the time of occurrence of the event before the
25 change of the assignment state, a time of occurrence of the
event after the assignment change. However, if operation
units before and after the assignment change differ in
performance, the post-change transition diagram estimation
unit 15 may consider the difference in performance and then
30 grasp the time required for the execution of the job and
estimate the time of occurrence of the event.
[0064] As described above, the control device 10A
according to the first embodiment displays a transition
27
diagram showing, in time series, the execution state of
jobs in each of the plurality of operation units of the
numerical control device 1, and generates, on the basis of
the constraints imposed on the software, options of how to
5 change the assignment state of the jobs displayed in the
transition diagram. Then, input information indicating an
option selected from the generated options is accepted, and
change information for changing the assignment state of the
jobs in accordance with the option indicated by the input
10 information is output. This allows even a person having no
expert knowledge of parallel programming to easily adjust
the state of job assignment to the operation units while
checking the state.
[0065] For example, the user of the numerical control
15 device 1 such as a typical software developer, a service
person who performs product maintenance and maintenance
service, or a machine manufacturer that purchases the
numerical control device 1 and ships a machine tool
incorporating the numerical control device 1 does not
20 necessarily have expert knowledge of parallel programming.
Even such a user can perform appropriate adjustment since
options displayed by the control device 10A are narrowed
down to those that do not violate the constraints imposed
on the software.
25 [0066] The control device 10A can display a transition
diagram showing, in time series, the execution state of
jobs assigned to the operation units, generate an option of
how to change the assignment state of a job selected from
the jobs displayed in the transition diagram, estimate the
30 execution state of the jobs after changing the assignment
state in accordance with an option selected from generated
options, and display a post-change transition diagram.
With this configuration, the user of the numerical control
28
device 1 can adjust the assignment state while checking the
assignment state of the jobs when a change method indicated
by the option is applied.
[0067] Machine tools to be controlled by the numerical
5 control device 1 have a variety of sizes and types of the
machine tools themselves, and are also used in different
environments by different users. Thus, performance and
functions required of the numerical control device 1 vary
widely. The numerical control device 1 is required to have
10 a wide variety of functions to meet this requirement.
[0068] For example, a combined processing machine is an
example of a machine tool having a large and complicated
structure. A combined processing machine has a plurality
of main shafts, and can simultaneously execute a plurality
15 of machining programs in parallel, transferring a workpiece
while synchronizing the machining programs or
simultaneously processing two or more workpieces. In such
a combined processing machine, a large number of shafts for
moving tools and workpieces move around in a work tank
20 complexly. Thus, a function called interference check is
required to prevent mutual interference. In such a
function, a job for determining the paths of the shafts
increases processing time.
[0069] A small machine tool with, for example, only one
25 main shaft and about three or four drive shafts for
changing the relative position between the main shaft and a
workpiece is not required of a function called interference
check unlike a combined processing machine, and instead is
required of a function to analyze as many machining
30 programs as possible in a short time to smooth a tool path.
In such a small machine tool, a job for analyzing machining
programs increases processing time.
[0070] As described above, functions and performance
29
required of the numerical control device 1 differ depending
on the types of machine tools to be controlled by the
numerical control device 1. Furthermore, functions and
performance required of the numerical control device 1
5 differ depending on use environments such as what products
users process using these machine tools and for what
purposes the users perform production activities. For
example, a user who receives a request and prototypes a
one-of-a-kind product and a user who mass-produces a part
10 to be used in a mass-produced product require completely
different functions and performance of the numerical
control device 1.
[0071] As described above, it is difficult to determine
the assignment state of jobs of the numerical control
15 device 1 including the plurality of operation units such
that the determined assignment state is optimal for all
users in advance. By using the control device 10A, the
user can easily adjust the assignment state of jobs in
accordance with the user’s use environment, and hence can
20 fully exploit the original performance of the numerical
control device 1.
[0072] Second Embodiment.
FIG. 7 is a diagram illustrating a functional
configuration of a control device 10B according to a second
25 embodiment. The control device 10B has the same functions
as the control device 10A according to the first embodiment
except that the control device 10B is a device separate
from the numerical control device 1. Thus, common matters
will not be described in detail.
30 [0073] The control device 10B includes the display unit
11, the input acceptance unit 12, the transition diagram
generation unit 13, the option generation unit 14, the
post-change transition diagram estimation unit 15, and the
30
change information output unit 16. The display unit 11
includes the transition diagram display unit 111, the
option display unit 112, and the post-change transition
diagram display unit 113.
5 [0074] The numerical control device 1 is a device
separate from the control device 10B. The change
information storage unit 17 and the log data storage unit
19 are storage areas on a computer, a hard disk, or the
like that can be accessed by the numerical control device 1
10 via a network. The change information storage unit 17 may
be a storage area included in the numerical control device
1. Likewise, the log data storage unit 19 may be a storage
area included in the numerical control device 1.
[0075] The operation of the control device 10B is the
15 same as the operation of the control device 10A described
with reference to FIG. 2 except for the following points.
The control device 10B can acquire log data from the log
data storage unit 19 via a network. A portable storage
medium such as an SD card or a universal serial bus (USB)
20 memory storing log data may be connected to the control
device 10B so that the control device 10B can acquire the
log data.
[0076] When the control device 10B is connected to the
change information storage unit 17 outside the control
25 device 10B, the change information output unit 16 may
output change information to the change information storage
unit 17, or may output change information to a storage area
on a device such as a computer constituting the control
device 10B.
30 [0077] As described above, like the control device 10A
according to the first embodiment, the control device 10B
according to the second embodiment allows even a person
having no expert knowledge of parallel programming to
31
easily adjust the state of job assignment to the operation
units while checking the state.
[0078] The control device 10B is a device separate from
the numerical control device 1. This has an advantage that
5 the numerical control device 1 is not affected by a
processing load for performing processing that changes the
job assignment state. For example, some machine tools
including the numerical control device 1 are incorporated
in an automation line and thus cannot easily stop an
10 operating state. In such a case, taking into consideration
the effect on a product being processed, it is desirable to
avoid causing the numerical control device 1 to execute
processing other than the numerical control processing.
The control device 10B allows the numerical control device
15 1 to perform only log data acquisition processing because
the other processing can be performed in the control device
10B separate from the numerical control device 1, allowing
the adjustment of the job assignment state while preventing
the performance of the numerical control device 1 from
20 being affected.
[0079] Third Embodiment.
FIG. 8 is a diagram illustrating a configuration of
the numerical control device 1 including a control device
10C according to a third embodiment. The numerical control
25 device 1 includes the control device 10C, the change
information storage unit 17, the numerical control
processing execution unit 18, and the log data storage unit
19. The control device 10C includes the display unit 11,
the input acceptance unit 12, the transition diagram
30 generation unit 13, the option generation unit 14, the
post-change transition diagram estimation unit 15, the
change information output unit 16, and an abstraction unit
20. The display unit 11 includes the transition diagram
32
display unit 111, the option display unit 112, and the
post-change transition diagram display unit 113. The
abstraction unit 20 includes a transition diagram
abstraction unit 201, an option abstraction unit 202, and a
5 post-change transition diagram abstraction unit 203.
[0080] The control device 10C includes the abstraction
unit 20 in addition to the configuration of the control
device 10A or 10B. The abstraction unit 20 has a function
of changing, on the basis of identification information
10 indicating a user attribute, the abstraction level of the
displayed contents of the display screen generated by the
display unit 11. The identification information is
information for determining up to what degree of importance
of information of internal information of the numerical
15 control device 1 should be made accessible. The
identification information is represented by, for example,
a numerical value called a user level. The user level of a
user who is permitted to access all the internal
information, such as a developer of a manufacturer
20 manufacturing the numerical control device 1, can be set to
the highest value “4”. The user level of a user who is
permitted to access the information except for some pieces
of information with a high degree of importance, such as a
person in charge of maintenance and service of a
25 manufacturer manufacturing the numerical control device 1,
to “3”. The user level of a user who is permitted to
access limited information, such as a development person, a
maintenance person, or a service person of a machine tool
manufacturer that purchases the numerical control device 1
30 and combines the numerical control device 1 with a machine
tool for shipment, can be set to “2”. The user level of a
user who is permitted to access only a small part of the
information, such as an end user who purchases and uses a
33
machine tool, to “1”.
[0081] Important internal information is trade secrets
owned by each of the manufacturer of the numerical control
device 1 and the manufacturer of a machine tool. Providing
5 access limitations on the internal information using the
abstraction unit 20 can protect the trade secrets of each
manufacturer and prevent a user having insufficient
knowledge from making an inadvertent change to the
numerical control device 1 or the machine tool, causing
10 execution of an unintended operation.
[0082] Each of the transition diagram abstraction unit
201, the option abstraction unit 202, and the post-change
transition diagram abstraction unit 203 performs
abstraction processing on the basis of the identification
15 information, thereby achieving access limitations on the
internal information. Specifically, the transition diagram
abstraction unit 201 acquires drawing data on a transition
diagram generated by the transition diagram display unit
111, performs the abstraction processing on the basis of
20 the user’s identification information, and outputs the
processed drawing data to the transition diagram display
unit 111. The option abstraction unit 202 acquires drawing
data on an option generated by the option display unit 112,
performs the abstraction processing on the basis of the
25 user’s identification information, and outputs the
processed drawing data to the option display unit 112. The
post-change transition diagram abstraction unit 203
acquires drawing data on a post-change transition diagram
from the post-change transition diagram display unit 113,
30 performs the abstraction processing on the basis of the
user’s identification information, and outputs the
processed drawing data to the post-change transition
diagram display unit 113.
34
[0083] The method by which the abstraction unit 20 of
the control device 10C acquires the identification
information is not particularly limited. For example,
different passwords for the numerical control device 1 are
5 set for different user levels. When a user enters a
password, using an input device provided in advance to the
numerical control device 1, the input acceptance unit 12
can provide different pieces of identification information
for different types of passwords and notify the abstraction
10 unit 20 of these pieces of identification information.
[0084] FIG. 9 is a flowchart for explaining the
operation of the control device 10C illustrated in FIG. 8.
The operation illustrated in FIG. 9 is partly the same as
the operation of the control device 10A described with
15 reference to FIG. 2. Thus, the same operation is denoted
by the same reference numeral to omit the detailed
description thereof here. The following mainly describes
differences from FIG. 2.
[0085] When the transition diagram generation unit 13
20 generates a transition diagram in step S102 and the
transition diagram display unit 111 generates drawing data
on the transition diagram, the transition diagram
abstraction unit 201 acquires the drawing data on the
transition diagram from the transition diagram display unit
25 111 and performs the abstraction processing on the
transition diagram (step S201). There can be various
methods for abstracting the displayed contents of the
transition diagram. For example, specific job names are
internal information on the software, and thus the
30 transition diagram abstraction unit 201 may abstract or
hide job names included in the transition diagram. For
example, in the case of users of user levels of “4” and “3”,
the job names may be displayed as they are. In the case of
35
users of user levels of “2” and “1”, the job names may be
represented by the job functions such as a “job of
analyzing machining programs”. As another example of the
method of abstracting the displayed contents of the
5 transition diagram, information on each job may be hidden,
and the proportion of processing execution time per given
period of time may be illustrated in time series for each
operation unit.
[0086] FIG. 10 is a diagram illustrating an example of
10 the transition diagram abstracted in step S201 in FIG. 9.
In the transition diagram illustrated in FIG. 10,
information on each job is hidden, and the proportion of
processing execution time per given period of time is
illustrated in time series for each operation unit. The
15 transition diagram showing the assignment state of each job
can be a clue to estimate how the numerical control
processing is performed, and thus may be information to be
concealed from users other than the manufacturer
manufacturing the numerical control device 1. In such a
20 case, when users have user levels of “2” and “1”, the
transition diagram abstraction unit 201 can abstract the
transition diagram to the extent that the users can
understand the time-series tendency of the amount of
processing load on each operation unit. The horizontal
25 axis in FIG. 10 is a time axis. Core0, core1, core2, and
core3 in FIG. 10 indicate the plurality of operation units
of the numerical control device 1. The vertical axis in
FIG. 10 indicates the amount of processing load for each
operation unit. The user looking at the transition diagram
30 after the abstraction processing has been performed cannot
know which job is executed by which operation unit, but can
determine in which operation unit the processing load is
concentrated.
36
[0087] Reference is made back to FIG. 9. When the
option generation unit 14 generates an option in step S105,
and the option display unit 112 generates drawing data on
the option, the option abstraction unit 202 acquires the
5 drawing data on the option from the option display unit 112
and performs the abstraction processing on the option (step
S202). There can be various methods for abstracting the
displayed contents of the option. For example, as in the
abstraction of the transition diagram, the job name may be
10 abstracted or hidden. If the transition diagram
illustrates the proportion of processing execution time per
given period of time in time series for each operation unit
as illustrated in FIG. 10, the option abstraction unit 202
may present only information such as how to distribute the
15 processing performed by which operation unit to the other
operation units without clearly indicating which job’s
assignment state should be changed, in displaying a
changeable option for each operation unit.
[0088] FIG. 11 is a diagram illustrating an example of
20 options abstracted in step S202 in FIG. 9. In the options
illustrated in FIG. 11, information on each job is hidden.
FIG. 11 illustrates, for each operation unit, the
proportion of the load of processing on the target job and
operation units to which the target job is distributed.
25 For example, by looking at the abstracted options
illustrated in FIG. 11, the user can know that there is an
option of distributing a job currently occupying 50% of the
load of processing in the operation unit indicated by
“core1”, to all the operation units. Further, by looking
30 at the abstracted options illustrated in FIG. 11, the user
can know that there is an option of moving a job currently
occupying 15% of the load of processing in the operation
unit indicated by “core1”, to a specific operation unit
37
indicated by “core2” or “core3”.
[0089] Reference is made back to FIG. 9. When the postchange transition diagram estimation unit 15 estimates a
post-change transition diagram in step S108, and the post5 change transition diagram display unit 113 generates
drawing data on the post-change transition diagram, the
post-change transition diagram abstraction unit 203
acquires the drawing data on the post-change transition
diagram from the post-change transition diagram display
10 unit 113 and performs the abstraction processing on the
post-change transition diagram (step S203). The method of
abstracting the post-change transition diagram is the same
as the method of abstracting the transition diagram by the
transition diagram abstraction unit 201.
15 [0090] FIG. 12 is a diagram illustrating an example of
the post-change transition diagram abstracted in step S203
in FIG. 9. The horizontal axis in FIG. 12 is a time axis.
Core0, core1, core2, and core3 in FIG. 12 indicate the
plurality of operation units of the numerical control
20 device 1. The vertical axis in FIG. 12 indicates the
amount of processing load for each operation unit. The
user looking at the post-change transition diagram after
the abstraction processing has been performed cannot know
which job is executed by which operation unit, but can
25 determine in which operation unit the processing load is
concentrated.
[0091] The above description is made as to an example in
which the abstraction unit 20 changes the abstraction level
of the displayed contents in two levels for users of user
30 levels of “4” and “3” and users of “2” and “1”, but the
abstraction level of the display contents may be changed in
four levels for the corresponding user level values.
Although the identification information indicating user
38
attributes are represented by four user levels in the above
description, the identification information may be
represented by two or three levels or may be represented by
five or more levels.
5 [0092] As described above, like the control devices 10A
and 10B according to the first and second embodiments, the
control device 10C according to the third embodiment allows
even a person having no expert knowledge of parallel
programming to easily adjust the state of job assignment to
10 the operation units while checking the state.
[0093] Further, the control device 10C has the function
of changing, on the basis of the identification information
indicating the user attribute, the abstraction level of the
displayed contents of the display screen generated by the
15 display unit 11. This allows abstraction of a transition
diagram, an option, and a post-change transition diagram in
accordance with the user attribute, thereby appropriately
limiting the disclosure range and the access range of the
internal information.
20 [0094] By using the control device 10C, a manufacturer
of the numerical control device 1 and a manufacturer of a
machine tool to be controlled by the numerical control
device 1 can select information to be limited in access for
each user and thus protect their trade secrets.
25 [0095] Furthermore, providing access limitations on the
internal information, using the abstraction unit 20 can
prevent a user having insufficient knowledge from making an
inadvertent change to the numerical control device 1 or the
machine tool, causing execution of an unintended operation.
30 [0096] Fourth Embodiment.
FIG. 13 is a diagram illustrating a configuration of a
control device 10D according to a fourth embodiment. The
control device 10D has the same functions as the control
39
device 10C according to the third embodiment except that
the control device 10D is a device separate from the
numerical control device 1. Thus, common matters will not
be described in detail.
5 [0097] The control device 10D includes the display unit
11, the input acceptance unit 12, the transition diagram
generation unit 13, the option generation unit 14, the
post-change transition diagram estimation unit 15, the
change information output unit 16, and the abstraction unit
10 20. The display unit 11 includes the transition diagram
display unit 111, the option display unit 112, and the
post-change transition diagram display unit 113. The
abstraction unit 20 includes the transition diagram
abstraction unit 201, the option abstraction unit 202, and
15 the post-change transition diagram abstraction unit 203.
[0098] The numerical control device 1 is a device
separate from the control device 10D. The change
information storage unit 17 and the log data storage unit
19 are storage areas on a computer, a hard disk, or the
20 like that can be accessed by the numerical control device 1
via a network. The change information storage unit 17 may
be a storage area included in the numerical control device
1. Likewise, the log data storage unit 19 may be a storage
area included in the numerical control device 1.
25 [0099] The operation of the control device 10D is the
same as the operation of the control device 10C described
with reference to FIG. 9 except for the following points.
The control device 10D can acquire log data from the log
data storage unit 19 via a network. A portable storage
30 medium such as an SD card or a USB memory storing log data
may be connected to the control device 10D so that the
control device 10D can acquire the log data.
[0100] When the control device 10D is connected to the
40
change information storage unit 17 outside the control
device 10D, the change information output unit 16 may
output change information to the change information storage
unit 17, or may output change information to a storage area
5 on a device such as a computer constituting the control
device 10D.
[0101] As described above, like the control devices 10A
to 10C according to the first to third embodiments, the
control device 10D according to the fourth embodiment
10 allows even a person having no expert knowledge of parallel
programming to easily adjust the state of job assignment to
the operation units while checking the state.
[0102] The control device 10D is a device separate from
the numerical control device 1. Thus, like the control
15 device 10B, the control device 10D has an advantage that
the numerical control device 1 is not affected by a
processing load for performing processing that changes the
job assignment state. For example, some machine tools
including the numerical control device 1 are incorporated
20 in an automation line and thus cannot easily stop an
operating state. In such a case, taking into consideration
the effect on a product being processed, it is desirable to
avoid causing the numerical control device 1 to execute
processing other than the numerical control processing.
25 The control device 10D allows the numerical control device
1 to perform only log data acquisition processing because
the other processing can be performed in the control device
10D separate from the numerical control device 1, allowing
the adjustment of the job assignment state while preventing
30 the performance of the numerical control device 1 from
being affected.
[0103] The control device 10D includes the abstraction
unit 20. Thus, like the control device 10C, the control
41
device 10D allows abstraction of a transition diagram, an
option, and a post-change transition diagram in accordance
with the user attribute, thereby appropriately limiting the
disclosure range and the access range of the internal
5 information. Further, the control device 10D can protect
trade secrets, and can prevent a user having insufficient
knowledge from making an inadvertent change to the
numerical control device 1 or the machine tool, causing
execution of an unintended operation.
10 [0104] Fifth Embodiment.
FIG. 14 is a diagram illustrating a configuration of
the numerical control device 1 including a control device
10E according to a fifth embodiment. The numerical control
device 1 includes the control device 10E, the change
15 information storage unit 17, the numerical control
processing execution unit 18, and the log data storage unit
19.
[0105] The control device 10E includes the display unit
11, the input acceptance unit 12, the transition diagram
20 generation unit 13, the option generation unit 14, the
post-change transition diagram estimation unit 15, the
change information output unit 16, the abstraction unit 20,
and a machine learning device 30. The display unit 11
includes the transition diagram display unit 111 and the
25 post-change transition diagram display unit 113. The
abstraction unit 20 includes the transition diagram
abstraction unit 201 and the post-change transition diagram
abstraction unit 203. The control device 10E is different
from the control device 10C in that the control device 10C
30 is configured to display options on the display screen to
obtain input information indicating an option selected by
the user from the generated options, whereas the control
device 10E includes the machine learning device 30, and the
42
machine learning device 30 has a function of selecting,
from generated options, an option to be applied. The
following mainly describes differences from the control
device 10C and does not describe common points in detail.
5 [0106] The transition diagram generation unit 13 outputs
event logs of each job that are sources of a generated
transition diagram to the machine learning device 30, in
addition to performing the same operation as that in the
third embodiment.
10 [0107] The option generation unit 14 generates options
by the same operation as that in the third embodiment, and
outputs the generated options to the machine learning
device 30.
[0108] The post-change transition diagram estimation
15 unit 15 estimates a post-change transition diagram and then
outputs, to the machine learning device 30, estimated data
on the event logs of each job that are sources of the
estimated post-change transition diagram, in addition to
performing the same operation as that in the third
20 embodiment.
[0109] The machine learning device 30 learns the postchange assignment state of the jobs on the basis of input
information indicating a selected option and the assignment
states of the jobs indicated by the event logs in the
25 transition diagram and the post-change transition diagram.
The machine learning device 30 selects, from the options
generated by the option generation unit 14, an option to be
applied, and generates input information indicating the
selected option for output to the input acceptance unit 12.
30 The input acceptance unit 12 outputs the input information
indicating the selected option to each of the post-change
transition diagram estimation unit 15 and the change
information output unit 16. In this case, the post-change
43
transition diagram estimation unit 15 estimates a postchange transition diagram illustrating the assignment state
of the jobs according to the learning results, and the
post-change transition diagram display unit 113 displays
5 the post-change transition diagram illustrating the
assignment state of the jobs according to the learning
results. At this time, the change information output unit
16 outputs change information for achieving the assignment
state of the jobs according to the learning results.
10 [0110] FIG. 15 is a diagram illustrating a functional
configuration of the machine learning device 30 illustrated
in FIG. 14. The machine learning device 30 includes a
state observation unit 31 and a learning unit 32. The
learning unit 32 includes a reward calculation unit 33, a
15 function update unit 34, and an action selection unit 35.
[0111] The state observation unit 31 observes, as state
variables, information indicating the past execution state
of jobs in each of the plurality of operation units of the
numerical control device 1 and the execution state of the
20 jobs estimated when the assignment state of the jobs is
changed in accordance with change information.
Specifically, the state observation unit 31 acquires, from
the transition diagram generation unit 13, event logs that
are sources of a transition diagram, acquires, from the
25 post-change transition diagram estimation unit 15,
estimated data on the event logs that are sources of a
post-change transition diagram, and observes the acquired
event logs as state variables.
[0112] The learning unit 32 learns an optimal system
30 configuration, specifically, a state of job assignment to
the plurality of operation units, in accordance with a data
set created on the basis of the state variables.
[0113] The learning unit 32 may use any learning
44
algorithm. A description will be made as to, by way of
example, the learning unit 32 using reinforcement learning.
In reinforcement learning, a subject performing an action
in a certain environment observes the current state and
5 determines an action to take. The subject performing an
action is called an agent. The agent obtains a reward from
the environment by selecting an action, and learns a policy
that obtains the most reward through a series of actions.
Q-learning, TD-learning, and the like are known as typical
10 methods of reinforcement learning. In the case of, for
example, Q-Learning, an action-value table that is a
typical update equation of the action-value function Q(s,
a) is expressed by the following numerical formula (1).
[0114] [Formula 1]
15
...(1)
[0115] In numerical formula (1), st represents an
environment at a time t, and at represents an action at the
time t. The action at changes the environment to st+1.
20 Specifically, in the present embodiment, the environment
“s” is the execution state of the jobs, and the action “a”
is a selected option. rt+1 represents a reward obtained due
to the environmental change, γ represents a discount factor,
and α represents a learning rate. γ is larger than 0 and
25 takes a value of 1 or less. α is larger than 0 and takes a
value of 1 or less. When Q-Learning is applied, an optimal
system configuration is the action at.
[0116] In the case of the update equation represented by
numerical formula (1), if the action value Q of the best
30 action “a” at the time t+1 is larger than the action value
Q of the action a performed at the time t, the action value
45
Q is increased. In the opposite case, the action value Q
is reduced. In other words, the action-value function Q(s,
a) is updated such that the action value Q of the action
“a” at the time t approaches the best action value at the
5 time t+1. Consequently, the best action value in a certain
environment is sequentially propagated to action values in
previous environments.
[0117] The reward calculation unit 33 calculates a
reward on the basis of the state variables. The reward
10 calculation unit 33 calculates the reward r on the basis of
the processing time required to complete jobs that should
be executed within a certain period and the utilization
efficiency of the plurality of operation units at that time.
For example, if the time of completion of jobs that should
15 be executed within a certain period is moved up, and if
imbalances in processing load among the plurality of
operation units are reduced, the reward calculation unit 33
increases the reward r. The method of increasing the
reward r is not particularly limited. For example, “1” may
20 be added to the reward r. If the time of completion of
jobs that should be executed within a certain period is
extended, and if imbalances in processing load among the
plurality of operation units are increased, the reward
calculation unit 33 reduces the reward r. The method of
25 reducing the reward r is not particularly limited. For
example, “1” may be subtracted from the reward r. The
processing time required to complete jobs that should be
executed within a certain period and the utilization
efficiency of the plurality of operation units at that time
30 are extracted in accordance with known methods. For
example, the reward calculation unit 33 may acquire, from
log data, the times of completion of jobs that should be
executed within a certain period, and average these times
46
to thereby calculate the processing time. Further, the
reward calculation unit 33 may take the sums of the times
during which the plurality of operation units is executing
jobs and the times during which the plurality of operation
5 units is not executing jobs, within the log data
acquisition time, to thereby calculate the utilization
efficiency of the plurality of operation units.
[0118] The function update unit 34 updates a function
for determining an optimal system configuration in
10 accordance with a reward calculated by the reward
calculation unit 33. For example, in Q-learning, the
action-value function Q(st, at) expressed by numerical
formula (1) is used as the function for calculating an
optimal system configuration. The function update unit 34
15 can output the updated action-value function Q(st, at) to
the action selection unit 35.
[0119] The action selection unit 35 selects an action
“a” on the basis of the action-value function Q(st, at)
output by the function update unit 34. Specifically, the
20 action selection unit 35 selects, from options generated by
the option generation unit 14, an option to be applied,
generates input information indicating the selected option,
and outputs the generated input information to the input
acceptance unit 12. The method through which the action
25 selection unit 35 selects an action “a” at this time is not
particularly limited. For example, the action selection
unit 35 may use a greedy method to select an action “a’”
with the highest action-value function Q(st, at), or may
use an ε-greedy method to randomly select actions a’ with a
30 probability ε and select an action “a’” with the highest
action-value function Q(st, at) with a probability (1-ε).
[0120] When accepting the input information from the
action selection unit 35, the input acceptance unit 12
47
outputs the input information to the post-change transition
diagram estimation unit 15. The post-change transition
diagram estimation unit 15 estimates a post-change
transition diagram on the basis of the option selected by
5 the action selection unit 35, and outputs estimated data on
the event logs that are sources of the estimated transition
diagram to the state observation unit 31. When an optimal
action “a” is confirmed, the action selection unit 35
outputs the confirmed action “a” to the input acceptance
10 unit 12. The input acceptance unit 12 instruct the change
information output unit 16 to output the results as change
information.
[0121] While the machine learning is repeated, the
machine learning device 30 is not required to display
15 transition diagrams in progress using the display unit 11.
The above description is based on the assumption that,
after the selection of an optimal action “a” is confirmed,
the input acceptance unit 12 automatically outputs the
confirmed action a. However, using the post-change
20 transition diagram estimation unit 15 and the post-change
transition diagram display unit 113, the machine learning
device 30 may display a transition diagram when an option
indicated by the confirmed action “a” is applied. In this
case, the post-change transition diagram display unit 113
25 may display an operating portion for determining whether or
not to confirm the change, together with the post-change
transition diagram, and the user may operate the operating
portion to thereby confirm the change. In this case, when
detecting the operation of the user on the operating
30 portion, the input acceptance unit 12 provides the change
information output unit 16 with the output for confirming
the change.
[0122] Although the learning algorithm used by the
48
learning unit 32 is reinforcement learning in the present
embodiment, the present embodiment is not limited to this
example. Other than reinforcement learning, the learning
unit 32 may use a learning algorithm such as supervised
5 learning, unsupervised learning, or semi-supervised
learning. Furthermore, the learning unit 32 may use deep
learning to learn extraction of features themselves, or may
use another known method such as a neural network, genetic
programming, functional logic programming, or a support
10 vector machine.
[0123] As described above, like the control devices 10A
to 10D according to the first to fourth embodiments, the
control device 10E according to the fifth embodiment allows
even a person having no expert knowledge of parallel
15 programming to easily adjust the state of job assignment to
the operation units while checking the state.
[0124] The control device 10E includes the abstraction
unit 20. Thus, like the control devices 10C and 10D, the
control device 10E allows abstraction of a transition
20 diagram, an option, and a post-change transition diagram in
accordance with the user attribute, thereby appropriately
limiting the disclosure range and the access range of
internal information. Furthermore, the control device 10E
can protect trade secrets and can prevent a user having
25 insufficient knowledge from making an inadvertent change to
the numerical control device 1 or a machine tool, causing
execution of an unintended operation.
[0125] Further, the machine learning device 30 of the
control device 10E has the function of selecting, from
30 options generated by the option generation unit 14, an
option to be applied, on the basis of the results of
learning the assignment state of jobs. This allows the
user to select an option to be applied and adjust the job
49
assignment state without trial and error.
[0126] Note that the control device 10E includes the
abstraction unit 20, but the abstraction unit 20 may be
omitted. The machine learning device 30 is incorporated in
5 the control device 10E of the numerical control device 1,
but may be a device separate from the numerical control
device 1. In this case, the machine learning device 30 and
the numerical control device 1 are connected to each other
via a network.
10 [0127] Sixth Embodiment.
FIG. 16 is a diagram illustrating a configuration of a
control device 10F according to a sixth embodiment. The
control device 10F has the same functions as the control
device 10E according to the fifth embodiment except that
15 the control device 10F is a device separate from the
numerical control device 1. Thus, common matters will not
be described in detail.
[0128] The control device 10F has the same functions as
the control device 10E except that the control device 10F
20 is a device separate from the numerical control device 1.
The control device 10F includes the display unit 11, the
input acceptance unit 12, the transition diagram generation
unit 13, the option generation unit 14, the post-change
transition diagram estimation unit 15, the change
25 information output unit 16, the abstraction unit 20, and
the machine learning device 30. The display unit 11
includes the transition diagram display unit 111 and the
post-change transition diagram display unit 113. The
abstraction unit 20 includes the transition diagram
30 abstraction unit 201 and the post-change transition diagram
abstraction unit 203.
[0129] The numerical control device 1 is a device
separate from the control device 10F. The change
50
information storage unit 17 and the log data storage unit
19 are storage areas on a computer, a hard disk, or the
like that can be accessed by the numerical control device 1
via a network. The change information storage unit 17 may
5 be a storage area included in the numerical control device
1. Likewise, the log data storage unit 19 may be a storage
area included in the numerical control device 1.
[0130] The operation of the control device 10F is the
same as the operation of the control device 10E except for
10 the following points. The control device 10F can acquire
log data from the log data storage unit 19 via a network.
A portable storage medium such as an SD card or a USB
memory storing log data may be connected to the control
device 10F so that the control device 10F can acquire the
15 log data.
[0131] When the control device 10F is connected to the
change information storage unit 17 outside the control
device 10F, the change information output unit 16 may
output change information to the change information storage
20 unit 17 or may output change information to a storage area
on a device such as a computer constituting the control
device 10F.
[0132] As described above, like the control devices 10A
to 10E according to the first to fifth embodiments, the
25 control device 10F according to the sixth embodiment allows
even a person having no expert knowledge of parallel
programming to easily adjust the state of job assignment to
the operation units while checking the state.
[0133] Further, the machine learning device 30 of the
30 control device 10F has the function of selecting, from
options generated by the option generation unit 14, an
option to be applied, on the basis of the results of
learning the job assignment state. This allows the user to
51
select an option to be applied and adjust the job
assignment state without trial and error.
[0134] The control device 10F is a device separate from
the numerical control device 1. This has an advantage that
5 the numerical control device 1 is not affected by a
processing load for performing processing that changes the
job assignment state, a processing load of machine learning
processing performed by the machine learning device 30, etc.
For example, some machine tools including the numerical
10 control device 1 are incorporated in an automation line and
thus cannot easily stop an operating state. In such a case,
taking into consideration the effect on a product being
processed, it is desirable to avoid causing the numerical
control device 1 to execute processing other than the
15 numerical control processing. The control device 10F
allows the numerical control device 1 to perform only log
data acquisition processing because the other processing
can be performed in the control device 10F separate from
the numerical control device 1, allowing the adjustment of
20 the job assignment state while preventing the performance
of the numerical control device 1 from being affected.
[0135] In the fifth embodiment, the machine learning
device 30 is incorporated in the numerical control device 1.
In the sixth embodiment, the machine learning device 30 is
25 incorporated in the control device 10F separate from the
numerical control device 1. However, the present
embodiment is not limited to this example. The machine
learning device 30 may be a device separate from both the
numerical control device 1 and the control device 10F.
30 [0136] Next, a hardware configuration will be described.
The control devices 10A to 10F according to the first to
sixth embodiments are implemented by processing circuitry.
The processing circuitry may be implemented by dedicated
52
hardware, or may be a control circuit using a CPU.
[0137] When the processing circuitry is implemented by
dedicated hardware, the dedicated hardware is implemented
by processing circuitry 90 illustrated in FIG. 17. FIG. 17
5 is a diagram illustrating dedicated hardware for
implementing the functions of the control devices 10A to
10F according to the first to sixth embodiments. The
processing circuitry 90 is a single circuit, a combined
circuit, a programmed processor, a parallel-programmed
10 processor, an application-specific integrated circuit
(ASIC), a field-programmable gate array (FPGA), or a
combination of them.
[0138] When the processing circuitry is implemented by a
control circuit using a CPU, the control circuit is, for
15 example, a control circuit 91 configured as illustrated in
FIG. 18. FIG. 18 is a diagram illustrating a configuration
of the control circuit 91 for implementing the functions of
the control devices 10A to 10F according to the first to
sixth embodiments. As illustrated in FIG. 18, the control
20 circuit 91 includes a processor 92 and a memory 93. The
processor 92 is a CPU and is also called a processing unit,
an arithmetic unit, a microprocessor, a microcomputer, a
digital signal processor (DSP), or the like. The memory 93
is, for example, nonvolatile or volatile semiconductor
25 memory such as random-access memory (RAM), read-only memory
(ROM), flash memory, an erasable programmable ROM (EPROM),
or an electrically EPROM (EEPROM) (registered trademark),
or a magnetic disk, a flexible disk, an optical disk, a
compact disk, a mini disk, a digital versatile disk (DVD),
30 or the like.
[0139] When implemented by the control circuit 91, the
processing circuitry is implemented by the processor 92
reading and executing programs corresponding to the
53
processing of the components, stored in the memory 93. The
memory 93 is also used as a temporary memory in individual
processing executed by the processor 92.
[0140] The configurations described in the above
5 embodiments illustrate an example and can be combined with
another known art. The embodiments can be combined with
each other. The configurations can be partly omitted or
changed without departing from the gist.
10 Reference Signs List
[0141] 1 numerical control device; 10A, 10B, 10C, 10D,
10E, 10F control device; 11 display unit; 12 input
acceptance unit; 13 transition diagram generation unit; 14
option generation unit; 15 post-change transition diagram
15 estimation unit; 16 change information output unit; 17
change information storage unit; 18 numerical control
processing execution unit; 19 log data storage unit; 20
abstraction unit; 30 machine learning device; 31 state
observation unit; 32 learning unit; 33 reward calculation
20 unit; 34 function update unit; 35 action selection unit;
90 processing circuitry; 91 control circuit; 92
processor; 93 memory; 111 transition diagram display
unit; 112 option display unit; 113 post-change transition
diagram display unit; 201 transition diagram abstraction
25 unit; 202 option abstraction unit; 203 post-change
transition diagram abstraction unit.

We Claim:
1. A control device to determine how to assign jobs
constituting software for a numerical control device to
5 assign the jobs to each of a plurality of operation units
for execution of the assigned jobs, the control device
comprising:
a transition diagram display unit to display, on a
basis of log data, a transition diagram showing, in time
10 series, an execution state of the jobs in each of the
plurality of operation units, the log data being acquired
from the numerical control device and including information
specifying operation units that have executed the jobs in
the past and timings at which the jobs have been executed
15 in the past;
an option generation unit to generate, on the basis of
constraints imposed on the software, options of how to
change an assignment state of the jobs displayed in the
transition diagram;
20 an input acceptance unit to accept input information
indicating an option selected from the generated options;
and
a change information output unit to output change
information for changing the assignment state of the jobs
25 in accordance with the option indicated by the input
information.
2. The control device according to claim 1, further
comprising:
30 a post-change transition diagram estimation unit to
estimate a transition diagram when the assignment state of
the jobs is changed in accordance with the selected option.
55
3. The control device according to claim 2, wherein the
post-change transition diagram estimation unit estimates
the transition diagram on the basis of the log data.
5 4. The control device according to any one of claims 1 to
3, further comprising:
an option display unit to display the options
generated by the option generation unit; and
an abstraction unit to change, on the basis of
10 identification information indicating a user attribute, an
abstraction level of displayed contents displayed by the
transition diagram display unit and the option display unit.
5. The control device according to any one of claims 1 to
15 4, wherein the control device is included in the numerical
control device.
6. The control device according to any one of claims 1 to
4, wherein the control device is a device separate from the
20 numerical control device.
7. The control device according to any one of claims 1 to
6, wherein the constraints imposed on the software indicate
a combination of jobs among the jobs constituting the
25 software, the combination of jobs being not processable in
parallel.
8. The control device according to any one of claims 1 to
7, further comprising:
30 a state observation unit to observe, as state
variables, information indicating the execution state of
the jobs included in the transition diagram displayed by
the transition diagram display unit and an execution state
56
of the jobs estimated when the assignment state of the jobs
is changed in accordance with the change information;
a learning unit to learn an assignment state of the
jobs in accordance with a data set created on the basis of
5 the state variables; and
an action selection unit to select, from the options
generated by the option generation unit, an option to be
applied, on the basis of a result of the learning of the
learning unit, and output, to the input acceptance unit,
10 the input information indicating the selected option,
wherein
the change information output unit outputs the change
information for achieving the assignment state of the jobs
according to the learning result.
15
9. A machine learning device comprising:
a state observation unit to observe, as state
variables, information acquired from the control device
according to any one of claims 1 to 7, the information
20 indicating the execution state of the jobs in the past in
each of the plurality of operation units and an execution
state of the jobs estimated when the assignment state of
the jobs is changed in accordance with the change
information; and
25 a learning unit to learn an assignment state of the
jobs in accordance with a data set created on the basis of
the state variables.
10. A control method performed by a control device to
30 determine how to assign jobs constituting software for a
numerical control device to assign the jobs to each of a
plurality of operation units for execution of the assigned
jobs, the control method comprising:
57
a step of displaying, on a basis of log data, a
transition diagram showing, in time series, an execution
state of the jobs in each of the plurality of operation
units, the log data being acquired from the numerical
5 control device and including information specifying
operation units that have executed the jobs in the past and
timings at which the jobs have been executed in the past;
a step of generating, on the basis of constraints
imposed on the software, options of how to change an
10 assignment state of the jobs displayed in the transition
diagram;
a step of accepting input information indicating an
option selected from the generated options; and
a step of outputting change information for changing
15 the assignment state of the jobs in accordance with the
option indicated by the input information.

Documents

Application Documents

# Name Date
1 202227042155.pdf 2022-07-22
2 202227042155-TRANSLATIOIN OF PRIOIRTY DOCUMENTS ETC. [22-07-2022(online)].pdf 2022-07-22
3 202227042155-STATEMENT OF UNDERTAKING (FORM 3) [22-07-2022(online)].pdf 2022-07-22
4 202227042155-REQUEST FOR EXAMINATION (FORM-18) [22-07-2022(online)].pdf 2022-07-22
5 202227042155-PROOF OF RIGHT [22-07-2022(online)].pdf 2022-07-22
6 202227042155-POWER OF AUTHORITY [22-07-2022(online)].pdf 2022-07-22
7 202227042155-FORM 18 [22-07-2022(online)].pdf 2022-07-22
8 202227042155-FORM 1 [22-07-2022(online)].pdf 2022-07-22
9 202227042155-FIGURE OF ABSTRACT [22-07-2022(online)].pdf 2022-07-22
10 202227042155-DRAWINGS [22-07-2022(online)].pdf 2022-07-22
11 202227042155-DECLARATION OF INVENTORSHIP (FORM 5) [22-07-2022(online)].pdf 2022-07-22
12 202227042155-COMPLETE SPECIFICATION [22-07-2022(online)].pdf 2022-07-22
13 202227042155-MARKED COPIES OF AMENDEMENTS [26-07-2022(online)].pdf 2022-07-26
14 202227042155-FORM 13 [26-07-2022(online)].pdf 2022-07-26
15 202227042155-Annexure [26-07-2022(online)].pdf 2022-07-26
16 202227042155-AMMENDED DOCUMENTS [26-07-2022(online)].pdf 2022-07-26
17 Abstract1.jpg 2022-09-24
18 202227042155-FORM 3 [09-11-2022(online)].pdf 2022-11-09
19 202227042155-FER.pdf 2022-11-29
20 202227042155-FER_SER_REPLY [21-02-2023(online)].pdf 2023-02-21
21 202227042155-DRAWING [21-02-2023(online)].pdf 2023-02-21
22 202227042155-COMPLETE SPECIFICATION [21-02-2023(online)].pdf 2023-02-21
23 202227042155-CLAIMS [21-02-2023(online)].pdf 2023-02-21
24 202227042155-ABSTRACT [21-02-2023(online)].pdf 2023-02-21
25 202227042155-FORM 3 [26-07-2023(online)].pdf 2023-07-26
26 202227042155-Response to office action [16-09-2025(online)].pdf 2025-09-16
27 202227042155-PatentCertificate16-09-2025.pdf 2025-09-16
28 202227042155-IntimationOfGrant16-09-2025.pdf 2025-09-16

Search Strategy

1 Search202227042155E_25-11-2022.pdf

ERegister / Renewals