WO2022038672A1 - スケジューリング装置および学習装置 - Google Patents

スケジューリング装置および学習装置 Download PDF

Info

Publication number
WO2022038672A1
WO2022038672A1 PCT/JP2020/031117 JP2020031117W WO2022038672A1 WO 2022038672 A1 WO2022038672 A1 WO 2022038672A1 JP 2020031117 W JP2020031117 W JP 2020031117W WO 2022038672 A1 WO2022038672 A1 WO 2022038672A1
Authority
WO
WIPO (PCT)
Prior art keywords
time
maintenance
job
schedule data
schedule
Prior art date
Application number
PCT/JP2020/031117
Other languages
English (en)
French (fr)
Inventor
賢 犬飼
雄平 堂森
達也 加藤
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to CN202080099295.6A priority Critical patent/CN115916460A/zh
Priority to JP2021504841A priority patent/JP6929484B1/ja
Priority to PCT/JP2020/031117 priority patent/WO2022038672A1/ja
Publication of WO2022038672A1 publication Critical patent/WO2022038672A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23HWORKING OF METAL BY THE ACTION OF A HIGH CONCENTRATION OF ELECTRIC CURRENT ON A WORKPIECE USING AN ELECTRODE WHICH TAKES THE PLACE OF A TOOL; SUCH WORKING COMBINED WITH OTHER FORMS OF WORKING OF METAL
    • B23H7/00Processes or apparatus applicable to both electrical discharge machining and electrochemical machining
    • B23H7/02Wire-cutting
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q41/00Combinations or associations of metal-working machines not directed to a particular result according to classes B21, B23, or B24
    • B23Q41/08Features relating to maintenance of efficient operation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • This disclosure relates to a scheduling device and a learning device for creating job schedule data in a machining facility.
  • the machining scheduling system described in Patent Document 1 schedules machining separately for the work preparation work in which the machining equipment is in operation and the production preparation work in the state where the machining equipment is stopped.
  • the present disclosure has been made in view of the above, and an object of the present disclosure is to obtain a scheduling device capable of shortening the total execution time of a plurality of jobs.
  • the present disclosure is a scheduling device that creates schedule data indicating a schedule for submitting a plurality of jobs to a processing machine, and is used for processing each job. It is provided with a schedule creation unit that creates schedule data based on the estimated machining time required. Further, the scheduling apparatus of the present disclosure is based on the life prediction time, which is the predicted life time of the consumables used by the processing machine, and the maintenance time, which is the maintenance time of the parts of the processing machine. It is equipped with a maintenance required time calculation unit that calculates the maintenance required time, which is the time when maintenance is required.
  • the scheduling apparatus of the present disclosure has a stop time calculation unit that calculates a stop time, which is a time when processing by the processing machine is stopped due to maintenance during job execution, and a stop time, based on the schedule data and the maintenance required time. It includes an output unit that outputs to an external device.
  • the scheduling device has the effect of shortening the total execution time of a plurality of jobs.
  • the figure for demonstrating the maintenance necessary time of consumables when processing is not carried out which is set by the scheduling apparatus which concerns on Embodiment 1.
  • the figure for demonstrating the maintenance necessary time for maintenance set by the scheduling apparatus which concerns on Embodiment 1. A flowchart showing a procedure for calculating the maintenance required time by the scheduling device according to the first embodiment.
  • the figure for demonstrating the calculation process of the stop time by the scheduling apparatus which concerns on Embodiment 1. which shows the hardware configuration example which realizes the scheduling apparatus which concerns on Embodiment 1.
  • the figure which shows the structure of the learning apparatus which concerns on Embodiment 3. A flowchart showing a processing procedure of learning processing by the learning device according to the third embodiment.
  • the figure which shows the structure of the inference apparatus which concerns on Embodiment 3. A flowchart showing a processing procedure of inference processing by the inference device according to the third embodiment.
  • FIG. 1 is a diagram showing a configuration of a scheduling device according to the first embodiment.
  • the scheduling device 10A is a computer that creates schedule data 41 for jobs executed in the machining equipment and calculates a time to stop the machining equipment based on the schedule data 41.
  • the scheduling device 10A includes a scheduler that creates schedule data 41 and calculates a stop time, which is a time to stop the machining equipment.
  • the scheduling device 10A is connected to the processing machine 81 and the display device 83.
  • the processing machine 81 is a device arranged in the machining equipment and executes processing of the work.
  • An example of the processing machine 81 is a machine tool such as a wire electric discharge machine. In the following description, a case where the processing machine 81 is a wire electric discharge machine will be described.
  • the processing machine 81 includes a control device 82 that controls the processing machine 81, and the control device 82 sends operation history information indicating the operation history of the processing machine 81 to the scheduling device 10A.
  • the operation history information includes, for example, the traveling time of the wire, the pressure change of the machining fluid filter which is a sludge removing filter, and the water flow time to the machining fluid filter.
  • An example of the display device 83 is a liquid crystal monitor.
  • the machining fluid filter is also called a machining debris removal filter.
  • the scheduling device 10A is a general scheduler that creates schedules for various devices including, for example, AMR (Autonomous Mobile Robot, autonomous traveling type collaborative transfer robot), AGV (Automatic Guided Vehicle, automatic transfer vehicle), and the like.
  • AMR Autonomous Mobile Robot, autonomous traveling type collaborative transfer robot
  • AGV Automatic Guided Vehicle, automatic transfer vehicle
  • the scheduling device 10A creates schedule data 41 used when the processing machine 81 sequentially processes various workpieces with various processing programs.
  • the scheduling device 10A includes a schedule creation unit 11, a time information creation unit 12, a maintenance required time calculation unit 13, a stop time calculation unit 14, and a stop time output unit 15.
  • the schedule creation unit 11 creates schedule data 41 in which the execution order of jobs, which is a unit of processing executed by the processing machine 81, is registered. Specifically, the schedule creation unit 11 creates schedule data 41 indicating an execution schedule of a plurality of jobs based on the user-designated information 20 and the response time information 24 input by the user.
  • the user-designated information 20 includes machining program ID (IDentification) information 23, work ID information 22, and machining instruction information 21.
  • the schedule creation unit 11 receives the user-designated information 20 including the machining program ID information 23, the work ID information 22, and the machining instruction information 21.
  • the schedule creation unit 11 receives a plurality of user-designated information 20 from the user.
  • One user-specified information 20 corresponds to one job.
  • the machining program ID information 23 is information that identifies the machining program used to execute the job.
  • the machining program is created for each job.
  • the work ID information 22 is information for identifying the work.
  • the processing instruction information 21 includes a processing machine ID which is information for identifying the processing machine 81, a job delivery date which is a job completion deadline, and the like. Further, the user-designated information 20 may include information on the priority of executing the job.
  • the correspondence time information 24 is information indicating the estimated processing time for the combination of the processing program ID information 23, the work ID information 22, and the processing machine ID.
  • the correspondence time information 24 stores information in which the machining program ID information 23, the work ID information 22, the machining machine ID, and the estimated machining time are associated with each other.
  • the scheduling device 10A acquires the response time information 24 from an external device in advance and stores it in a memory (not shown) or the like.
  • the schedule creation unit 11 assigns a job based on the combination of the processing program ID information 23, the work ID information 22, and the processing machine ID included in the user-designated information 20, and the response time information 24 stored in a memory or the like. Calculate the estimated time for the corresponding machining.
  • FIG. 2 is a diagram showing a configuration of schedule data created by the scheduling apparatus according to the first embodiment.
  • the schedule data 41 the job ID, the priority, the machining instruction, the work ID, the machining program ID, and the estimated time are associated with each other.
  • the job ID is information that identifies the job.
  • the job ID is set by the schedule creation unit 11.
  • the schedule creation unit 11 registers the priority order for each job ID in the schedule data 41 based on the user-designated information 20 received from the user.
  • the schedule creation unit 11 registers the processing instruction information in the schedule data 41 based on the processing instruction information 21 received from the user.
  • the processing instruction of the schedule data 41 includes the processing machine ID and the delivery date of the job.
  • the schedule creation unit 11 registers the work ID in the schedule data 41 based on the work ID information 22 received from the user. Further, the schedule creation unit 11 registers the machining program ID in the schedule data 41 based on the machining program ID information 23 received from the user.
  • the schedule creation unit 11 registers the estimated time in the schedule data 41 based on the response time information 24.
  • the estimated time of the schedule data 41 includes an estimated time of machining processing, an estimated time of pre-machining processing, and an estimated time of post-machining processing.
  • the estimated time for pre-processing includes the time for carrying in the work and the time for setting up the work.
  • the setup of the work includes a parallel mounting process of the work, a horizontal mounting process of the work, a measurement process of the reference position of the work, and the like.
  • the estimated time for post-processing includes the time for measuring the work and the time for carrying out the work.
  • the schedule creation unit 11 creates schedule data 41 so that jobs are executed in order from jobs with close delivery dates, for example.
  • the schedule creation unit 11 may create the schedule data 41 so that the jobs are executed in order from the job having the higher priority.
  • the schedule creation unit 11 sends the created schedule data 41 to the stop time calculation unit 14.
  • the job according to the schedule data 41 may be executed according to the user's instruction, or may be executed by an automated system that automatically outputs the instruction to the work transfer device, the processing machine 81, or the like.
  • the schedule creation unit 11 may create schedule data 41 for one processing machine 81, or may create schedule data 41 for a plurality of processing machines 81.
  • the schedule creation unit 11 may automatically rearrange the job execution order set according to the priority order based on the delivery date or the like. Further, the schedule creation unit 11 may automatically rearrange the job execution order set based on the delivery date order or the like based on the priority order.
  • the timing information creation unit 12 receives the operation history information sent from the control device 82 of the processing machine 81.
  • the time information creating unit 12 calculates the consumable life prediction time 31 indicating the life prediction time of each consumable based on the operation history information. Further, the time information creating unit 12 extracts the part maintenance time 32 indicating the maintenance time of each part from the operation history information.
  • the processing machine ID is included in the consumable life prediction time 31 and the part maintenance time 32.
  • the consumables life prediction time 31 may be the time until the consumables have reached the end of their life, or may be the date and time when the consumables reach the end of their life.
  • the part maintenance time 32 is a date and time when the maintenance of the part is scheduled.
  • timing information creation unit 12 can handle parts managed by the usage time instead of the maintenance cycle in the same manner as the life of consumables.
  • FIG. 3 is a diagram showing a configuration of timing information created by the scheduling apparatus according to the first embodiment.
  • the processing machine ID which is information for identifying the processing machine 81, the consumable life prediction time 31, and the component maintenance time 32 are associated with each other.
  • Consumables include consumables that are consumed only during processing and consumables that are consumed even during non-processing. Therefore, the time information creating unit 12 calculates the consumable life prediction time 31 for each consumable according to the consumption mode of each consumable.
  • the timing information creating unit 12 calculates the consumption amount indicating the consumption amount of the wire based on the wire feed rate during processing, and calculates the consumable life prediction time 31 of the wire based on the consumption amount.
  • the machining fluid filter is a consumable item that is consumed only during machining. Therefore, the timing information creating unit 12 is based on data such as the pressure change of the circuit passing water through the machining fluid filter (hereinafter referred to as the filter water passing circuit), the amount of machining debris generated by machining, and the material of the workpiece to be machined.
  • the consumable life prediction time 31 of the working fluid filter is calculated.
  • the ion concentration adjusting resin which is an ion exchange resin in the processing liquid, is a consumable item that is consumed both during processing and non-processing because water is passed through the ion exchange resin even during non-processing. Therefore, the time information creating unit 12 calculates the consumable life prediction time 31 based on the amount of water flowing through the ion exchange resin including both during processing and during non-processing.
  • consumables that are consumed only during processing are indicated by consumables B11, and consumables that are consumed both during processing and non-processing are indicated by consumables B12.
  • the time information creating unit 12 sets the maintenance time required for each part in the time information 40 as the part maintenance time 32.
  • the latest maintenance time that is, the first maintenance time is indicated by the maintenance C1
  • the second maintenance time is indicated by the maintenance C2.
  • the time information creation unit 12 sends the time information 40 to the maintenance required time calculation unit 13.
  • the time information creating unit 12 is not limited to the case of creating the time information 40 by combining the consumable life prediction time 31 and the parts maintenance time 32, and the consumables life prediction time 31 and the parts maintenance time 32 are set. It may be created as separate data.
  • the time information 40 may be created by the control device 82.
  • the control device 82 includes a time information creating unit 12.
  • the time information 40 may be created by an external computer or the like other than the control device 82.
  • an external computer or the like includes a time information creating unit 12.
  • FIG. 4 is a diagram for explaining a consumable life prediction time calculated by the scheduling apparatus according to the first embodiment.
  • FIG. 5 is a diagram for explaining a component maintenance time calculated by the scheduling apparatus according to the first embodiment.
  • the horizontal axis of FIG. 4 is time, and the vertical axis is the wire bobbin diameter.
  • the horizontal axis of FIG. 5 is time, and the vertical axis is the pressure of the filter water passage circuit of the working fluid filter.
  • the wire bobbin diameter that changes with time is shown as the wire bobbin diameter P1
  • the pressure of the filter water passage circuit that changes with time is shown as the pressure P2.
  • the wire In the wire electric discharge machine, the wire is sent out from the wire bobbin around which the wire is wound, the work is processed by the sent out wire, and the wire used for processing is collected. Therefore, as shown in FIG. 4, the wire bobbin diameter P1 of the wire bobbin around which the wire is wound becomes smaller with time.
  • the time information creating unit 12 calculates the time t1 at which the wire bobbin diameter P1 becomes the threshold value Q1 which is a specific diameter as the consumable life prediction time 31 of the wire.
  • the timing information creating unit 12 calculates the time t2 at which the pressure of the filter water passage circuit becomes the threshold value Q2, which is a specific pressure, as the component maintenance timing 32 of the machining fluid filter.
  • the maintenance required time calculation unit 13 calculates the maintenance required time data 42 based on the time information 40 including the consumable life prediction time 31 and the parts maintenance time 32.
  • the maintenance required time data 42 is data indicating a time when maintenance work is required for the life of consumables or maintenance of parts.
  • the maintenance required time data 42 includes information on the maintenance start time and the maintenance end time.
  • the maintenance required time data 42 is the time when the consumables need to be replaced or maintained earliest among the life prediction time of each consumable and the maintenance time of each part, that is, the time when the maintenance work is required most recently ( Below, it may be referred to as the latest maintenance period).
  • the maintenance required time data 42 may be the time until the maintenance work is required, or may be the date and time when the maintenance work is required. During the maintenance work, the processing machine 81 is stopped.
  • the maintenance required time calculation unit 13 calculates the maintenance required time data 42.
  • the consumables have different consumables depending on the operating conditions such as during processing and non-processing, and the life prediction period also changes. Therefore, the maintenance required time calculation unit 13 calculates the life prediction time separately for each consumable item during processing and non-processing.
  • the maintenance required time calculation unit 13 calculates, for example, the maintenance required time of the maintenance required time data 42 based on the life of all consumables when processing is performed, and is not performed when processing is not performed. Calculated based on the life of consumables that are consumed during processing. That is, the maintenance required time calculation unit 13 calculates the progress of consumption separately for the period in which processing is performed and the period in which processing is not performed, and calculates the maintenance required time based on the progress of consumption. The maintenance required time calculation unit 13 registers the calculated maintenance required time in the maintenance required time data 42.
  • the maintenance required time calculation unit 13 registers the maintenance required time corresponding to the parts maintenance time 32 in the maintenance required time data 42 regardless of the operating status of the processing machine 81. Further, the maintenance required time calculation unit 13 calculates the progress of wear by dividing it into a period in which machining is performed and a period in which machining is not performed, and determines the latest maintenance time based on the progress of wear and the component maintenance time 32. decide. The maintenance required time calculation unit 13 registers the latest maintenance time in the maintenance required time data 42.
  • FIG. 6 is a diagram showing a configuration of maintenance required time data created by the scheduling apparatus according to the first embodiment.
  • the processing machine ID, the maintenance required time, the consumable life prediction time 31, and the component maintenance time 32 are associated with each other.
  • the maintenance required time data 42 the maintenance required time, the consumable life prediction time 31, and the part maintenance time 32 are registered for each processing machine ID. Further, in the maintenance required time data 42, the latest maintenance time of each processing machine ID is registered.
  • the consumable life prediction time 31 and the parts maintenance time 32 shown in FIG. 6 correspond to the consumable life prediction time 31 and the parts maintenance time 32 of the time information 40 shown in FIG.
  • the maintenance required time calculation unit 13 calculates the maintenance required time based on the consumable life prediction time 31 and the parts maintenance time 32.
  • the maintenance required time includes the machining time until the latest maintenance, the machining time + non-machining time, and the date and time when the maintenance is scheduled to be executed most recently.
  • the maintenance required time may be indicated by the time until the maintenance is required, or may be indicated by the date and time when the maintenance is required.
  • the maintenance required time calculation unit 13 Sets the timing of the life of the consumable item B11, which is consumed only during processing, to the latest maintenance period. In this case, at the latest maintenance period, the consumable item B11, which is consumed only during processing, is replaced.
  • the maintenance required time calculation unit 13 Sets the timing of the life of the consumable B12, which is consumed during processing and non-processing, to the latest maintenance period. In this case, at the latest maintenance period, the consumable item B12, which is consumed during processing and non-processing, is replaced.
  • the maintenance required time calculation unit 13 sets the part maintenance time 32 to the latest maintenance time. In this case, the parts are maintained at the latest maintenance time.
  • the latest maintenance time of each processing machine 81 is shaded.
  • the processing time + non-processing time included in the maintenance required period is the same as the life of the consumables consumed during processing and non-processing at the consumable life prediction period 31.
  • the maintenance period included in the maintenance required period is the same as the latest maintenance period in the component maintenance period 32.
  • the processing time until the latest maintenance included in the maintenance required time is less than the time until the latest maintenance required time.
  • FIG. 7 is a diagram for explaining the maintenance required time of consumables when processing is performed, which is set by the scheduling device according to the first embodiment.
  • consumables that are consumed only during processing are indicated by consumables B11
  • consumables that are consumed during processing and non-processing are indicated by consumables B12 and B13.
  • the maintenance required time calculation unit 13 sets the timing of the life of the consumable, which has the shortest life among the consumables B11 to B13, to the maintenance required time TM1 which is the time when maintenance is required.
  • the maintenance required time calculation unit 13 sets the life timing of the consumable item B11 to the maintenance required time TM1.
  • FIG. 8 is a diagram for explaining a time required for maintenance of consumables when processing is not performed, which is set by the scheduling device according to the first embodiment.
  • consumables that are consumed only during processing are indicated by consumables B11
  • consumables that are consumed during processing and non-processing are indicated by consumables B12 and B13.
  • the maintenance required time calculation unit 13 sets the timing of the life of the consumable, which has the shortest life among the consumables B12 and B13, to the maintenance required time TM2, which is the time when maintenance is required.
  • the maintenance required time calculation unit 13 sets the life timing of the consumable item B13 to the maintenance required time TM2.
  • FIG. 9 is a diagram for explaining the maintenance required time for maintenance set by the scheduling device according to the first embodiment.
  • the first maintenance is indicated by maintenance C1
  • the second maintenance is indicated by maintenance C2.
  • the time of maintenance C1 is 9:00 on May 30th
  • the time of maintenance C2 is 9:00 on September 29th.
  • the maintenance required time calculation unit 13 sets the latest maintenance among the maintenance C1 and C2 to the maintenance required time TM3, which is the time when maintenance is required.
  • the maintenance required time calculation unit 13 sets the timing of maintenance C1 to the maintenance required time TM3.
  • the maintenance required time calculation unit 13 registers the maintenance required time TM1 to TM3 and the like in the maintenance required time data 42. Maintenance required time Of TM1 to TM3, the latest maintenance required time is the latest maintenance time. The maintenance required time calculation unit 13 may register the time of the second maintenance C2 in the maintenance required time data 42. The maintenance required time calculation unit 13 sends the maintenance required time data 42 to the stop time calculation unit 14.
  • the stop time calculation unit 14 determines whether or not maintenance is required before the job registered in the schedule data 41 is completed, based on the schedule data 41 and the maintenance required time data 42. When the stop time calculation unit 14 determines that maintenance is required, the stop time calculation unit 14 calculates the stop time, which is the time when maintenance is required, based on the schedule data 41 and the maintenance required time data 42.
  • the stop time is a time when the processing machine 81 is stopped for maintenance. That is, the stop time is a time when maintenance is required after stopping the execution of the schedule corresponding to the schedule data 41 at a specific time. An example of an outage is the most recent maintenance period.
  • the stop time calculation unit 14 sends the calculated stop time to the stop time output unit 15. Further, the stop time calculation unit 14 sends the schedule data 41 and the maintenance required time data 42 to the stop time output unit 15.
  • the stop time output unit 15 outputs the stop time, schedule data 41, and maintenance required time data 42 to the display device 83.
  • the display device 83 displays the stop time, the schedule data 41, and the maintenance required time data 42.
  • the stop time output unit 15 may output the stop time, schedule data 41, and maintenance required time data 42 to an external device other than the display device 83. In this case, the stop time output unit 15 transmits the stop time, schedule data 41, and maintenance required time data 42 to an external computer or the like via a communication line or the like.
  • the scheduling device 10A determines that maintenance is required before the job registered in the schedule data 41 is completed, the scheduling device 10A calculates and presents the stop time.
  • FIG. 10 is a flowchart showing a procedure for calculating the maintenance required time by the scheduling device according to the first embodiment.
  • the maintenance required time calculation unit 13 of the scheduling device 10A collects the consumable life prediction time 31 of each consumable from the time information creation unit 12 (step S10).
  • the maintenance required time calculation unit 13 extracts the timing of the life of the consumable that has the shortest life based on the consumable life prediction time 31 (step S20).
  • the maintenance required time calculation unit 13 collects the part maintenance time 32 of each part from the time information creation unit 12 (step S30). The maintenance required time calculation unit 13 extracts the shortest required maintenance time based on the component maintenance time 32 (step S40).
  • the maintenance required time calculation unit 13 executes the process of step S10 before the process of step S20, and executes the process of step S30 before the process of step S40, from steps S10 to S40. Processing may be executed in any order.
  • the maintenance required time calculation unit 13 calculates the maintenance required time after executing the processes of steps S10 to S40, and creates the maintenance required time data 42 (step S50). Specifically, the maintenance required time calculation unit 13 creates the maintenance required time data 42 based on the consumable life prediction time 31 and the component maintenance time 32.
  • the maintenance required time calculation unit 13 calculates the latest maintenance time based on the timing of the life of the consumable that has the shortest life and the maintenance time required at the shortest (step S60).
  • the maintenance required time calculation unit 13 may execute the process of step S50 at any timing after steps S10 and S30. Further, the maintenance required time calculation unit 13 may execute the process of step S60 at any timing after steps S20 and S40.
  • FIG. 11 is a flowchart showing a procedure for presenting a stop time by the scheduling device according to the first embodiment.
  • the stop time calculation unit 14 of the scheduling device 10A acquires the schedule data 41 and the maintenance required time data 42 (step S110).
  • the stop time calculation unit 14 extracts the estimated time of the job (N), which is the Nth job (N is a natural number), from the schedule data 41 (step S120).
  • the first job (1) is the first job executed by the processing machine 81
  • the Nth job (N) is the Nth job executed by the processing machine 81.
  • the stop time calculation unit 14 extracts the estimated time of the first job, the job (1), from the schedule data 41.
  • the stop time calculation unit 14 extracts the maintenance required time of the processing machine 81 into which the jobs (1) to (N) are input from the maintenance required time data 42 (step S130).
  • the stop time calculation unit 14 calculates the period until maintenance based on the maintenance required time.
  • the stop time calculation unit 14 subtracts the estimated time of the job (N) from the period until maintenance.
  • the stop time calculation unit 14 here subtracts the estimated time of the job (1) from the period until maintenance (step S140).
  • the stop time calculation unit 14 determines whether or not the subtraction result is 0 or less (step S150). That is, the stop time calculation unit 14 determines whether or not the period until maintenance is longer than the estimated time of the job (1).
  • step S150, No When the subtraction result is larger than 0 (step S150, No), the stop time calculation unit 14 sets the subtraction result as the period until maintenance (step S170). That is, the stop time calculation unit 14 updates the period until maintenance with the period of the subtraction result.
  • the stop time calculation unit 14 determines whether or not the estimated time has been subtracted from the period until maintenance for all jobs (step S180).
  • the stop time calculation unit 14 returns to the process of step S120.
  • the stop time calculation unit 14 extracts the estimated time of the next job (N) as the process of step S120.
  • the stop time calculation unit 14 extracts the estimated time of the second job (2) from the schedule data 41. After that, the stop time calculation unit 14 executes the processes of steps S130 to S150.
  • step S150 the stop time calculation unit 14 repeats the processes from steps S120 to S170 for all jobs until the estimated time is subtracted from the period until maintenance.
  • step S180, Yes the stop time calculation unit 14 ends the stop time presentation process. That is, if the subtraction result does not become 0 or less even if the estimated time is subtracted from the maintenance period for all jobs, maintenance work is not required until all jobs are completed. , It is not necessary to stop the processing machine 81.
  • step S150 determines that the maintenance required time comes during the processing of the job whose subtraction result is 0 or less. ..
  • the stop time calculation unit 14 sends the processing of the job whose subtraction result is 0 or less to the stop time output unit 15 as the stop time.
  • the stop time output unit 15 outputs the stop time to the display device 83.
  • the display device 83 displays the stop time.
  • the scheduling device 10A presents the calculated stop time to the user (step S160).
  • FIG. 12 is a diagram for explaining the stop time calculation process by the scheduling device according to the first embodiment.
  • a process of calculating the stop time by the stop time calculation unit 14 for the consumables B11 to B13 described with reference to FIGS. 7 and 8 will be described.
  • the maintenance required time calculation unit 13 is the consumable item B11 having the shortest life among the consumable items B11 to B13.
  • the timing of the service life is set to TM1 when maintenance is required.
  • the timing of the life of the consumable B13, which has the shortest life among the consumables B12 and B13, is set to the maintenance required time TM2.
  • the stop time calculation unit 14 determines the latest maintenance time, which is the latest maintenance time, among the maintenance time TM1 and TM2. The stop time calculation unit 14 here determines that the maintenance required time TM1 is the latest maintenance time. The stop time calculation unit 14 determines whether or not the maintenance required time TM1 determined to be the latest maintenance time is the timing during job execution.
  • FIG. 12 shows the case where the jobs registered in the schedule are jobs (1) and (2).
  • the completion timing of the job (1) is the completion timing ST1
  • the completion timing of the job (2) is the completion timing ST2.
  • the stop time calculation unit 14 calculates the stop time by the process described with reference to FIG. For example, when the maintenance required time TM1 is the timing during the execution of the job (2), the stop time calculation unit 14 determines that the execution of the job (2) is the stop time.
  • the stop time calculation unit 14 creates information indicating that the maintenance required time TM1 is to be changed before the execution of the job (2). Specifically, the stop time calculation unit 14 creates information indicating that the completion timing ST1 at which the job (1) is completed is set as the start timing of the maintenance Mx as change presentation information. The stop time calculation unit 14 sends the created change presentation information to the stop time output unit 15.
  • the stop time output unit 15 outputs the change presentation information to the display device 83.
  • the display device 83 displays the change presentation information.
  • the change presentation information is displayed on the display device 83, so that the scheduling device 10A can present an appropriate stop time to the user.
  • the scheduling device 10A can notify the user that maintenance is required during job execution when maintenance is required during job execution.
  • the scheduling device 10A can make the user aware that the machining is stopped due to maintenance during the execution of the job, so that the user plans to perform the maintenance work before the execution of the job whose machining is stopped. It can be fixed.
  • the scheduling device 10A can reduce the wasted time until the start of maintenance after the processing machine 81 is stopped.
  • FIG. 13 is a diagram showing a hardware configuration example that realizes the scheduling device according to the first embodiment.
  • the scheduling device 10A can be realized by the input device 300, the processor 100, the memory 200, and the output device 400.
  • An example of the processor 100 is a CPU (Central Processing Unit, central processing unit, processing unit, arithmetic unit, microprocessor, microcomputer, DSP (Digital Signal Processor)) or system LSI (Large Scale Integration).
  • Examples of the memory 200 are RAM (Random Access Memory) and ROM (Read Only Memory).
  • the scheduling device 10A is realized by the processor 100 reading and executing a scheduler, which is a scheduling program that can be executed by a computer, for executing the operation of the scheduling device 10A stored in the memory 200. It can be said that the scheduling program, which is a program for executing the operation of the scheduling device 10A, causes the computer to execute the procedure or method of the scheduling device 10A.
  • a scheduler which is a scheduling program that can be executed by a computer
  • the scheduling program executed by the scheduling device 10A has a modular configuration including a schedule creation unit 11, a time information creation unit 12, a maintenance required time calculation unit 13, and a stop time calculation unit 14. It is loaded onto storage and these are generated on main storage.
  • the input device 300 receives the user-specified information 20 and the operation history information and sends them to the processor 100.
  • the memory 200 is used as a temporary memory when the processor 100 executes various processes.
  • the memory 200 stores schedule data 41, maintenance required time data 42, stop time, change presentation information, and the like.
  • the output device 400 outputs schedule data 41, maintenance required time data 42, stop time, change presentation information, and the like to the display device 83.
  • the scheduling program may be a file in an installable format or an executable format, stored in a computer-readable storage medium, and provided as a computer program product. Further, the scheduling program may be provided to the scheduling apparatus 10A via a network such as the Internet.
  • the functions of the scheduling device 10A may be partially realized by dedicated hardware such as a dedicated circuit and partially realized by software or firmware. Further, the scheduling device 10B, the learning device 50, and the inference device 60 described in the second and subsequent embodiments can also be realized by the same hardware configuration as the scheduling device 10A.
  • the processing machine 81 is not limited to the wire electric discharge machine, and may be a machining center, an NC (Numerical Control) milling cutter, or an NC lathe. Since these machining centers, NC milling cutters, and NC lathes also use tools as consumables, maintenance work for tool replacement is required. In addition, since these machining centers, NC milling cutters, and NC lathes also use NC programs for performing machining, the tool life is predicted from the path length, shaft feed speed, or rotation speed set in the NC program. It is possible to do. Therefore, the scheduling device 10A can be applied to the machining center, the NC milling cutter, and the NC lathe.
  • the scheduling device 10A calculates the maintenance required time based on the life prediction time and the maintenance time, and calculates the stop time of the processing machine 81 based on the schedule data 41 and the maintenance required time. ing. As a result, it is possible to prevent maintenance from being performed during job execution by the processing machine 81, so that the total execution time of a plurality of jobs can be shortened.
  • Embodiment 2 Next, the second embodiment will be described with reference to FIGS. 14 to 16.
  • the scheduling apparatus corrects the schedule data 41 when the execution of the job is the maintenance timing.
  • FIG. 14 is a diagram showing a configuration of a scheduling device according to the second embodiment.
  • components that achieve the same functions as the scheduling device 10A shown in FIG. 1 are designated by the same reference numerals, and duplicate description will be omitted.
  • the scheduling device 10B includes a schedule correction unit 16 in addition to the components included in the scheduling device 10A.
  • the schedule correction unit 16 is connected to the stop time calculation unit 14.
  • the maintenance required time calculation unit 13 calculates the maintenance required time data 42 including the maintenance time, which is the time required for maintenance. That is, the maintenance required time data 42 of the second embodiment includes information on the maintenance start time, the maintenance end time, and the time required for the maintenance.
  • the stop time calculation unit 14 determines whether or not the job registered in the schedule data 41 can be executed without being stopped in the middle due to maintenance. When the job registered in the schedule data 41 is stopped in the middle due to maintenance, the stop time calculation unit 14 calculates the stop time based on the schedule data 41 and the maintenance necessary time data 42. In this case, the stop time calculation unit 14 sends the stop time, schedule data 41, and maintenance required time data 42 to the schedule correction unit 16.
  • the schedule correction unit 16 corrects the schedule data 41 based on the stop time, the schedule data 41, and the maintenance required time data 42.
  • the schedule correction unit 16 corrects the schedule data 41 so that the jobs registered in the schedule data 41 are not stopped in the middle due to maintenance. At this time, the schedule correction unit 16 corrects the execution order of the jobs in the schedule data 41 and also corrects the maintenance start timing.
  • the scheduling device 10B may update the schedule data 41 in real time while the job is being executed.
  • the schedule creation unit 11 updates the estimated machining time of the running job in real time during the execution of the job.
  • the maintenance required time calculation unit 13 updates the maintenance required time data 42 in real time during the execution of the job.
  • the stop time calculation unit 14 updates the stop time in real time during the execution of the job, and the schedule correction unit 16 corrects and updates the schedule data 41 in real time during the execution of the job.
  • the schedule correction unit 16 determines whether or not there is a job whose maintenance timing is in the middle of execution when the jobs are executed in the order registered in the schedule data 41.
  • a job whose maintenance timing is in the middle of execution may be referred to as an intermediate maintenance job.
  • the intermediate maintenance job is a job that is being executed when the processing machine 81 is stopped.
  • the schedule correction unit 16 assigns a job (M + 1), which is the next job of this job (M), to a job (M). ), It is determined whether or not the maintenance timing is reached during the execution of the job (M + 1).
  • the schedule correction unit 16 corrects the schedule data 41 so that the job (M) is skipped and the job (M + 1) is executed first. That is, the schedule correction unit 16 changes the order of the job (M) and the job (M + 1).
  • a job that can be replaced with an intermediate maintenance job is an alternative job.
  • the schedule correction unit 16 sets the job (M + 2), which is the next job of the job (M + 1), before the job (M) and the job (M + 1).
  • the schedule correction unit 16 corrects the schedule data 41 so that the job (M) and the job (M + 1) are skipped and the job (M + 2) is executed first. .. That is, the schedule correction unit 16 replaces a job whose maintenance timing is not reached during execution with an intermediate maintenance job.
  • the schedule correction unit 16 may move a job whose maintenance timing is not reached during execution to a job that is first determined to be an intermediate maintenance job.
  • the schedule correction unit 16 searches for jobs until a job that does not meet the maintenance timing is found during execution.
  • the schedule correction unit 16 searches for a job that does not have a maintenance timing during execution in order from the job (M + 1) to the last job (N).
  • the schedule correction unit 16 repeats the process of correcting the schedule data 41 so that the job whose maintenance timing is not reached in the middle of execution is executed before the maintenance job in the middle.
  • the schedule correction unit 16 sends the schedule data 41 for which correction has been completed to the stop time output unit 15.
  • the stop time output unit 15 outputs the stop time, maintenance required time data 42, and the schedule data 41 for which correction has been completed to the display device 83.
  • the stop time output unit 15 may output the stop time to the display device 83 without the schedule correction unit 16 correcting the schedule data 41. That is, the schedule correction unit 16 may send the stop time as it is to the stop time output unit 15. In this case, the stop time output unit 15 outputs the stop time from the schedule correction unit 16 to the display device 83.
  • the stop time output unit 15 may receive the stop time from the maintenance required time calculation unit 13 and output it to the display device 83.
  • the scheduling device 10B can select whether to output the stop time to the display device 83 or change the job execution order without modifying the schedule data 41. Whether or not to modify the schedule data 41 is set in the scheduling apparatus 10B in advance according to an instruction from the user.
  • the schedule correction unit 16 changes the execution order of the jobs in the same processing machine 81 as described above, and in addition, the processing machine 81 executes the job according to the priority of the job. May be changed.
  • the schedule correction unit 16 has a first date and time, which is the last date and time when the job is completed in the schedule data 41 before the modification of each processing machine 81, and each processing. You may compare it with the second date and time which is the date and time when the last job ends in the modified schedule data 41 of the machine 81. In this case, the result of comparison by the schedule correction unit 16 is the degree of improvement of the schedule data 41.
  • the schedule correction unit 16 can calculate the degree of improvement of the schedule data 41 by calculating the difference between the first date and time and the second date and time.
  • the degree of improvement of the schedule data 41 may be the difference between the first date and time and the second date and time, or may be a value obtained by dividing the difference by the first date and time.
  • the schedule correction unit 16 sends the calculated improvement degree to the stop time output unit 15, and the stop time output unit 15 displays the improvement degree on the display device 83. As a result, the user can recognize the degree of improvement of the schedule data 41.
  • FIG. 15 is a flowchart showing a procedure for correcting schedule data by the scheduling apparatus according to the second embodiment.
  • the schedule correction unit 16 of the scheduling device 10B acquires the stop time, the schedule data 41, and the maintenance required time data 42 (step S210).
  • the schedule correction unit 16 determines whether or not there is an intermediate maintenance job (step S220). If there is no maintenance job in the middle (step S220, No), the schedule correction unit 16 ends the process without correcting the schedule data 41.
  • step S220 If there is an intermediate maintenance job (step S220, Yes), the schedule correction unit 16 determines whether or not the schedule data 41 is set to be corrected (step S230).
  • the schedule correction unit 16 When the schedule data 41 is not set to be corrected (step S230, No), the schedule correction unit 16 outputs the acquired stop time to the stop time output unit 15 as it is (step S260), and corrects the schedule data 41. To finish.
  • the schedule modification unit 16 determines whether or not to change the job execution order on the same processing machine 81 (step S240). When there is only one processing machine 81, the schedule correction unit 16 determines that the job execution order is changed by the same processing machine 81. Further, when the scheduling device 10B is set to change the job execution order on the same processing machine 81, the schedule correction unit 16 determines that the job execution order is changed on the same processing machine 81. ..
  • Step S240 determines that the job execution order is changed by the same processing machine 81 (step S240, Yes)
  • step S250 determines that the next job does not become an intermediate maintenance job even if the next job is executed first (step S250, No), the next job, which is a job that does not become an intermediate maintenance job, and the intermediate job Replace with the maintenance job (step S270).
  • the schedule correction unit 16 can extract a job that does not reach the maintenance required time from each job scheduled to be submitted to all the processing machines 81, maintenance is performed so that this job is executed before maintenance. Replace the job that does not reach the required time (next job) with the maintenance job in the middle.
  • the schedule correction unit 16 can reduce the number of maintenances, so that the operating rate of the processing machine 81 can be improved by reducing the number of maintenances, and the cost can be reduced by using the consumables until the end of their life.
  • the schedule correction unit 16 outputs the schedule data 41 in which the jobs have been replaced to the stop time output unit 15, and ends the correction process of the schedule data 41.
  • step S250 When the schedule correction unit 16 determines that if the next job is executed first, the next job will also be an intermediate maintenance job (step S250, Yes), whether or not the next job that becomes an intermediate maintenance job is the last job. Is determined (step S280). That is, the schedule correction unit 16 determines whether or not the next job determined in step S250 is the last job to be executed.
  • step S280, No the schedule correction unit 16 returns to the process of step S250.
  • the schedule correction unit 16 searches for jobs that do not become intermediate maintenance jobs in order of job execution order until a job that does not become an intermediate maintenance job is found. That is, the schedule correction unit 16 repeats the processes of steps S250 and S280.
  • the schedule correction unit 16 determines that the next job that becomes an intermediate maintenance job is the last job (step S280, Yes)
  • the schedule correction unit 16 outputs the acquired stop time as it is to the stop time output unit 15 (step S290), and schedules.
  • the correction process of the data 41 is terminated.
  • step S240 determines in the process of step S240 that the job execution order is not changed by the same processing machine 81 (step S240, No)
  • the job before execution has a priority over the intermediate maintenance job. Determines if there is a higher-level job (hereinafter referred to as priority higher-level job). That is, when the schedule correction unit 16 determines that the execution order of the jobs is changed by the plurality of processing machines 81, the schedule correction unit 16 determines whether or not there is a priority higher-level job in the job before execution (step S300).
  • step S300 determines whether or not the priority higher-level job can be executed by another processing machine 81 (step S310).
  • the schedule correction unit 16 determines that the priority upper job can be executed by another processing machine 81 (step S310, Yes), the intermediate maintenance job and the priority upper job are exchanged (step S320). In this case, the schedule correction unit 16 selects, among the priority higher-level jobs, a priority higher-level job in which the priority higher-level job does not become a new intermediate-level maintenance job when the current intermediate-level maintenance job is replaced. The schedule correction unit 16 does not replace the current intermediate maintenance job with the priority upper job when the priority upper job becomes a new intermediate maintenance job when the priority upper job is replaced with the current intermediate maintenance job. The schedule correction unit 16 outputs the schedule data 41 in which the jobs have been replaced to the stop time output unit 15, and ends the correction process of the schedule data 41.
  • the schedule correction unit 16 determines that the priority higher-level job cannot be executed by another processing machine 81 (step S310, No)
  • the other processing machine 81 that determines whether or not to execute the priority higher-level job is the determination target. It is determined whether or not the processing machine 81 is the last processing machine 81 to be determined (step S330). That is, when the schedule correction unit 16 determines that the priority higher-level job cannot be executed by another processing machine 81, the schedule correction unit 16 does not determine whether or not the priority higher-level job can be executed in addition to the other processing machine 81. It is determined whether or not 81 remains.
  • the schedule correction unit 16 determines that another processing machine 81 that has determined whether or not to execute the priority higher-level job is not the last processing machine 81 to be determined among the processing machines 81 to be determined (step). S330, No), the process returns to step S310.
  • the processing machine 81 to be finally determined is a processing machine for which it is finally determined whether or not to execute the priority upper job among other processing machines 81 to be determined whether to execute the priority upper job. 81.
  • the schedule correction unit 16 searches for the processing machine 81 that executes the priority upper job until the processing machine 81 that can execute the priority upper job is found. That is, the schedule correction unit 16 repeats the processes of steps S310 and S330.
  • the schedule correction unit 16 determines that another processing machine 81 that has determined whether or not to execute the priority higher-level job is the last processing machine 81 to be determined among the processing machines 81 to be determined (step). S330, Yes), the acquired stop time is output to the stop time output unit 15 as it is (step S340), and the correction process of the schedule data 41 is completed.
  • step S300 determines that there is no priority higher-level job in the process of step S300 (step S300, No)
  • the schedule correction unit 16 outputs the acquired stop time as it is to the stop time output unit 15 (step S350), and schedule data 41. Ends the correction process of.
  • the schedule correction unit 16 is before the execution of the job that is initially determined to be an intermediate maintenance job. May be set as the stop time.
  • the schedule correction unit 16 sets the timing between the job that was first determined to be an intermediate maintenance job and the job immediately before this job as the stop time, and first determines the job that is determined to be an intermediate maintenance job. , Set after the end of the stop time. Also in this case, the schedule correction unit 16 outputs the set stop time to the stop time output unit 15.
  • the schedule correction unit 16 is a job that is not being executed at the stop time from among all the jobs of the processing machine 81, instead of the intermediate maintenance job that is the execution job that is being executed at the stop time. Extract alternative jobs. When the alternative job can be extracted, the schedule correction unit 16 corrects the schedule data 41 by exchanging the alternative job and the intermediate maintenance job. If the alternative job cannot be extracted, the schedule correction unit 16 corrects the schedule data 41 by setting the stop time for maintenance before the running job and setting the running job after the maintenance. ..
  • FIG. 16 is a diagram for explaining the schedule data correction process by the scheduling device according to the second embodiment and the schedule data correction process by the scheduling device of the comparative example.
  • the schedule correction unit 16 replaces a job with another processing machine 81 when there are a plurality of processing machines 81 will be described.
  • the scheduling device and the scheduling device 10B of the comparative example may execute a job by using the processing machine 81 of the first machine and the processing machine 81 of the second machine.
  • the schedule data 41 it is set that the jobs are executed in the order of jobs (1) and (3) on the first machine, and the jobs are executed in the order of jobs (2) and (4) on the second machine. Suppose you are.
  • the scheduled completion date and time of the job (1) is indicated by the date and time T1
  • the scheduled completion date and time of the job (3) is indicated by the date and time T3.
  • the scheduled completion date and time of the job (2) is indicated by the date and time T2
  • the scheduled completion date and time of the job (4) is indicated by the date and time T4.
  • the maintenance required time is indicated by the maintenance required time TM21. It is assumed that the maintenance required time TM21 is between the date and time T1 and the date and time T3. That is, it is assumed that the maintenance required time TM21 is reached during the execution of the job (3).
  • the maintenance required time TM21 is, for example, a wire replacement timing.
  • the scheduling device in the comparative example does not change the schedule data 41.
  • Unit 1 executes the job (1) and then starts the execution of the job (3). If the schedule data 41 is not changed, the maintenance required time TM21 is reached during the execution of the job (3). Therefore, when the maintenance required time TM21 is reached, the first unit is stopped and the job (3) is interrupted. Then, the maintenance worker is notified of the maintenance command to Unit 1. After the Unit 1 is stopped, it waits for the maintenance worker to start maintenance. In FIG. 16, the waiting state for starting maintenance is shown by the waiting state Wx. After the waiting state Wx, maintenance is performed by a maintenance worker. In FIG. 16, maintenance is shown by maintenance Mx. In FIG. 16, the scheduled completion date and time of the maintenance Mx set by the scheduling apparatus of the comparative example is shown by the date and time T5.
  • Unit 1 restarts job (3) after the waiting state Wx time and maintenance Mx time have elapsed.
  • the job (3) since the scheduling device of the comparative example does not change the schedule data 41, the job (3) may be interrupted by the maintenance Mx. Further, it is necessary to wait for the maintenance Mx during the waiting state Wx.
  • the scheduling device 10B changes the schedule data 41 as needed. Specifically, when the schedule correction unit 16 requires maintenance Mx during job execution, the timing at which a specific job is completed is set as the maintenance Mx start timing, so that maintenance Mx is performed during job execution. Is not executed. Further, the schedule correction unit 16 rearranges the job execution order so that the completion time for both Units 1 and 2 to complete the job is earlier than the completion time according to the schedule data 41 before the change.
  • the schedule correction unit 16 here moves the maintenance Mx, which is the maintenance required time TM21 during the execution of the job (3), after the job (1) is completed.
  • the scheduled completion date and time of the maintenance Mx set by the scheduling device 10B is indicated by the date and time T6.
  • the schedule correction unit 16 replaces the job (3) that overlaps with the maintenance required time TM21 in the unit 1 and the job (4) scheduled to be executed in the unit 2, so that the entire jobs (1) to (4) can be executed. Reduce completion time.
  • the schedule correction unit 16 changes the timing of the maintenance Mx, and updates the schedule data 41 with a new schedule in which the job (3) and the job (4) are exchanged.
  • the updated schedule data 41 it is set that the processing is executed in the order of job (1), maintenance Mx, and job (4) for the first machine. Further, it is set that the processing is executed in the order of jobs (2) and (3) for the second machine.
  • the scheduled completion date and time of the job (4) set by the scheduling device 10B is indicated by the date and time T7
  • the scheduled completion date and time of the job (3) is indicated by the date and time T8.
  • the unit 1 executes the job (1), then the maintenance Mx of the unit 1 is performed, and then the unit 1 executes the job (4).
  • Unit 2 executes jobs in the order of jobs (2) and (3).
  • the delay time from the plan is shown in time D1.
  • the delay time from the plan is the delay time from the plan when there is no maintenance Mx when the maintenance Mx is added to the plan when there is no maintenance Mx.
  • the scheduling apparatus 10B modifies the schedule data 41 and the jobs (1) to (4) are executed, the delay time from the plan is shown by the time D2.
  • the schedule correction unit 16 displays the schedule data 41 when the job is predicted to be stopped by the maintenance Mx during the execution of the job, and the schedule data 41 in which the job is not stopped by the maintenance Mx during the execution of the job. Correct to.
  • the scheduling device 10B modifies the schedule data 41 as a countermeasure against the job stop, so that the maintenance worker does not need to consider the countermeasure against the job stop.
  • the scheduling device 10B can feed back the processing execution status and automatically update the schedule data 41, it is possible to always provide an appropriate schedule data 41.
  • the scheduling device 10B can feed back the processing execution status and automatically update the schedule data 41, it is possible to always provide an appropriate schedule data 41.
  • the scheduling device 10B can feed back the processing execution status and automatically update the schedule data 41, it is possible to always provide an appropriate schedule data 41.
  • the effect of automatic updating of the schedule data 41 by the scheduling device 10B is great. ..
  • the scheduling device in the comparative example does not provide feedback on the actual results during schedule execution, there is no means to improve the difference between the setup information database that stores the setup information and the actual results. .. Therefore, when the scheduling device of the comparative example is applied, the productivity deteriorates.
  • the scheduling device 10B when the scheduling device 10B is applied, since there is feedback of the actual results and automatic rescheduling of the schedule, it is possible to improve the divergence even when there is a divergence between the setup and the actual results. Thereby, the scheduling device 10B can prevent the deterioration of productivity.
  • the scheduling device 10B accelerates the completion time of the last job among the jobs executed by the first and second machines by changing the execution order of the jobs, the schedule created by the scheduling device of the comparative example is advanced.
  • the delay from the plan can be shorter than that of the data 41.
  • the scheduling device 10B moves the timing of the maintenance Mx so that the timing of the maintenance Mx does not overlap with the job, so that the interruption of the job can be avoided.
  • consumables include wires, processing liquid filters, ion exchange resins, and the like. Since these consumables reach the end of their life at a specific timing, they are replaced at a specific timing.
  • the schedule correction unit 16 may change the replacement time of the consumable to the period during which the maintenance Mx is performed. This specific period is set in advance in the scheduling device 10B by the user. As a result, at the time of maintenance Mx, consumables having a short remaining life are replaced. For example, when the remaining life of the wire at the time of the date and time T1 when the maintenance Mx is started is shorter than the specific period, the schedule correction unit 16 may set the date and time T1 as the wire replacement time.
  • the stop time is the job based on the schedule data 41, the maintenance required time, and the stop time.
  • the schedule data 41 is modified so that it is not being executed. As a result, it is possible to prevent maintenance from being performed during job execution by the processing machine 81, so that the total execution time of a plurality of jobs can be shortened.
  • Embodiment 3 Next, the third embodiment will be described with reference to FIGS. 17 to 20.
  • the learning device learns the schedule data 41 that shortens the time until the job is completed, and the inference device infers the schedule data 41 that shortens the time until the job is completed.
  • FIG. 17 is a diagram showing the configuration of the learning device according to the third embodiment.
  • the learning device 50 is a computer that learns schedule data 41, which is a job input schedule, so that the completion time for completing all jobs can be accelerated.
  • the learning device 50 may be arranged in the scheduling device 10A or the scheduling device 10B, or may be arranged outside the scheduling devices 10A and 10B.
  • the learning device 50 includes a data acquisition unit 51 and a model generation unit 52.
  • the learning device 50 is connected to the trained model storage unit 70.
  • the data acquisition unit 51 acquires the maintenance required time data 42 of the processing machine 81, which is calculated based on the life prediction time of each consumable possessed by the processing machine 81 or the maintenance time of each part, as learning data. Further, the data acquisition unit 51 acquires the schedule data 41 created based on the estimated processing time of each job as learning data. Further, the data acquisition unit 51 has scheduled operation execution result data 45, which is an operation record of the processing machine 81 when the job is executed and maintained by the processing machine 81 based on the maintenance required time data 42 and the schedule data 41. Is acquired as training data.
  • the data acquisition unit 51 acquires the maintenance required time data 42, the schedule data 41, and the schedule operation execution result data 45 as learning data.
  • the data acquisition unit 51 sends the learning data to the model generation unit 52.
  • the model generation unit 52 learns the schedule data 41 based on the learning data so that the completion date and time when the last job is completed among the schedule data 41 of all the processing machines 81 can be advanced. In other words, the model generation unit 52 learns the schedule data 41 based on the learning data including the maintenance required time data 42, the schedule data 41, and the schedule operation execution result data 45. That is, the model generation unit 52 generates a trained model 71 for inferring the schedule data 41 that can shorten the completion date and time of the total job from the maintenance required time data 42 and the schedule data 41.
  • reinforcement learning Reinforcement Learning
  • an agent in a certain environment observes the current state (environmental parameters) and decides the action to be taken.
  • the agent repeats this process and learns the action policy that gives the most reward through a series of actions.
  • Q-learning and TD-Learning are known as typical methods of reinforcement learning.
  • the general update formula of the action value function Q (s, a) is expressed by the following formula (1).
  • st represents the environment at time t
  • at represents the action at time t
  • the state (environment) changes to st + 1 depending on the action at.
  • r t + 1 represents the reward received by the change of the state
  • represents the discount rate
  • represents the learning coefficient. Note that ⁇ is in the range of 0 ⁇ ⁇ 1 and ⁇ is in the range of 0 ⁇ ⁇ 1.
  • the scheduled operation execution result data 45 becomes the action at, the maintenance required time data 42 and the schedule data 41 become the state st , and the learning device 50 learns the best action at in the state st at the time t .
  • the scheduled operation execution result data 45 corresponds to the modified schedule data 41. Therefore, the learning device 50 learns the best modified schedule data 41. In other words, the learning device 50 learns the schedule data 41 modified so that the total execution time of the job can be shortened.
  • the learning device 50 updates the action value function Q (s, a) so that the action value Q of the action a at time t approaches the best action value Q at time t + 1.
  • the best behavioral value Q in a certain environment is sequentially propagated to the behavioral value Q in the previous environment.
  • the model generation unit 52 when the model generation unit 52 generates the trained model 71 by reinforcement learning, the model generation unit 52 has a reward calculation unit 53 and a function update unit 54.
  • the reward calculation unit 53 calculates the reward r based on the completion date and time of the last job calculated from the scheduled operation execution result data 45. For example, the reward calculation unit 53 increases the reward r (for example, gives a reward of "1") when the completion date and time of the last job is early, while the reward r is when the completion date and time of the last job is late. (For example, give a reward of "-1").
  • the function update unit 54 updates the function for determining the modified schedule data 41 corresponding to the schedule operation execution result data 45 according to the reward calculated by the reward calculation unit 53, and outputs the function to the trained model storage unit 70. do.
  • the function update unit 54 uses the action value function Q ( st , at) represented by the equation (1) as a function for calculating the schedule data 41.
  • the learning device 50 repeatedly executes the above learning.
  • the trained model storage unit 70 stores the action value function Q ( st , at) updated by the function update unit 54 , that is, the trained model 71.
  • FIG. 18 is a flowchart showing a processing procedure of learning processing by the learning device according to the third embodiment.
  • the data acquisition unit 51 acquires the maintenance required time data 42, the schedule data 41, and the schedule operation execution result data 45 as learning data (step S410).
  • the model generation unit 52 calculates the reward based on the maintenance required time data 42, the schedule data 41, and the schedule operation execution result data 45 (step S420). Specifically, the reward calculation unit 53 acquires the maintenance required time data 42, the schedule data 41, and the scheduled operation execution result data 45, and rewards based on the completion date and time of the last job, which is a predetermined reward standard. Decide whether to increase or decrease the reward.
  • step S420 reward increase standard
  • step S430 the reward calculation unit 53 determines that the reward is to be reduced
  • step S420 reward reduction standard
  • the function update unit 54 updates the action value function Q ( st , at) represented by the equation (1) stored in the trained model storage unit 70 based on the reward calculated by the reward calculation unit 53. (Step S450).
  • the learning device 50 repeatedly executes the above steps S410 to S450 , and stores the generated action value function Q (st, at) in the trained model storage unit 70 as the trained model 71.
  • the learning device 50 stores the trained model 71 in the trained model storage unit 70 provided outside the learning device 50, but the trained model storage unit 70 stores the trained model 71. It may be arranged inside the device 50.
  • FIG. 19 is a diagram showing a configuration of an inference device according to the third embodiment.
  • the inference device 60 is a computer that infers the corrected schedule data 41 from the maintenance required time data 42 and the schedule data 41 by using the trained model 71.
  • the inference device 60 infers the modified schedule data 41 whose completion time for completing the last job has been shortened.
  • the inference device 60 may be arranged in the scheduling device 10A or the scheduling device 10B, or may be arranged outside the scheduling devices 10A and 10B. In the third embodiment, the case where the inference device 60 is arranged in the scheduling device 10A will be described.
  • the inference device 60 includes a data acquisition unit 61 and an inference unit 62.
  • the data acquisition unit 61 acquires maintenance required time data 42 and schedule data 41.
  • the inference unit 62 infers the modified schedule data 41X, which is the modified schedule data, using the trained model 71, and outputs the modified schedule data 41X to the stop time output unit 15. That is, the inference unit 62 inputs the maintenance required time data 42 and the schedule data 41 acquired by the data acquisition unit 61 into the trained model 71, so that the correction schedule data 41X in which the completion time for completing the final job is shortened. Can be inferred.
  • the stop time output unit 15 causes the display device 83 to display the correction schedule data 41X.
  • the inference device 60 infers the correction schedule data 41X using the learned model 71 learned by the model generation unit 52 has been described, but the inference device 60 is other than the learning device 50.
  • the trained model 71 may be acquired from another learning device, and the modified schedule data 41X may be inferred based on the trained model 71.
  • FIG. 20 is a flowchart showing a processing procedure of inference processing by the inference device according to the third embodiment.
  • the data acquisition unit 61 acquires the maintenance required time data 42 and the schedule data 41 as inference data (step S510).
  • the inference unit 62 inputs maintenance required time data 42 and schedule data 41, which are inference data, into the trained model 71 stored in the trained model storage unit 70 (step S520), and obtains correction schedule data 41X. ..
  • the inference unit 62 outputs the correction schedule data 41X, which is the obtained data, to the stop time output unit 15 (step S530).
  • the stop time output unit 15 causes the display device 83 to display the correction schedule data 41X.
  • the control device 82 of the processing machine 81 executes the job according to the correction schedule data 41X. Further, the maintenance worker executes maintenance according to the correction schedule data 41X. This makes it possible for the inference device 60 to shorten the time required to complete all the jobs.
  • the present invention is not limited to this.
  • the learning algorithm it is also possible to apply supervised learning, unsupervised learning, semi-supervised learning, or the like, in addition to reinforcement learning.
  • model generation unit 52 uses another known method, for example, a neural network.
  • Genetic programming, functional logic programming, support vector machines, etc. may be used to perform machine learning.
  • the learning device 50 and the inference device 60 may be, for example, devices connected to the scheduling device 10A via a network and separate from the scheduling device 10A. Further, the learning device 50 and the inference device 60 may exist on the cloud server.
  • the model generation unit 52 may learn the correction schedule data 41X by using the learning data acquired from the plurality of control devices 82 and the plurality of scheduling devices 10A.
  • the model generation unit 52 may acquire learning data from a plurality of control devices 82 and a plurality of scheduling devices 10A used in the same area, or a plurality of control devices that operate independently in different areas.
  • the correction schedule data 41X may be learned by using the learning data collected from the 82 and the plurality of scheduling devices 10A.
  • the learning device 50 can add or remove the control device 82 and the scheduling device 10A for collecting the learning data from the target on the way.
  • the learning device 50 that has learned the modified schedule data 41X for a certain control device 82 and the scheduling device 10A is applied to the control device 82 and the scheduling device 10A different from the control device 82 and the scheduling device 10A, and the other control is applied.
  • the modified schedule data 41X may be relearned for the device 82 and the scheduling device 10A to update the trained model 71.
  • the learning device 50 may generate a trained model 71 for inferring the modified schedule data 41X that can shorten the total maintenance time of all the processing machines 81 within the designated period specified by the user.
  • the inference device 60 uses the trained model 71 generated by the learning device 50 to increase the ratio of the total job execution time of all the processing machines 81 within the designated period specified by the user. Infer 41X.
  • the trained model 71 is a model capable of reducing the total maintenance time of all the processing machines 81 within the designated period specified by the user, the learning device 50 and the inference device 60 are within the designated period specified by the user. It is possible to increase the overall operating rate of the processing machine 81 in the above.
  • the learning device 50 is a trained model for inferring the correction schedule data 41X in which the total number of job executions of all the processing machines 81 within the designated period specified by the user increases while keeping the delivery date of each job. 71 may be generated. As a result, the learning device 50 can increase the number of jobs executed within the specified period specified by the user.
  • the inference device 60 uses the trained model 71 generated by the learning device 50 to generate correction schedule data 41X in which the total number of job executions of all the processing machines 81 within the designated period specified by the user increases. Infer.
  • the trained model 71 since the trained model 71 infers the correction schedule data 41X that accelerates the time until the execution of the last job in the correction schedule data 41X is completed, the execution of the last job is executed. Can be shortened in time to complete. As a result, the processing machine 81 can shorten the total execution time of the job.
  • the trained model 71 infers the correction schedule data 41X in which the ratio of the total job execution time of all the processing machines 81 in the specific period becomes large, the total job execution time of all the processing machines 81 in the specific period is inferred. The ratio of can be increased. As a result, the processing machine 81 can efficiently execute the job.
  • the trained model 71 infers the correction schedule data 41X in which the total number of job executions of all the processing machines 81 in the specific period increases while keeping the delivery date of each job, all the processing machines 81 in the specific period You can increase the total number of job executions. As a result, the processing machine 81 can efficiently execute the job.
  • the configuration shown in the above embodiments is an example, and can be combined with another known technique, can be combined with each other, and does not deviate from the gist. It is also possible to omit or change a part of the configuration.
  • 10A, 10B scheduling device 11 schedule creation unit, 12 time information creation unit, 13 maintenance required time calculation unit, 14 stop time calculation unit, 15 stop time output unit, 16 schedule correction unit, 20 user-specified information, 21 processing instruction information , 22 work ID information, 23 machining program ID information, 24 response time information, 31 consumables life prediction time, 32 parts maintenance time, 40 time information, 41 schedule data, 41X correction schedule data, 42 maintenance required time data, 45 schedule Operation execution result data, 50 learning device, 51, 61 data acquisition unit, 52 model generation unit, 53 reward calculation unit, 54 function update unit, 60 inference device, 62 inference unit, 70 trained model storage unit, 71 trained model , 81 processing machine, 82 control device, 83 display device, 100 processor, 200 memory, 300 input device, 400 output device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Manufacturing & Machinery (AREA)
  • General Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Chemical Kinetics & Catalysis (AREA)
  • Electrochemistry (AREA)
  • Numerical Control (AREA)
  • General Factory Administration (AREA)

Abstract

加工機(81)に対して複数のジョブを投入するためのスケジュールデータ(41)を作成するスケジューリング装置(10A)であって、各ジョブの加工に要する時間が見積もられた加工見積時間に基づいて、スケジュールデータ(41)を作成するスケジュール作成部(11)と、加工機(81)が用いる消耗品の消耗品寿命予測時期(31)、および加工機(81)が有する部品の部品メンテナンス時期(32)に基づいて、加工機(81)に対して保守が必要となる時期である保守必要時期データ(42)を算出する保守必要時期算出部(13)と、スケジュールデータ(41)および保守必要時期データ(42)に基づいて、ジョブの実行中に保守によって加工機(81)による加工が停止する時期である停止時期を算出する停止時期算出部(14)と、停止時期を外部装置に出力する停止時期出力部(15)と、を備える。

Description

スケジューリング装置および学習装置
 本開示は、機械加工設備におけるジョブのスケジュールデータを作成するスケジューリング装置および学習装置に関する。
 近年、機械加工設備において効率良くジョブを実行するために、複数からなるジョブのトータルの実行時間を短くできるスケジュールデータを作成することが望まれている。
 特許文献1に記載の加工スケジューリングシステムは、機械加工設備が稼動中のワークの生産準備作業と、機械加工設備を停止した状態での生産準備作業と、を分けて加工のスケジューリングを行っている。
特許第5622483号公報
 しかしながら、上記特許文献1の技術では、機械加工設備における保守作業を考慮せずにスケジューリングを行っているので、保守作業が必要な場合には、複数からなるジョブのトータルの実行時間を短くできない場合があった。
 本開示は、上記に鑑みてなされたものであって、複数からなるジョブのトータルの実行時間を短くすることができるスケジューリング装置を得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本開示は、加工機に対して複数のジョブを投入するためのスケジュールを示すスケジュールデータを作成するスケジューリング装置であって、各ジョブの加工に要する時間が見積もられた加工見積時間に基づいて、スケジュールデータを作成するスケジュール作成部を備える。また、本開示のスケジューリング装置は、加工機が用いる消耗品の予測された寿命の時期である寿命予測時期、および加工機が有する部品のメンテナンスの時期であるメンテナンス時期に基づいて、加工機に対して保守が必要となる時期である保守必要時期を算出する保守必要時期算出部を備える。また、本開示のスケジューリング装置は、スケジュールデータおよび保守必要時期に基づいて、ジョブの実行中に保守によって加工機による加工が停止する時期である停止時期を算出する停止時期算出部と、停止時期を外部装置に出力する出力部と、を備える。
 本開示にかかるスケジューリング装置は、複数からなるジョブのトータルの実行時間を短くすることができるという効果を奏する。
実施の形態1にかかるスケジューリング装置の構成を示す図 実施の形態1にかかるスケジューリング装置が作成するスケジュールデータの構成を示す図 実施の形態1にかかるスケジューリング装置が作成する時期情報の構成を示す図 実施の形態1にかかるスケジューリング装置が算出する消耗品寿命予測時期を説明するための図 実施の形態1にかかるスケジューリング装置が算出する部品メンテナンス時期を説明するための図 実施の形態1にかかるスケジューリング装置が作成する保守必要時期データの構成を示す図 実施の形態1にかかるスケジューリング装置が設定する、加工が実施される場合の消耗品の保守必要時期を説明するための図 実施の形態1にかかるスケジューリング装置が設定する、加工が実施されない場合の消耗品の保守必要時期を説明するための図 実施の形態1にかかるスケジューリング装置が設定する、メンテナンスのための保守必要時期を説明するための図 実施の形態1にかかるスケジューリング装置による保守必要時期の算出処理手順を示すフローチャート 実施の形態1にかかるスケジューリング装置による停止時期の提示処理手順を示すフローチャート 実施の形態1にかかるスケジューリング装置による停止時期の算出処理を説明するための図 実施の形態1にかかるスケジューリング装置を実現するハードウェア構成例を示す図 実施の形態2にかかるスケジューリング装置の構成を示す図 実施の形態2にかかるスケジューリング装置によるスケジュールデータの修正処理手順を示すフローチャート 実施の形態2にかかるスケジューリング装置によるスケジュールデータの修正処理と、比較例のスケジューリング装置によるスケジュールデータの修正処理とを説明するための図 実施の形態3にかかる学習装置の構成を示す図 実施の形態3にかかる学習装置による学習処理の処理手順を示すフローチャート 実施の形態3にかかる推論装置の構成を示す図 実施の形態3にかかる推論装置による推論処理の処理手順を示すフローチャート
 以下に、本開示の実施の形態にかかるスケジューリング装置および学習装置を図面に基づいて詳細に説明する。
実施の形態1.
 図1は、実施の形態1にかかるスケジューリング装置の構成を示す図である。スケジューリング装置10Aは、機械加工設備において実行されるジョブのスケジュールデータ41を作成するとともに、スケジュールデータ41に基づいて機械加工設備を停止させる時期を算出するコンピュータである。スケジューリング装置10Aは、スケジュールデータ41の作成と機械加工設備を停止させる時期である停止時期の算出とを行うスケジューラを備えている。
 スケジューリング装置10Aは、加工機81および表示装置83に接続されている。加工機81は、機械加工設備に配置される装置であり、ワークの加工を実行する。加工機81の例は、ワイヤ放電加工機等の工作機械である。以下の説明では、加工機81がワイヤ放電加工機である場合について説明する。
 加工機81は、加工機81を制御する制御装置82を備えており、制御装置82が、加工機81の稼働履歴を示す稼働履歴情報をスケジューリング装置10Aに送る。稼働履歴情報には、例えば、ワイヤの走行時間、スラッジ除去フィルタである加工液フィルタの圧力変化、および加工液フィルタへの通水時間が含まれている。表示装置83の例は、液晶モニタである。加工液フィルタは、加工屑除去フィルタとも呼ばれる。
 スケジューリング装置10Aは、例えば、AMR(Autonomous Mobile Robot,自律走行型協働搬送ロボット)、AGV(Automatic Guided Vehicle,自動搬送台車)などを含んだ種々の装置のスケジュールを作成する統括スケジューラである。
 スケジューリング装置10Aは、加工機81が種々のワークを種々の加工プログラムで順番に加工していく際に用いるスケジュールデータ41を作成する。
 スケジューリング装置10Aは、スケジュール作成部11と、時期情報作成部12と、保守必要時期算出部13と、停止時期算出部14と、停止時期出力部15とを備えている。
 スケジュール作成部11は、加工機81が実行する加工の単位であるジョブの実行順序を登録したスケジュールデータ41を作成する。具体的には、スケジュール作成部11は、ユーザによって入力されるユーザ指定情報20および対応時間情報24に基づいて、複数からなるジョブの実行スケジュールを示すスケジュールデータ41を作成する。ユーザ指定情報20には、加工プログラムID(IDentification,識別)情報23、ワークID情報22、および加工指示情報21が含まれている。
 スケジュール作成部11は、加工プログラムID情報23と、ワークID情報22と、加工指示情報21とを含んだユーザ指定情報20を受け付ける。スケジュール作成部11は、複数のユーザ指定情報20をユーザから受け付ける。1つのユーザ指定情報20が、1つのジョブに対応している。
 加工プログラムID情報23は、ジョブの実行に用いられる加工プログラムを識別する情報である。加工プログラムは、ジョブ毎に作成されている。ワークID情報22は、ワークを識別する情報である。加工指示情報21は、加工機81を識別する情報である加工機ID、ジョブの完了期限であるジョブの納期などを含んでいる。また、ユーザ指定情報20には、ジョブを実行する優先順位の情報が含まれていてもよい。
 対応時間情報24は、加工プログラムID情報23とワークID情報22と加工機IDとの組み合わせに対する加工の見積時間を示す情報である。対応時間情報24では、加工プログラムID情報23と、ワークID情報22と、加工機IDと、加工の見積時間とが対応付けされた情報が格納されている。
 スケジューリング装置10Aは、予め対応時間情報24を外部装置から取得してメモリ(図示せず)などに格納しておく。
 スケジュール作成部11は、ユーザ指定情報20に含まれる加工プログラムID情報23とワークID情報22と加工機IDとの組み合わせと、メモリなどに格納されている対応時間情報24とに基づいて、ジョブに対応する加工の見積時間を算出する。
 ここで、スケジュールデータ41の構成について説明する。図2は、実施の形態1にかかるスケジューリング装置が作成するスケジュールデータの構成を示す図である。スケジュールデータ41では、ジョブIDと、優先順位と、加工指示と、ワークIDと、加工プログラムIDと、見積時間とが対応付けされている。
 ジョブIDは、ジョブを識別する情報である。ジョブIDは、スケジュール作成部11によって設定される。スケジュール作成部11は、ユーザから受け付けたユーザ指定情報20に基づいて、スケジュールデータ41にジョブID毎の優先順位を登録する。スケジュール作成部11は、ユーザから受け付けた加工指示情報21に基づいて、スケジュールデータ41に加工指示の情報を登録する。スケジュールデータ41の加工指示には、加工機IDおよびジョブの納期が含まれている。
 また、スケジュール作成部11は、ユーザから受け付けたワークID情報22に基づいて、スケジュールデータ41にワークIDを登録する。また、スケジュール作成部11は、ユーザから受け付けた加工プログラムID情報23に基づいて、スケジュールデータ41に加工プログラムIDを登録する。
 また、スケジュール作成部11は、対応時間情報24に基づいて、スケジュールデータ41に見積時間を登録する。スケジュールデータ41の見積時間には、加工処理の見積時間と、加工前処理の見積時間と、加工後処理の見積時間とが含まれている。加工前処理の見積時間には、ワークの搬入時間およびワークの段取り時間が含まれている。ワークの段取りは、ワークの平行取付処理、ワークの水平取付処理、ワークの基準位置の測定処理などである。加工後処理の見積時間には、ワークの測定処理およびワークの搬出時間が含まれている。
 スケジュール作成部11は、例えば、納期が近いジョブから順番にジョブが実行されるようにスケジュールデータ41を作成する。なお、スケジュール作成部11は、優先順位が上位であるジョブから順番にジョブが実行されるようにスケジュールデータ41を作成してもよい。スケジュール作成部11は、作成したスケジュールデータ41を、停止時期算出部14に送る。
 スケジュールデータ41に従ったジョブは、ユーザ指示に従って実施されてもよいし、ワーク搬送装置または加工機81などに自動で指示を出力する自動化システムによって実施されてもよい。
 スケジュール作成部11は、1台の加工機81に対してスケジュールデータ41を作成してもよいし、複数台の加工機81に対してスケジュールデータ41を作成してもよい。
 スケジュール作成部11は、優先順位に従って設定されたジョブの実行順を、納期の順番などに基づいて自動で並べ替えてもよい。また、スケジュール作成部11は、納期の順番などに基づいて設定されたジョブの実行順を、優先順位に基づいて自動で並べ替えてもよい。
 時期情報作成部12は、加工機81の制御装置82から送られてくる稼働履歴情報を受け付ける。時期情報作成部12は、稼働履歴情報に基づいて、各消耗品の寿命予測時期を示す消耗品寿命予測時期31を算出する。また、時期情報作成部12は、稼働履歴情報内から、各部品のメンテナンス時期を示す部品メンテナンス時期32を抽出する。消耗品寿命予測時期31および部品メンテナンス時期32には、加工機IDが含まれている。消耗品寿命予測時期31は、消耗品の寿命までの時間であってもよいし、消耗品が寿命となる日時であってもよい。部品メンテナンス時期32は、部品のメンテナンスを予定している日時である。
 なお、時期情報作成部12は、メンテナンス周期ではなく使用時間で管理される部品については消耗品の寿命と同様に扱うことができる。
 ここで、消耗品寿命予測時期31および部品メンテナンス時期32を含んだ時期情報の構成について説明する。図3は、実施の形態1にかかるスケジューリング装置が作成する時期情報の構成を示す図である。時期情報40では、加工機81を識別する情報である加工機IDと、消耗品寿命予測時期31と、部品メンテナンス時期32とが対応付けされている。
 消耗品には、加工中にのみ消耗する消耗品と、非加工中でも消耗する消耗品とがある。したがって、時期情報作成部12は、各消耗品の消耗態様に合わせて消耗品毎に消耗品寿命予測時期31を算出する。
 例えば、ワイヤ放電加工機の場合、ワイヤ(ワイヤ電極線)は、加工中にのみ消耗する消耗品である。このため、時期情報作成部12は、加工中のワイヤ送り速度に基づいてワイヤの消耗量を示す消費量を算出し、消費量に基づいてワイヤの消耗品寿命予測時期31を算出する。
 また、加工液フィルタは、加工中にのみ消耗する消耗品である。このため、時期情報作成部12は、加工液フィルタに通水する回路(以下、フィルタ通水回路という)の圧力変化、加工による加工屑の発生量、加工されるワークの材質などのデータに基づいて加工液フィルタの消耗品寿命予測時期31を算出する。
 また、加工液中のイオン交換樹脂であるイオン濃度調整樹脂は、非加工中もイオン交換樹脂に通水されるため、加工中と非加工中との両方で消耗する消耗品である。このため、時期情報作成部12は、加工中と非加工中との両方を含めたイオン交換樹脂への通水量に基づいて消耗品寿命予測時期31を算出する。
 図3の時期情報40では、加工中のみ消耗する消耗品を消耗品B11で示し、加工中と非加工中との両方で消耗する消耗品を消耗品B12で示している。
 加工機81に含まれる各部品に対しては、日常点検、1週間点検、1か月点検、半年点検等の各部品に必要なメンテナンス時期がある。したがって、時期情報作成部12は、各部品に必要なメンテナンス時期を部品メンテナンス時期32として時期情報40に設定する。図3の時期情報40では、直近の、すなわち1回目のメンテナンス時期をメンテナンスC1で示し、2回目のメンテナンス時期をメンテナンスC2で示している。時期情報作成部12は、時期情報40を保守必要時期算出部13に送る。
 なお、時期情報作成部12は、消耗品寿命予測時期31と、部品メンテナンス時期32とを合成した時期情報40を作成する場合に限らず、消耗品寿命予測時期31と、部品メンテナンス時期32とを別々のデータとして作成してもよい。
 また、時期情報40は、制御装置82で作成されてもよい。この場合、制御装置82が、時期情報作成部12を備える。また、時期情報40は、制御装置82以外の外部のコンピュータなどで作成されてもよい。この場合、外部のコンピュータなどが、時期情報作成部12を備える。
 ここで、消耗品寿命予測時期31および部品メンテナンス時期32について説明する。図4は、実施の形態1にかかるスケジューリング装置が算出する消耗品寿命予測時期を説明するための図である。図5は、実施の形態1にかかるスケジューリング装置が算出する部品メンテナンス時期を説明するための図である。
 図4の横軸は時間であり、縦軸はワイヤボビン径である。図5の横軸は時間であり、縦軸は加工液フィルタのフィルタ通水回路の圧力である。図4では、時間とともに変化するワイヤボビン径をワイヤボビン径P1として示し、図5では、時間とともに変化するフィルタ通水回路の圧力を圧力P2として示している。
 ワイヤ放電加工機では、ワイヤが巻かれたワイヤボビンからワイヤが送り出され、送り出されたワイヤによってワークが加工され、加工に用いられたワイヤが回収される。このため、ワイヤが巻かれたワイヤボビンのワイヤボビン径P1は、図4に示すように、時間とともに小さくなる。時期情報作成部12は、ワイヤボビン径P1が特定の径である閾値Q1となる時間t1をワイヤの消耗品寿命予測時期31として算出する。
 また、ワイヤ放電加工機では、加工が進むに従って加工屑が堆積するので、フィルタ通水回路の圧力P2は、図5に示すように時間とともに高くなる。時期情報作成部12は、フィルタ通水回路の圧力が特定の圧力である閾値Q2となる時間t2を加工液フィルタの部品メンテナンス時期32として算出する。
 保守必要時期算出部13は、消耗品寿命予測時期31および部品メンテナンス時期32を含んだ時期情報40に基づいて、保守必要時期データ42を算出する。保守必要時期データ42は、消耗品の寿命または部品のメンテナンスのために、保守作業が必要となる時期を示すデータである。保守必要時期データ42は、保守の開始時間、および保守の終了時間の情報を含んでいる。
 保守必要時期データ42は、各消耗品の寿命予測時期と、各部品のメンテナンス時期とのうち、最も早く消耗品の交換またはメンテナンスが必要となる時期、すなわち直近で保守作業が必要になる時期(以下、直近保守時期という場合がある)のデータを含んでいる。保守必要時期データ42は、保守作業が必要になるまでの時間であってもよいし、保守作業が必要になる日時であってもよい。保守作業の際には、加工機81は停止する。
 スケジューリング装置10Aは、例えば、スケジュールデータ41と合わせて、加工機81の停止時期を提示するために、保守必要時期算出部13が保守必要時期データ42を算出する。消耗品は、加工中と非加工中といった運転状況に従って消耗具合が変化し、寿命予測時期も変化する。したがって、保守必要時期算出部13は、消耗品毎に、加工中と非加工中とを分けて、寿命予測時期を算出する。
 保守必要時期算出部13は、例えば、保守必要時期データ42の保守必要時期を、加工が実施される場合には、全ての消耗品の寿命に基づいて算出し、加工を実施しない場合には非加工中でも消耗される消耗品の寿命に基づいて算出する。すなわち、保守必要時期算出部13は、加工が実施される期間と加工が実施されない期間とに分けて消耗の進行度を算出し、消耗の進行度に基づいて保守必要時期を算出する。保守必要時期算出部13は、算出した保守必要時期を保守必要時期データ42に登録する。
 また、保守必要時期算出部13は、加工機81の運転状況にかかわらず、部品メンテナンス時期32に対応する保守必要時期を保守必要時期データ42に登録する。また、保守必要時期算出部13は、加工が実施される期間と加工が実施されない期間とに分けて消耗の進行度を算出し、消耗の進行度および部品メンテナンス時期32に基づいて直近保守時期を決定する。保守必要時期算出部13は、直近保守時期を保守必要時期データ42に登録する。
 ここで、保守必要時期データ42について説明する。図6は、実施の形態1にかかるスケジューリング装置が作成する保守必要時期データの構成を示す図である。保守必要時期データ42では、加工機IDと、保守必要時期と、消耗品寿命予測時期31と、部品メンテナンス時期32とが対応付けされている。換言すると、保守必要時期データ42では、加工機ID毎に、保守必要時期、消耗品寿命予測時期31、および部品メンテナンス時期32が登録されている。また、保守必要時期データ42では、各加工機IDの直近保守時期が登録されている。
 図6に示す消耗品寿命予測時期31および部品メンテナンス時期32は、図3に示した時期情報40の消耗品寿命予測時期31および部品メンテナンス時期32に対応している。
 保守必要時期算出部13は、消耗品寿命予測時期31および部品メンテナンス時期32に基づいて、保守必要時期を算出する。保守必要時期には、直近保守までの加工時間と、加工時間+非加工時間と、直近でメンテナンスが実行される予定の日時とが含まれている。保守必要時期は、保守が必要となる時期までの時間で示されてもよいし、保守が必要となる日時で示されてもよい。
 加工中にのみ消耗する消耗品B11が、加工中および非加工中に消耗する消耗品B12よりも先に寿命になり、且つこの寿命が部品メンテナンス時期32よりも近い場合、保守必要時期算出部13は、加工中にのみ消耗する消耗品B11の寿命のタイミングを直近保守時期に設定する。この場合、直近保守時期になると、加工中にのみ消耗する消耗品B11の交換が行われる。
 加工中および非加工中に消耗する消耗品B12が、加工中にのみ消耗する消耗品B11よりも先に寿命になり、且つこの寿命が部品メンテナンス時期32よりも近い場合、保守必要時期算出部13は、加工中および非加工中に消耗する消耗品B12の寿命のタイミングを直近保守時期に設定する。この場合、直近保守時期になると、加工中および非加工中に消耗する消耗品B12の交換が行われる。
 部品メンテナンス時期32が、消耗品B11,B12の寿命の時期よりも早い場合、保守必要時期算出部13は、部品メンテナンス時期32を直近保守時期に設定する。この場合、直近保守時期になると、部品のメンテナンスが行われる。
 図6では、各加工機81における直近保守時期を網掛けで示している。保守必要時期に含まれる加工時間+非加工時間は、消耗品寿命予測時期31において加工中および非加工中に消耗する消耗品の寿命と同じ時間となっている。また、保守必要時期に含まれるメンテナンスの時期は、部品メンテナンス時期32における直近のメンテナンスの時期と同じである。また、保守必要時期に含まれる直近保守までの加工時間は、直近で保守が必要な時期までの時間以下の時間となる。
 図7は、実施の形態1にかかるスケジューリング装置が設定する、加工が実施される場合の消耗品の保守必要時期を説明するための図である。図7では、加工中にのみ消耗する消耗品を消耗品B11で示し、加工中および非加工中に消耗する消耗品を消耗品B12,B13で示している。
 加工が実施される場合、すなわち加工中には、消耗品B11~B13の全てが消耗する。したがって、保守必要時期算出部13は、消耗品B11~B13の中から最短で寿命となる消耗品の寿命のタイミングを、保守が必要な時期である保守必要時期TM1に設定する。ここでは、消耗品B11の寿命が最も残り少ないので、保守必要時期算出部13は、消耗品B11の寿命のタイミングを保守必要時期TM1に設定する。
 図8は、実施の形態1にかかるスケジューリング装置が設定する、加工が実施されない場合の消耗品の保守必要時期を説明するための図である。図8では、加工中にのみ消耗する消耗品を消耗品B11で示し、加工中および非加工中に消耗する消耗品を消耗品B12,B13で示している。
 加工が実施されない場合、すなわち非加工中には、消耗品B12,B13は消耗するが、消耗品B11は消耗しない。したがって、保守必要時期算出部13は、消耗品B12,B13の中から最短で寿命となる消耗品の寿命のタイミングを、保守が必要な時期である保守必要時期TM2に設定する。ここでは、消耗品B13の寿命が最も残り少ないので、保守必要時期算出部13は、消耗品B13の寿命のタイミングを保守必要時期TM2に設定する。
 図9は、実施の形態1にかかるスケジューリング装置が設定する、メンテナンスのための保守必要時期を説明するための図である。図9では、1つ目のメンテナンスをメンテナンスC1で示し、2つ目のメンテナンスをメンテナンスC2で示している。メンテナンスC1の時期は、5月30日の9時であり、メンテナンスC2の時期は、9月29日の9時である。
 保守必要時期算出部13は、メンテナンスC1,C2のうち直近のメンテナンスを、保守が必要な時期である保守必要時期TM3に設定する。ここでは、メンテナンスC1の時期が直近なので、保守必要時期算出部13は、メンテナンスC1のタイミングを保守必要時期TM3に設定する。
 保守必要時期算出部13は、保守必要時期TM1~TM3などを保守必要時期データ42に登録する。保守必要時期TM1~TM3のうち直近の保守必要時期が、直近保守時期である。保守必要時期算出部13は、2つ目のメンテナンスC2の時期を保守必要時期データ42に登録してもよい。保守必要時期算出部13は、保守必要時期データ42を停止時期算出部14に送る。
 停止時期算出部14は、スケジュールデータ41および保守必要時期データ42に基づいて、スケジュールデータ41に登録されているジョブが完了するまでに保守が必要であるか否かを判断する。停止時期算出部14は、保守が必要になると判断した場合には、スケジュールデータ41および保守必要時期データ42に基づいて、保守が必要になる時期である停止時期を算出する。停止時期は、保守のために加工機81を停止させる時期である。すなわち、停止時期は、特定の時期にスケジュールデータ41に対応するスケジュールの実行を停止したうえで保守が必要になる時期である。停止時期の例は、直近保守時期である。
 停止時期算出部14は、算出した停止時期を、停止時期出力部15に送る。また、停止時期算出部14は、スケジュールデータ41および保守必要時期データ42を停止時期出力部15に送る。
 停止時期出力部15は、停止時期、スケジュールデータ41、および保守必要時期データ42を表示装置83に出力する。
 これにより、表示装置83は、停止時期、スケジュールデータ41、および保守必要時期データ42を表示する。なお、停止時期出力部15は、停止時期、スケジュールデータ41、および保守必要時期データ42を、表示装置83以外の外部装置に出力してもよい。この場合、停止時期出力部15は、外部のコンピュータなどに、通信回線などを介して、停止時期、スケジュールデータ41、および保守必要時期データ42を送信する。
 このように、スケジューリング装置10Aは、スケジュールデータ41に登録されているジョブが完了するまでに保守が必要であると判断した場合には、停止時期を算出して提示する。
 つぎに、保守必要時期の算出処理手順と、停止時期の提示処理手順について説明する。図10は、実施の形態1にかかるスケジューリング装置による保守必要時期の算出処理手順を示すフローチャートである。
 スケジューリング装置10Aの保守必要時期算出部13は、各消耗品の消耗品寿命予測時期31を、時期情報作成部12から収集する(ステップS10)。保守必要時期算出部13は、消耗品寿命予測時期31に基づいて、最短で寿命となる消耗品の寿命のタイミングを抽出する(ステップS20)。
 また、保守必要時期算出部13は、各部品の部品メンテナンス時期32を、時期情報作成部12から収集する(ステップS30)。保守必要時期算出部13は、部品メンテナンス時期32に基づいて、最短で必要になるメンテナンスの時期を抽出する(ステップS40)。
 なお、保守必要時期算出部13は、ステップS10の処理をステップS20の処理よりも先に実行し、ステップS30の処理をステップS40の処理よりも先に実行することを条件に、ステップS10からS40の処理を何れの順番で実行してもよい。
 保守必要時期算出部13は、ステップS10からS40の処理を実行した後、保守必要時期を算出し、保守必要時期データ42を作成する(ステップS50)。具体的には、保守必要時期算出部13は、消耗品寿命予測時期31および部品メンテナンス時期32に基づいて保守必要時期データ42を作成する。
 また、保守必要時期算出部13は、最短で寿命となる消耗品の寿命のタイミングおよび最短で必要になるメンテナンスの時期に基づいて、直近保守時期を算出する(ステップS60)。なお、保守必要時期算出部13は、ステップS10,S30の後であれば、何れのタイミングでステップS50の処理を実行してもよい。また、保守必要時期算出部13は、ステップS20,S40の後であれば、何れのタイミングでステップS60の処理を実行してもよい。
 図11は、実施の形態1にかかるスケジューリング装置による停止時期の提示処理手順を示すフローチャートである。スケジューリング装置10Aの停止時期算出部14は、スケジュールデータ41および保守必要時期データ42を取得する(ステップS110)。
 停止時期算出部14は、スケジュールデータ41から、N(Nは自然数)番目のジョブであるジョブ(N)の見積時間を抽出する(ステップS120)。1番目のジョブ(1)は、加工機81が1番目に実行するジョブであり、N番目のジョブ(N)は、加工機81がN番目に実行するジョブである。ここでの、停止時期算出部14は、スケジュールデータ41から、1番目のジョブであるジョブ(1)の見積時間を抽出する。停止時期算出部14は、保守必要時期データ42から、ジョブ(1)~(N)が投入される加工機81の保守必要時期を抽出する(ステップS130)。
 停止時期算出部14は、保守必要時期に基づいて、保守までの期間を算出する。停止時期算出部14は、保守までの期間からジョブ(N)の見積時間を減算する。ここでの停止時期算出部14は、保守までの期間からジョブ(1)の見積時間を減算する(ステップS140)。
 停止時期算出部14は、減算結果が0以下であるか否かを判断する(ステップS150)。すなわち、停止時期算出部14は、保守までの期間が、ジョブ(1)の見積時間よりも長いか否かを判断する。
 減算結果が0よりも大きい場合(ステップS150、No)、停止時期算出部14は、減算結果を保守までの期間とする(ステップS170)。すなわち、停止時期算出部14は、保守までの期間を減算結果の期間で更新する。
 停止時期算出部14は、全てのジョブに対して、保守までの期間から見積時間を減算したか否かを判断する(ステップS180)。
 全てのジョブに対して、保守までの期間から見積時間を減算していない場合(ステップS180、No)、停止時期算出部14は、ステップS120の処理に戻る。停止時期算出部14は、ステップS120の処理として、次のジョブ(N)の見積時間を抽出する。ここでの、停止時期算出部14は、スケジュールデータ41から、2番目のジョブであるジョブ(2)の見積時間を抽出する。この後、停止時期算出部14は、ステップS130からS150の処理を実行する。
 停止時期算出部14は、ステップS150の処理において減算結果が0よりも大きい場合、全てのジョブに対して、保守までの期間から見積時間を減算するまで、ステップS120からS170までの処理を繰り返す。全てのジョブに対して、保守までの期間から見積時間を減算した場合(ステップS180、Yes)、停止時期算出部14は、停止時期の提示処理を終了する。すなわち、全てのジョブに対して、保守までの期間から見積時間を減算しても減算結果が0以下になることはない場合、全てのジョブが完了するまでの間に保守作業は不要であるため、加工機81の停止は不要である。
 また、ステップS150の処理において減算結果が0以下である場合(ステップS150、Yes)、停止時期算出部14は、減算結果が0以下になったジョブの加工中に保守必要時期が来ると判断する。停止時期算出部14は、減算結果が0以下になったジョブの加工中を停止時期として停止時期出力部15に送る。
 停止時期出力部15は、停止時期を表示装置83に出力する。これにより、表示装置83が、停止時期を表示する。このように、スケジューリング装置10Aは、算出した停止時期をユーザに提示する(ステップS160)。
 図12は、実施の形態1にかかるスケジューリング装置による停止時期の算出処理を説明するための図である。ここでは、図7および図8で説明した消耗品B11~B13に対して停止時期算出部14が停止時期を算出する処理について説明する。
 図7および図8で説明したように、加工が実施される場合、すなわち加工中の場合には、保守必要時期算出部13は、消耗品B11~B13の中から最短で寿命となる消耗品B11の寿命のタイミングを、保守必要時期TM1に設定する。また、加工が実施されない場合、すなわち非加工中には、消耗品B12,B13の中から最短で寿命となる消耗品B13の寿命のタイミングを、保守必要時期TM2に設定する。
 停止時期算出部14は、保守必要時期TM1,TM2のうち、直近の保守必要時期である直近保守時期を判定する。ここでの停止時期算出部14は、保守必要時期TM1が直近保守時期であると判定する。停止時期算出部14は、直近保守時期であると判定した保守必要時期TM1が、ジョブの実行中のタイミングであるか否かを判定する。
 図12では、スケジュールに登録されているジョブがジョブ(1),(2)である場合を示している。ジョブ(1)の完了するタイミングが完了タイミングST1であり、ジョブ(2)の完了するタイミングが完了タイミングST2である。
 直近の保守必要時期TM1がジョブ(1)またはジョブ(2)の実行中のタイミングである場合、停止時期算出部14は、図11で説明した処理によって停止時期を算出する。例えば、保守必要時期TM1がジョブ(2)の実行中のタイミングとなっている場合、停止時期算出部14は、ジョブ(2)の実行中が停止時期であると判断する。
 停止時期算出部14は、ジョブ(2)の実行前に保守必要時期TM1を変更することを提示した情報を作成する。具体的には、停止時期算出部14は、ジョブ(1)が完了する完了タイミングST1を保守Mxの開始タイミングに設定することを提示した情報を変更提示情報として作成する。停止時期算出部14は、作成した変更提示情報を停止時期出力部15に送る。
 停止時期出力部15は、変更提示情報を表示装置83に出力する。これにより、表示装置83が、変更提示情報を表示する。これにより、変更提示情報が表示装置83に表示されるので、スケジューリング装置10Aは、ユーザに適切な停止時期を提示することが可能となる。
 このように、スケジューリング装置10Aは、ジョブの実行中に保守が必要となる場合には、ジョブの実行中に保守が必要となることをユーザに通知できる。これにより、スケジューリング装置10Aは、ジョブの実行中に保守によって加工が停止することをユーザに認識させることができるので、ユーザは加工が停止するジョブの実行前に保守作業を実施するように計画を修正することができる。
 これにより、保守によってジョブが途中で中断することを回避できる。各ジョブは、途中で停止されることなく連続して実行される方が、途中で停止されるよりも短時間で完了する。スケジューリング装置10Aは、保守によってジョブが途中で停止しない適切な停止時期をユーザに提示することができるので、ジョブの実行時間が長くなることを防止できる。
 また、ユーザは、予めジョブの実行中に発生する加工機81の保守待ちを認識できるので、保守作業者に、保守の予測時間に保守を実施するよう指示を与えることができる。これにより、保守作業者は、ジョブの途中で保守が必要となるジョブの実行前に保守を実行できる。したがって、スケジューリング装置10Aは、加工機81が停止した後の、保守開始までの無駄な時間を削減することが可能となる。
 ここで、スケジューリング装置10Aのハードウェア構成について説明する。図13は、実施の形態1にかかるスケジューリング装置を実現するハードウェア構成例を示す図である。
 スケジューリング装置10Aは、入力装置300、プロセッサ100、メモリ200、および出力装置400により実現することができる。プロセッサ100の例は、CPU(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、DSP(Digital Signal Processor)ともいう)またはシステムLSI(Large Scale Integration)である。メモリ200の例は、RAM(Random Access Memory)、ROM(Read Only Memory)である。
 スケジューリング装置10Aは、プロセッサ100が、メモリ200で記憶されているスケジューリング装置10Aの動作を実行するための、コンピュータで実行可能な、スケジューリングプログラムであるスケジューラを読み出して実行することにより実現される。スケジューリング装置10Aの動作を実行するためのプログラムであるスケジューリングプログラムは、スケジューリング装置10Aの手順または方法をコンピュータに実行させるものであるともいえる。
 スケジューリング装置10Aで実行されるスケジューリングプログラムは、スケジュール作成部11と、時期情報作成部12と、保守必要時期算出部13と、停止時期算出部14とを含むモジュール構成となっており、これらが主記憶装置上にロードされ、これらが主記憶装置上に生成される。
 入力装置300は、ユーザ指定情報20および稼働履歴情報を受け付けてプロセッサ100に送る。メモリ200は、プロセッサ100が各種処理を実行する際の一時メモリに使用される。メモリ200は、スケジュールデータ41、保守必要時期データ42、停止時期、変更提示情報などを記憶する。出力装置400は、スケジュールデータ41、保守必要時期データ42、停止時期、変更提示情報などを表示装置83に出力する。
 スケジューリングプログラムは、インストール可能な形式または実行可能な形式のファイルで、コンピュータが読み取り可能な記憶媒体に記憶されてコンピュータプログラムプロダクトとして提供されてもよい。また、スケジューリングプログラムは、インターネットなどのネットワーク経由でスケジューリング装置10Aに提供されてもよい。なお、スケジューリング装置10Aの機能について、一部を専用回路などの専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。また、実施の形態2以降で説明するスケジューリング装置10B、学習装置50、および推論装置60についても、スケジューリング装置10Aと同様のハードウェア構成によって実現できる。
 なお、加工機81は、ワイヤ放電加工機に限らず、マシニングセンタ、NC(Numerical Control,数値制御)フライス、またはNC旋盤であってもよい。これらのマシニングセンタ、NCフライス、およびNC旋盤も、消耗品としての工具を用いるので、工具交換のための保守作業が必要となる。また、これらのマシニングセンタ、NCフライス、およびNC旋盤も、加工を実行するためのNCプログラムを用いるので、NCプログラムに設定された経路長さ、軸の送り速度、または回転数から工具の寿命を予測をすることが可能である。したがって、マシニングセンタ、NCフライス、およびNC旋盤に対しても、スケジューリング装置10Aを適用できる。
 このように実施の形態1では、スケジューリング装置10Aが、寿命予測時期およびメンテナンス時期に基づいて保守必要時期を算出し、スケジュールデータ41および保守必要時期に基づいて、加工機81の停止時期を算出している。これにより、加工機81によるジョブの実行中に保守が行われることを防止できるので、複数からなるジョブのトータルの実行時間を短くすることができる。
実施の形態2.
 つぎに、図14から図16を用いて実施の形態2について説明する。実施の形態2では、スケジュールデータ41に登録された順番でジョブを実行すると、ジョブの実行中が保守のタイミングとなる場合に、スケジューリング装置が、スケジュールデータ41を修正する。
 図14は、実施の形態2にかかるスケジューリング装置の構成を示す図である。図14の各構成要素のうち図1に示すスケジューリング装置10Aと同一機能を達成する構成要素については同一符号を付しており、重複する説明は省略する。
 スケジューリング装置10Bは、スケジューリング装置10Aが備える構成要素に加えてスケジュール修正部16を備えている。スケジュール修正部16は、停止時期算出部14に接続されている。
 実施の形態2では、保守必要時期算出部13は、保守にかかる時間である保守時間を含んだ保守必要時期データ42を算出する。すなわち、実施の形態2の保守必要時期データ42は、保守の開始時間、保守の終了時間、保守に要する時間の情報を含んでいる。
 停止時期算出部14は、スケジュールデータ41および保守必要時期データ42に基づいて、スケジュールデータ41に登録されているジョブが保守によって途中で停止することなく実行可能か否かを判断する。スケジュールデータ41に登録されているジョブが保守によって途中で停止する場合には、停止時期算出部14は、スケジュールデータ41および保守必要時期データ42に基づいて、停止時期を算出する。この場合、停止時期算出部14は、停止時期、スケジュールデータ41、および保守必要時期データ42を、スケジュール修正部16に送る。
 スケジュール修正部16は、停止時期、スケジュールデータ41、および保守必要時期データ42に基づいて、スケジュールデータ41を修正する。スケジュール修正部16は、スケジュールデータ41に登録されているジョブが保守によって途中で停止されることがなくなるようにスケジュールデータ41を修正する。このとき、スケジュール修正部16は、スケジュールデータ41内のジョブの実行順序を修正するとともに、保守の開始タイミングを修正する。
 スケジューリング装置10Bは、ジョブの実行中にリアルタイムでスケジュールデータ41を更新してもよい。この場合、スケジュール作成部11は、ジョブの実行中にリアルタイムで、実行中のジョブの加工見積時間を更新する。また、保守必要時期算出部13は、ジョブの実行中にリアルタイムで保守必要時期データ42を更新する。そして、停止時期算出部14は、ジョブの実行中にリアルタイムで停止時期を更新し、スケジュール修正部16は、ジョブの実行中にリアルタイムでスケジュールデータ41を修正して更新する。
 加工機81が1台の場合、スケジュール修正部16は、スケジュールデータ41に登録された順番でジョブを実行すると、実行途中で保守のタイミングとなるジョブが存在するか否かを判断する。以下、実行途中で保守のタイミングとなるジョブを、途中保守ジョブという場合がある。途中保守ジョブは、加工機81の停止時期に実行中となるジョブである。
 途中保守ジョブ(M)(Mは1からN-1の何れかの自然数)が存在する場合、スケジュール修正部16は、このジョブ(M)の次のジョブであるジョブ(M+1)をジョブ(M)よりも先に実行すると、ジョブ(M+1)の実行途中で保守のタイミングとなるか否かを判断する。
 ジョブ(M+1)の実行途中で保守のタイミングとならない場合、スケジュール修正部16は、ジョブ(M)を飛ばしてジョブ(M+1)を先に実行するようにスケジュールデータ41を修正する。すなわち、スケジュール修正部16は、ジョブ(M)とジョブ(M+1)の順番を入れ替える。途中保守ジョブと入れ替えられるジョブが、代替ジョブである。
 ジョブ(M+1)の実行途中で保守のタイミングとなる場合、スケジュール修正部16は、このジョブ(M+1)の次のジョブであるジョブ(M+2)をジョブ(M)およびジョブ(M+1)よりも先に実行すると、ジョブ(M+2)の実行途中で保守のタイミングとなるか否かを判断する。
 ジョブ(M+2)の実行途中で保守のタイミングとならない場合、スケジュール修正部16は、ジョブ(M)およびジョブ(M+1)を飛ばしてジョブ(M+2)を先に実行するようにスケジュールデータ41を修正する。すなわち、スケジュール修正部16は、実行途中で保守のタイミングとならないジョブと、途中保守ジョブとを入れ替える。なお、スケジュール修正部16は、実行途中で保守のタイミングとならないジョブを、最初に途中保守ジョブと判定されたジョブの前に移動させてもよい。
 このように、スケジュール修正部16は、実行途中で保守のタイミングとならないジョブが見つかるまで、ジョブの探索を行う。スケジュール修正部16は、ジョブ(M+1)から最後のジョブ(N)まで順番に、実行途中で保守のタイミングとならないジョブの探索を行う。
 スケジュール修正部16は、実行途中で保守のタイミングとならないジョブを、途中保守ジョブよりも先に実行するようにスケジュールデータ41を修正する処理を繰り返す。
 スケジュール修正部16は、修正が完了したスケジュールデータ41を停止時期出力部15に送る。これにより、停止時期出力部15は、停止時期、保守必要時期データ42、および修正が完了したスケジュールデータ41を表示装置83に出力する。
 なお、途中保守ジョブがある場合、停止時期出力部15は、スケジュール修正部16がスケジュールデータ41を修正することなく停止時期を表示装置83に出力してもよい。すなわち、スケジュール修正部16は、停止時期をそのまま停止時期出力部15に送ってもよい。この場合、停止時期出力部15は、スケジュール修正部16からの停止時期を表示装置83に出力する。なお、停止時期出力部15は、保守必要時期算出部13から停止時期を受付けて表示装置83に出力してもよい。
 スケジューリング装置10Bは、途中保守ジョブがある場合、スケジュールデータ41を修正することなく停止時期を表示装置83に出力するか、ジョブの実行順序を変更するかを選択することができる。スケジュールデータ41を修正するか否かは、予めユーザからの指示に従ってスケジューリング装置10Bに設定しておく。
 加工機81が複数台の場合、スケジュール修正部16は、前述したように同一の加工機81内でのジョブの実行順序を変更することに加え、ジョブの優先順位に従ってジョブを実行する加工機81を変更してもよい。
 また、スケジュール修正部16は、加工機81が複数台の場合、各加工機81の修正される前のスケジュールデータ41の中で最後にジョブが終了する日時である第1の日時と、各加工機81の修正された後のスケジュールデータ41の中で最後にジョブが終了する日時である第2の日時とを比較してもよい。この場合、スケジュール修正部16による比較の結果が、スケジュールデータ41の改善度である。スケジュール修正部16は、第1の日時と第2の日時との差分を算出することで、スケジュールデータ41の改善度を算出することが可能となる。スケジュールデータ41の改善度は、第1の日時と第2の日時との差分であってもよいし、差分を第1の日時で除した値であってもよい。
 スケジュール修正部16は、算出した改善度を停止時期出力部15に送り、停止時期出力部15が改善度を表示装置83に表示させる。これにより、ユーザはスケジュールデータ41の改善度を認識することが可能となる。
 図15は、実施の形態2にかかるスケジューリング装置によるスケジュールデータの修正処理手順を示すフローチャートである。スケジューリング装置10Bのスケジュール修正部16は、停止時期、スケジュールデータ41、および保守必要時期データ42を取得する(ステップS210)。
 スケジュール修正部16は、途中保守ジョブがあるか否かを判断する(ステップS220)。途中保守ジョブがない場合(ステップS220、No)、スケジュール修正部16は、スケジュールデータ41の修正を行わず処理を終了する。
 途中保守ジョブがある場合(ステップS220、Yes)、スケジュール修正部16は、スケジュールデータ41を修正する設定となっているか否かを判断する(ステップS230)。
 スケジュールデータ41を修正する設定となっていない場合(ステップS230、No)、スケジュール修正部16は、取得した停止時期をそのまま停止時期出力部15に出力し(ステップS260)、スケジュールデータ41の修正処理を終了する。
 スケジュールデータ41を修正する設定となっている場合(ステップS230、Yes)、スケジュール修正部16は、同一の加工機81でジョブの実行順序を変更するか否かを判断する(ステップS240)。加工機81が1台の場合、スケジュール修正部16は、同一の加工機81でジョブの実行順序を変更すると判断する。また、同一の加工機81でジョブの実行順序を変更することがユーザによってスケジューリング装置10Bに設定されている場合、スケジュール修正部16は、同一の加工機81でジョブの実行順序を変更すると判断する。
 スケジュール修正部16は、同一の加工機81でジョブの実行順序を変更すると判断した場合(ステップS240、Yes)、次のジョブを先に実行した場合に次のジョブは途中保守ジョブになるか否かを判断する(ステップS250)。
 スケジュール修正部16は、次のジョブを先に実行しても次のジョブが途中保守ジョブにならないと判断した場合(ステップS250、No)、途中保守ジョブにならないジョブである次のジョブと、途中保守ジョブとを入れ替える(ステップS270)。
 このように、スケジュール修正部16は、全ての加工機81に対して投入予定の各ジョブの中から保守必要時期に到達しないジョブを抽出できる場合、保守前にこのジョブが実行されるよう、保守必要時期に到達しないジョブ(次のジョブ)と、途中保守ジョブとを入れ替える。これにより、スケジュール修正部16は、保守回数を削減することができるので、保守回数の削減によって加工機81の稼働率を向上させ、消耗品を寿命間際まで使うことによるコスト削減を実現できる。スケジュール修正部16は、ジョブを入れ替えたスケジュールデータ41を停止時期出力部15に出力し、スケジュールデータ41の修正処理を終了する。
 スケジュール修正部16は、次のジョブを先に実行すると次のジョブも途中保守ジョブになると判断した場合(ステップS250、Yes)、途中保守ジョブになる次のジョブが最後のジョブであるか否かを判断する(ステップS280)。すなわち、スケジュール修正部16は、ステップS250で判断した次のジョブが、最後に実行されるジョブであるか否かを判断する。
 スケジュール修正部16は、途中保守ジョブになる次のジョブが最後のジョブではないと判断すると(ステップS280、No)、ステップS250の処理に戻る。
 スケジュール修正部16は、途中保守ジョブにならないジョブが見つかるまで、ジョブの実行順で順番に、途中保守ジョブにならないジョブを探索する。すなわち、スケジュール修正部16は、ステップS250,S280の処理を繰り返す。
 スケジュール修正部16は、途中保守ジョブになる次のジョブが最後のジョブであると判断すると(ステップS280、Yes)、取得した停止時期をそのまま停止時期出力部15に出力し(ステップS290)、スケジュールデータ41の修正処理を終了する。
 スケジュール修正部16は、ステップS240の処理において、同一の加工機81でジョブの実行順序を変更しないと判断した場合(ステップS240、No)、実行前のジョブの中に途中保守ジョブよりも優先順位が上位のジョブ(以下、優先上位ジョブという)があるか否かを判断する。すなわち、スケジュール修正部16は、複数台の加工機81でジョブの実行順序を変更すると判断した場合、実行前のジョブに優先上位ジョブがあるか否かを判断する(ステップS300)。
 スケジュール修正部16は、優先上位ジョブがあると判断した場合(ステップS300、Yes)、優先上位ジョブを別の加工機81で実行可能か否かを判断する(ステップS310)。
 スケジュール修正部16は、優先上位ジョブを別の加工機81で実行可能と判断した場合(ステップS310、Yes)、途中保守ジョブと優先上位ジョブとを入れ替える(ステップS320)。この場合において、スケジュール修正部16は、優先上位ジョブのうち、現在の途中保守ジョブと入れ替えた場合に優先上位ジョブが新たな途中保守ジョブにならない優先上位ジョブを選択する。スケジュール修正部16は、優先上位ジョブを現在の途中保守ジョブと入れ替えた場合に、優先上位ジョブが新たな途中保守ジョブになる場合には、現在の途中保守ジョブと優先上位ジョブとを入れ替えない。スケジュール修正部16は、ジョブを入れ替えたスケジュールデータ41を停止時期出力部15に出力し、スケジュールデータ41の修正処理を終了する。
 スケジュール修正部16は、優先上位ジョブを別の加工機81では実行できないと判断した場合(ステップS310、No)、優先上位ジョブを実行させるか否かを判断した別の加工機81が、判断対象の加工機81のうちの最後の判断対象の加工機81であるか否かを判断する(ステップS330)。すなわち、スケジュール修正部16は、優先上位ジョブを別の加工機81では実行できないと判断した場合、この別の加工機81以外にも優先上位ジョブを実行できるか否かを判断していない加工機81が残っているか否かを判断する。
 スケジュール修正部16は、優先上位ジョブを実行させるか否かを判断した別の加工機81が、判断対象の加工機81のうちの最後の判断対象の加工機81ではないと判断した場合(ステップS330、No)、ステップS310の処理に戻る。最後の判断対象の加工機81は、優先上位ジョブを実行させるか否かの判断対象となる別の加工機81のうちの、優先上位ジョブを実行させるか否かが最後に判断される加工機81である。
 スケジュール修正部16は、優先上位ジョブを実行させることができる加工機81が見つかるまで、優先上位ジョブを実行させる加工機81を探索する。すなわち、スケジュール修正部16は、ステップS310,S330の処理を繰り返す。
 スケジュール修正部16は、優先上位ジョブを実行させるか否かを判断した別の加工機81が、判断対象の加工機81のうちの最後の判断対象の加工機81であると判断した場合(ステップS330、Yes)、取得した停止時期をそのまま停止時期出力部15に出力し(ステップS340)、スケジュールデータ41の修正処理を終了する。
 スケジュール修正部16は、ステップS300の処理において、優先上位ジョブがないと判断した場合(ステップS300、No)、取得した停止時期をそのまま停止時期出力部15に出力し(ステップS350)、スケジュールデータ41の修正処理を終了する。
 なお、ステップS290,S340,S350の処理では、取得した停止時期をそのまま停止時期出力部15に出力する場合について説明したが、スケジュール修正部16は、最初に途中保守ジョブと判断したジョブの実行前を停止時期に設定してもよい。この場合、スケジュール修正部16は、最初に途中保守ジョブと判断したジョブと、このジョブの1つ前のジョブとの間のタイミングを停止時期に設定し、最初に途中保守ジョブと判断したジョブを、停止時期の終了後に設定する。この場合も、スケジュール修正部16は、設定した停止時期を停止時期出力部15に出力する。
 このように、スケジュール修正部16は、停止時期に実行中となる実行中ジョブである途中保守ジョブの代わりに、全ての加工機81のジョブの中から、停止時期に実行中とならないジョブである代替ジョブを抽出する。スケジュール修正部16は、代替ジョブを抽出できた場合は、代替ジョブと途中保守ジョブとを入れ替えることでスケジュールデータ41を修正する。また、スケジュール修正部16は、代替ジョブを抽出できなかった場合は、保守となる停止時期を実行中ジョブの前に設定し、保守の後に実行中ジョブを設定することでスケジュールデータ41を修正する。
 図16は、実施の形態2にかかるスケジューリング装置によるスケジュールデータの修正処理と、比較例のスケジューリング装置によるスケジュールデータの修正処理とを説明するための図である。スケジューリング装置10Bによるスケジュールデータ41の修正処理では、加工機81が複数台である場合に、スケジュール修正部16が別の加工機81との間でジョブを入れ替える処理について説明する。
 図16の右側には、スケジューリング装置10Bがスケジュールデータ41を修正した場合の加工機81へのジョブの実行の計画とジョブの実行の実績とが示されている。図16の左側には、比較例のスケジューリング装置がスケジュールデータ41を修正しない場合の加工機81へのジョブの実行の計画とジョブの実行の実績とが示されている。
 比較例のスケジューリング装置およびスケジューリング装置10Bが、1号機の加工機81、および2号機の加工機81を用いてジョブを実行する場合がある。この場合において、スケジュールデータ41では、1号機でジョブ(1),(3)の順番でジョブを実行し、2号機でジョブ(2),(4)の順番でジョブを実行することが設定されているとする。
 図16では、ジョブ(1)の完了予定日時が日時T1で示され、ジョブ(3)の完了予定日時が日時T3で示されている。また、ジョブ(2)の完了予定日時が日時T2で示され、ジョブ(4)の完了予定日時が日時T4で示されている。
 ジョブ(1),(3)の合計の実行時間が、ジョブ(2),(4)の合計の実行時間よりも長いとする。また、保守必要時期が保守必要時期TM21で示されている。保守必要時期TM21は、日時T1と日時T3との間であるとする。すなわち、ジョブ(3)の実行中に保守必要時期TM21になるとする。保守必要時期TM21は、例えばワイヤの交換タイミングである。
 比較例のスケジューリング装置は、スケジュールデータ41を変更しない。この場合、1号機は、ジョブ(1)を実行し、その後、ジョブ(3)の実行を開始する。スケジュールデータ41が変更されない場合、ジョブ(3)の実行中に保守必要時期TM21になるので、保守必要時期TM21になると、1号機は停止しジョブ(3)が中断する。そして、保守作業者に1号機への保守指令が通知される。1号機は停止した後、保守作業者による保守の開始を待つ。図16では、保守の開始待ち状態を待ち状態Wxで示している。待ち状態Wxの後、保守作業者による保守が行われる。図16では、保守を保守Mxで示している。図16では、比較例のスケジューリング装置が設定する保守Mxの完了予定日時が日時T5で示されている。
 1号機は、待ち状態Wxの時間および保守Mxの時間が経過した後、ジョブ(3)を再開する。このように、比較例のスケジューリング装置は、スケジュールデータ41を変更しないので、ジョブ(3)が保守Mxによって中断する場合がある。また、待ち状態Wxの間、保守Mxを待つ必要がある。
 一方、スケジューリング装置10Bは、必要に応じてスケジュールデータ41を変更する。具体的には、スケジュール修正部16が、ジョブの実行中に保守Mxが必要となる場合に、特定のジョブが完了するタイミングを保守Mxの開始タイミングとすることで、ジョブの実行中に保守Mxが実行されないようにする。さらに、スケジュール修正部16は、1号機および2号機の両方がジョブを完了する完了時間が、変更前のスケジュールデータ41による完了時間よりも早くなるように、ジョブの実行順序を入れ替える。
 ここでのスケジュール修正部16は、ジョブ(3)の実行中に保守必要時期TM21になる保守Mxを、ジョブ(1)の完了後に移動させる。図16では、スケジューリング装置10Bが設定する保守Mxの完了予定日時が日時T6で示されている。
 また、スケジュール修正部16は、1号機において保守必要時期TM21に重なるジョブ(3)と、2号機において実行予定のジョブ(4)とを入れ替えることで、全体のジョブ(1)~(4)の完了時間を短縮する。
 スケジュール修正部16は、保守Mxのタイミングを変更し、ジョブ(3)と、ジョブ(4)とを入れ替えた新たなスケジュールでスケジュールデータ41を更新する。
 これにより、更新後のスケジュールデータ41では、1号機に対し、ジョブ(1)、保守Mx、ジョブ(4)の順番で処理が実行されることが設定される。また、2号機に対し、ジョブ(2),(3)の順番で処理が実行されることが設定される。図16では、スケジューリング装置10Bが設定するジョブ(4)の完了予定日時が日時T7で示され、ジョブ(3)の完了予定日時が日時T8で示されている。
 更新後のスケジュールデータ41が用いられた場合、1号機が、ジョブ(1)を実行した後、1号機の保守Mxが行われ、その後、1号機がジョブ(4)を実行する。また、2号機は、ジョブ(2),(3)の順番でジョブを実行する。図16では、比較例のスケジューリング装置がスケジュールデータ41を修正せずにジョブ(1)から(4)が実行された場合の、計画からの遅れ時間を時間D1で示している。計画からの遅れ時間は、保守Mxが無い場合の計画に保守Mxが追加された場合の、保守Mxが無い場合の計画からの遅れ時間である。また、図16では、スケジューリング装置10Bがスケジュールデータ41を修正してジョブ(1)から(4)が実行された場合の、計画からの遅れ時間を時間D2で示している。
 このように、スケジュール修正部16は、ジョブの実行中に保守Mxによってジョブが停止することが予測される場合に、スケジュールデータ41を、ジョブの実行中に保守Mxによってジョブが停止しないスケジュールデータ41に修正する。
 実施の形態1では、ジョブが停止することに対する対策を保守作業者が考えて実行する必要があった。実施の形態2では、スケジューリング装置10Bが、ジョブが停止することに対する対策としてスケジュールデータ41を修正するので、保守作業者はジョブが停止することに対する対策を考える必要がない。
 また、スケジューリング装置10Bは、加工の実行状況をフィードバックして、スケジュールデータ41を自動で更新することができるので、常に適切なスケジュールデータ41を提供することができる。例えば、加工機81の段取りをロボットが実行する等のスケジュールの実行を保守作業者がいなくても実行できるように構築した自動化システムにおいては、スケジューリング装置10Bによるスケジュールデータ41の自動更新の効果が大きい。
 また、比較例のスケジューリング装置は、スケジュール実行中の実績のフィードバックが無いので、段取りの情報を格納した段取り情報データベースと実績との間に乖離が起きた場合には、乖離を改善する手段がない。このため、比較例のスケジューリング装置を適用した場合、生産性は悪化する。一方、スケジューリング装置10Bが適用された場合、実績のフィードバック、およびスケジュールの自動組替があるので、段取りと実績との間に乖離が起きた場合にも乖離を改善できる。これにより、スケジューリング装置10Bは、生産性の悪化を防止できる。
 また、スケジューリング装置10Bは、ジョブの実行順序を入れ替えることで1号機および2号機で実行するジョブのうちの最後のジョブが完了する完了時間を早めているので、比較例のスケジューリング装置が作成したスケジュールデータ41よりも計画からの遅れを短くすることができる。また、スケジューリング装置10Bは、保守Mxのタイミングがジョブと重ならないよう保守Mxのタイミングを移動させるのでジョブの中断を回避できる。
 加工機81がワイヤ放電加工機の場合、消耗品には、ワイヤ、加工液フィルタ、イオン交換樹脂などがある。これらの消耗品は、特定のタイミングで寿命となるので、特定のタイミングで交換される。スケジュール修正部16は、消耗品の残り寿命が特定期間よりも短い場合には、この消耗品の交換時期を保守Mxが行われる期間に変更してもよい。この特定期間は、ユーザによって予めスケジューリング装置10Bに設定される。これにより、保守Mxの際に、残り寿命が少ない消耗品の交換が行われることとなる。例えば、保守Mxが開始される日時T1の時点でのワイヤの残り寿命が特定期間よりも短い場合に、スケジュール修正部16は、日時T1をワイヤの交換時期に設定してもよい。
 このように、実施の形態2では、スケジューリング装置10Bが、停止時期がジョブの実行中となっている場合には、スケジュールデータ41、保守必要時期、および停止時期に基づいて、停止時期がジョブの実行中とならないようにスケジュールデータ41を修正している。これにより、加工機81によるジョブの実行中に保守が行われることを防止できるので、複数からなるジョブのトータルの実行時間を短くすることができる。
実施の形態3.
 つぎに、図17から図20を用いて実施の形態3について説明する。実施の形態3では、学習装置が、ジョブの完了までの時間を短縮させるスケジュールデータ41を学習し、推論装置が、ジョブの完了までの時間を短縮させるスケジュールデータ41を推論する。
<学習フェーズ>
 図17は、実施の形態3にかかる学習装置の構成を示す図である。学習装置50は、全てのジョブが完了する完了時間が早められるようにジョブの投入スケジュールであるスケジュールデータ41を学習するコンピュータである。学習装置50は、スケジューリング装置10A内またはスケジューリング装置10B内に配置されてもよいし、スケジューリング装置10A,10Bの外部に配置されてもよい。
 学習装置50は、データ取得部51と、モデル生成部52とを備えている。学習装置50は、学習済モデル記憶部70に接続されている。
 データ取得部51は、加工機81が有する各消耗品の寿命予測時期、または各部品のメンテナンス時期に基づいて算出された、加工機81の保守必要時期データ42を学習用データとして取得する。また、データ取得部51は、各ジョブの加工の見積時間に基づいて作成されたスケジュールデータ41を学習用データとして取得する。また、データ取得部51は、保守必要時期データ42およびスケジュールデータ41に基づいて加工機81によるジョブの実行および保守が実行された場合における、加工機81の運転実績であるスケジュール運転実行結果データ45を学習用データとして取得する。
 すなわち、データ取得部51は、保守必要時期データ42と、スケジュールデータ41と、スケジュール運転実行結果データ45とを学習用データとして取得する。データ取得部51は、学習用データをモデル生成部52に送る。
 モデル生成部52は、学習用データに基づいて、全ての加工機81のスケジュールデータ41の中で最後にジョブが完了する完了日時が早められるようにスケジュールデータ41を学習する。換言すると、モデル生成部52は、保守必要時期データ42と、スケジュールデータ41と、スケジュール運転実行結果データ45とを含む学習用データに基づいて、スケジュールデータ41を学習する。すなわち、モデル生成部52は、保守必要時期データ42およびスケジュールデータ41から、トータルのジョブの完了日時を短縮させることができるスケジュールデータ41を推論するための学習済モデル71を生成する。
 モデル生成部52が用いる学習アルゴリズムは、教師あり学習、教師なし学習、強化学習等の公知のアルゴリズムを用いることができる。一例として、強化学習(Reinforcement Learning)が適用された場合について説明する。強化学習では、ある環境内におけるエージェント(行動主体)が、現在の状態(環境のパラメータ)を観測し、取るべき行動を決定する。エージェントの行動により環境が動的に変化し、エージェントには環境の変化に応じて報酬が与えられる。エージェントはこれを繰り返し、一連の行動を通じて報酬が最も多く得られる行動方針を学習する。強化学習の代表的な手法として、Q学習(Q-Learning)やTD学習(TD-Learning)が知られている。例えば、Q学習の場合、行動価値関数Q(s,a)の一般的な更新式は以下の式(1)で表される。
Figure JPOXMLDOC01-appb-M000001
 式(1)において、stは時刻tにおける環境を表し、atは時刻tにおける行動を表す。行動atにより、状態(環境)はst+1に変わる。rt+1はその状態の変化によってもらえる報酬を表し、γは割引率を表し、αは学習係数を表す。なお、γは0<γ≦1、αは0<α≦1の範囲とする。スケジュール運転実行結果データ45が行動atとなり、保守必要時期データ42およびスケジュールデータ41が状態stとなり、学習装置50は、時刻tの状態stにおける最良の行動atを学習する。スケジュール運転実行結果データ45は、修正後のスケジュールデータ41に対応している。したがって、学習装置50は、最良の修正後のスケジュールデータ41を学習する。換言すると、学習装置50は、ジョブのトータルの実行時間を短くすることができるように修正されたスケジュールデータ41を学習する。
 式(1)で表される更新式は、時刻t+1における最もQ値の高い行動aの行動価値Qが、時刻tにおいて実行された行動aの行動価値Qよりも大きければ、行動価値Qを大きくし、逆の場合は、行動価値Qを小さくする。換言すれば、学習装置50は、時刻tにおける行動aの行動価値Qを、時刻t+1における最良の行動価値Qに近づけるように、行動価値関数Q(s,a)を更新する。それにより、ある環境における最良の行動価値Qが、それ以前の環境における行動価値Qに順次伝播していくようになる。
 上記のように、モデル生成部52が強化学習によって学習済モデル71を生成する場合、モデル生成部52は、報酬計算部53と、関数更新部54とを有している。
 報酬計算部53は、スケジュール運転実行結果データ45から算出される最後のジョブの完了日時に基づいて、報酬rを計算する。例えば、報酬計算部53は、最後のジョブの完了日時が早い場合には報酬rを増大させ(例えば「1」の報酬を与える)、他方、最後のジョブの完了日時が遅い場合には報酬rを低減する(例えば「-1」の報酬を与える)。
 関数更新部54は、報酬計算部53によって計算される報酬に従って、スケジュール運転実行結果データ45に対応する修正後のスケジュールデータ41を決定するための関数を更新し、学習済モデル記憶部70に出力する。例えばQ学習の場合、関数更新部54は、式(1)で表される行動価値関数Q(st,at)をスケジュールデータ41を算出するための関数として用いる。
 学習装置50は、以上のような学習を繰り返し実行する。学習済モデル記憶部70は、関数更新部54によって更新された行動価値関数Q(st,at)、すなわち、学習済モデル71を記憶する。
 次に、図18を用いて、学習装置50によるスケジュールデータ41の学習処理手順について説明する。図18は、実施の形態3にかかる学習装置による学習処理の処理手順を示すフローチャートである。
 データ取得部51は、保守必要時期データ42と、スケジュールデータ41と、スケジュール運転実行結果データ45とを学習用データとして取得する(ステップS410)。
 モデル生成部52は、保守必要時期データ42、スケジュールデータ41、およびスケジュール運転実行結果データ45に基づいて報酬を計算する(ステップS420)。具体的には、報酬計算部53は、保守必要時期データ42、スケジュールデータ41、およびスケジュール運転実行結果データ45を取得し、予め定められた報酬基準である最後のジョブの完了日時に基づいて報酬を増加させるか、または報酬を減じるかを判断する。
 報酬計算部53は、報酬を増大させると判断した場合に(ステップS420、報酬増大基準)、報酬を増やす(ステップS430)。一方、報酬計算部53は、報酬を減少させると判断した場合に(ステップS420、報酬減少基準)、報酬を減らす(ステップS440)。
 関数更新部54は、報酬計算部53によって計算された報酬に基づいて、学習済モデル記憶部70が記憶する式(1)で表される行動価値関数Q(st,at)を更新する(ステップS450)。
 学習装置50は、以上のステップS410からS450までのステップを繰り返し実行し、生成された行動価値関数Q(st,at)を学習済モデル71として学習済モデル記憶部70に記憶させる。
 なお、実施の形態3に係る学習装置50は、学習済モデル71を学習装置50の外部に設けられた学習済モデル記憶部70に記憶させるものとしたが、学習済モデル記憶部70は、学習装置50の内部に配置されていてもよい。
<活用フェーズ>
 図19は、実施の形態3にかかる推論装置の構成を示す図である。推論装置60は、学習済モデル71を用いて、保守必要時期データ42およびスケジュールデータ41から修正後のスケジュールデータ41を推論するコンピュータである。
 推論装置60は、最後のジョブが完了する完了時間が短縮された修正後のスケジュールデータ41を推論する。推論装置60は、スケジューリング装置10A内またはスケジューリング装置10B内に配置されてもよいし、スケジューリング装置10A,10Bの外部に配置されてもよい。実施の形態3では、推論装置60がスケジューリング装置10A内に配置されている場合について説明する。
 推論装置60は、データ取得部61と、推論部62とを備える。データ取得部61は、保守必要時期データ42およびスケジュールデータ41を取得する。推論部62は、学習済モデル71を用いて、修正後のスケジュールデータである修正スケジュールデータ41Xを推論し、修正スケジュールデータ41Xを停止時期出力部15に出力する。すなわち、推論部62は、学習済モデル71にデータ取得部61が取得した保守必要時期データ42およびスケジュールデータ41を入力することで、最後のジョブが完了する完了時間が短縮された修正スケジュールデータ41Xを推論することができる。停止時期出力部15は、修正スケジュールデータ41Xを表示装置83に表示させる。
 なお、実施の形態3では、推論装置60が、モデル生成部52が学習した学習済モデル71を用いて、修正スケジュールデータ41Xを推論する場合について説明したが、推論装置60は、学習装置50以外の他の学習装置から学習済モデル71を取得し、この学習済モデル71に基づいて修正スケジュールデータ41Xを推論してもよい。
 つぎに、図20を用いて、推論装置60が、修正スケジュールデータ41Xを推論する処理の処理手順について説明する。図20は、実施の形態3にかかる推論装置による推論処理の処理手順を示すフローチャートである。
 データ取得部61は、保守必要時期データ42およびスケジュールデータ41を推論用データとして取得する(ステップS510)。推論部62は、学習済モデル記憶部70に記憶されている学習済モデル71に、推論用データである保守必要時期データ42およびスケジュールデータ41を入力し(ステップS520)、修正スケジュールデータ41Xを得る。推論部62は、得られたデータである、修正スケジュールデータ41Xを、停止時期出力部15に出力する(ステップS530)。停止時期出力部15は、修正スケジュールデータ41Xを表示装置83に表示させる。
 加工機81の制御装置82は、修正スケジュールデータ41Xに従って、ジョブを実行する。また、保守作業者は、修正スケジュールデータ41Xに従って、保守を実行する。これにより、推論装置60は、全てのジョブを完了させるまでの時間を短縮させることが可能となる。
 なお、実施の形態3では、推論部62が用いる学習アルゴリズムに強化学習を適用した場合について説明したが、これに限られるものではない。学習アルゴリズムについては、強化学習以外にも、教師あり学習、教師なし学習、又は半教師あり学習等を適用することも可能である。
 また、モデル生成部52に用いられる学習アルゴリズムとしては、特徴量そのものの抽出を学習する、深層学習(Deep Learning)を用いることもでき、モデル生成部52は、他の公知の方法、例えばニューラルネットワーク、遺伝的プログラミング、機能論理プログラミング、サポートベクターマシンなどに従って機械学習を実行してもよい。
 なお、学習装置50および推論装置60は、例えば、ネットワークを介してスケジューリング装置10Aに接続された、スケジューリング装置10Aとは別個の装置であってもよい。また、学習装置50および推論装置60は、クラウドサーバ上に存在していてもよい。
 また、モデル生成部52は、複数の制御装置82および複数のスケジューリング装置10Aから取得される学習用データを用いて、修正スケジュールデータ41Xを学習してもよい。なお、モデル生成部52は、同一のエリアで使用される複数の制御装置82および複数のスケジューリング装置10Aから学習用データを取得してもよいし、異なるエリアで独立して動作する複数の制御装置82および複数のスケジューリング装置10Aから収集される学習用データを利用して修正スケジュールデータ41Xを学習してもよい。また、学習装置50は、学習用データを収集する制御装置82およびスケジューリング装置10Aを途中で対象に追加し、或いは、対象から除去することも可能である。さらに、ある制御装置82およびスケジューリング装置10Aに関して修正スケジュールデータ41Xを学習した学習装置50が、この制御装置82およびスケジューリング装置10Aとは別の制御装置82およびスケジューリング装置10Aに適用され、当該別の制御装置82およびスケジューリング装置10Aに対し、修正スケジュールデータ41Xを再学習して学習済モデル71を更新するようにしてもよい。
 また、学習装置50は、ユーザに指定された指定期間内における全ての加工機81の合計のジョブ実行時間の割合が大きくなる修正スケジュールデータ41Xを推論するための学習済モデル71を生成してもよい。換言すると、学習装置50は、ユーザに指定された指定期間内における全ての加工機81の保守時間の合計を短縮できる修正スケジュールデータ41Xを推論するための学習済モデル71を生成してもよい。
 この場合、推論装置60は、学習装置50が生成した学習済モデル71を用いて、ユーザに指定された指定期間内における全ての加工機81の合計のジョブ実行時間の割合が大きくなる修正スケジュールデータ41Xを推論する。
 学習済モデル71が、ユーザに指定された指定期間内における全ての加工機81の保守時間の合計を短縮できるモデルである場合、学習装置50および推論装置60は、ユーザに指定された指定期間内における加工機81の全体の稼働率を高めることができる。
 また、学習装置50は、各ジョブの納期を守りつつ、ユーザに指定された指定期間内における全ての加工機81の合計のジョブ実行数が多くなる修正スケジュールデータ41Xを推論するための学習済モデル71を生成してもよい。これにより、学習装置50は、ユーザに指定された指定期間内に実行されるジョブの数を増やすことができる。
 この場合、推論装置60は、学習装置50が生成した学習済モデル71を用いて、ユーザに指定された指定期間内における全ての加工機81の合計のジョブ実行数が多くなる修正スケジュールデータ41Xを推論する。
 このように、実施の形態3によれば、学習済モデル71が、修正スケジュールデータ41Xにおける最後のジョブの実行が完了するまでの時間を早める修正スケジュールデータ41Xを推論するので、最後のジョブの実行が完了するまでの時間を早めることができる。これにより、加工機81は、ジョブのトータルの実行時間を短縮することが可能となる。
 また、学習済モデル71が、特定期間における全ての加工機81の合計のジョブ実行時間の割合が大きくなる修正スケジュールデータ41Xを推論するので、特定期間における全ての加工機81の合計のジョブ実行時間の割合を大きくすることができる。これにより、加工機81は、ジョブを効率良く実行することが可能となる。
 また、学習済モデル71が、各ジョブの納期を守りつつ、特定期間における全ての加工機81の合計のジョブ実行数が多くなる修正スケジュールデータ41Xを推論するので、特定期間における全ての加工機81の合計のジョブ実行数を増やすことができる。これにより、加工機81は、ジョブを効率良く実行することが可能となる。
 以上の実施の形態に示した構成は、一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、実施の形態同士を組み合わせることも可能であるし、要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
 10A,10B スケジューリング装置、11 スケジュール作成部、12 時期情報作成部、13 保守必要時期算出部、14 停止時期算出部、15 停止時期出力部、16 スケジュール修正部、20 ユーザ指定情報、21 加工指示情報、22 ワークID情報、23 加工プログラムID情報、24 対応時間情報、31 消耗品寿命予測時期、32 部品メンテナンス時期、40 時期情報、41 スケジュールデータ、41X 修正スケジュールデータ、42 保守必要時期データ、45 スケジュール運転実行結果データ、50 学習装置、51,61 データ取得部、52 モデル生成部、53 報酬計算部、54 関数更新部、60 推論装置、62 推論部、70 学習済モデル記憶部、71 学習済モデル、81 加工機、82 制御装置、83 表示装置、100 プロセッサ、200 メモリ、300 入力装置、400 出力装置。

Claims (13)

  1.  加工機に対して複数のジョブを投入するためのスケジュールを示すスケジュールデータを作成するスケジューリング装置であって、
     各ジョブの加工に要する時間が見積もられた加工見積時間に基づいて、前記スケジュールデータを作成するスケジュール作成部と、
     前記加工機が用いる消耗品の予測された寿命の時期である寿命予測時期、および前記加工機が有する部品のメンテナンスの時期であるメンテナンス時期に基づいて、前記加工機に対して保守が必要となる時期である保守必要時期を算出する保守必要時期算出部と、
     前記スケジュールデータおよび前記保守必要時期に基づいて、前記ジョブの実行中に前記保守によって前記加工機による加工が停止する時期である停止時期を算出する停止時期算出部と、
     前記停止時期を外部装置に出力する出力部と、
     を備えることを特徴とするスケジューリング装置。
  2.  加工機に対して複数のジョブを投入するためのスケジュールを示すスケジュールデータを作成するスケジューリング装置であって、
     各ジョブの加工に要する時間が見積もられた加工見積時間に基づいて、前記スケジュールデータを作成するスケジュール作成部と、
     前記加工機が用いる消耗品の予測された寿命の時期である寿命予測時期、および前記加工機が有する部品のメンテナンスの時期であるメンテナンス時期に基づいて、前記加工機に対して保守が必要となる時期である保守必要時期を算出する保守必要時期算出部と、
     前記スケジュールデータおよび前記保守必要時期に基づいて、前記ジョブの実行中に前記保守によって前記加工機による加工が停止する時期である停止時期を算出する停止時期算出部と、
     前記停止時期が前記ジョブのうちの何れかのジョブの実行中になる場合には、前記スケジュールデータ、前記保守必要時期、および前記停止時期に基づいて、前記停止時期が前記ジョブの実行中とならないように前記スケジュールデータを修正するスケジュール修正部と、
     を備えることを特徴とするスケジューリング装置。
  3.  前記スケジュール作成部は、
     前記加工機のそれぞれに対して前記スケジュールデータを作成し、
     前記スケジュール修正部は、
     前記停止時期に実行中となるジョブである実行中ジョブの代わりに、全ての前記加工機のジョブの中から、前記停止時期に実行中とならないジョブである代替ジョブを抽出できた場合は、前記代替ジョブと前記実行中ジョブとを入れ替えることで前記スケジュールデータを修正し、前記代替ジョブを抽出できなかった場合は、前記保守を前記実行中ジョブの前に設定し、前記保守の後に前記実行中ジョブを設定することで前記スケジュールデータを修正する、
     ことを特徴とする請求項2に記載のスケジューリング装置。
  4.  前記スケジュール修正部は、
     全ての前記スケジュールデータの中で最後にジョブが終了する日時が早くなるように、前記スケジュールデータを修正する、
     ことを特徴とする請求項3に記載のスケジューリング装置。
  5.  前記スケジュール修正部は、
     前記ジョブに設定された優先順位に基づいて前記スケジュールデータを修正する、
     ことを特徴とする請求項2から4の何れか1つに記載のスケジューリング装置。
  6.  前記スケジュール作成部は、
     前記スケジュールデータに対応するスケジュールの実行中に、実行中の前記ジョブの前記加工見積時間をリアルタイムで更新し、
     前記保守必要時期算出部は、
     前記スケジュールデータに対応するスケジュールの実行中に、前記保守必要時期をリアルタイムで更新し、
     前記スケジュール修正部は、
     更新後の前記加工見積時間および更新後の前記保守必要時期に基づいて、前記スケジュールデータを修正する、
     ことを特徴とする請求項2から5の何れか1つに記載のスケジューリング装置。
  7.  前記スケジュール修正部は、
     修正する前の前記スケジュールデータの中で最後にジョブが終了する日時である第1の日時と、修正後の前記スケジュールデータの中で最後にジョブが終了する日時である第2の日時とを比較することで、修正による前記スケジュールデータの改善度を算出し、
     前記改善度は、外部装置に出力される、
     ことを特徴とする請求項2から6の何れか1つに記載のスケジューリング装置。
  8.  各ジョブの加工に要する時間が見積もられた加工見積時間に基づいて作成されたスケジュールデータと、加工機が用いる消耗品の予測された寿命の時期である寿命予測時期および前記加工機が有する部品のメンテナンスの時期であるメンテナンス時期に基づいて算出された前記加工機に対して保守が必要となる時期である保守必要時期と、修正された前記スケジュールデータである修正スケジュールデータおよび前記保守必要時期に従って前記加工機が加工を実行した場合の実行結果を示すスケジュール運転実行結果データと、を含む学習用データを取得するデータ取得部と、
     前記学習用データを用いて、前記スケジュールデータおよび前記保守必要時期から前記スケジュール運転実行結果データに対応する前記修正スケジュールデータを推論するための学習済モデルを生成するモデル生成部と、
     を備え、
     前記学習済モデルは、前記修正スケジュールデータにおける最後のジョブの実行が完了するまでの時間を早める前記修正スケジュールデータを推論するためのモデルである、
     ことを特徴とする学習装置。
  9.  各ジョブの加工に要する時間が見積もられた加工見積時間に基づいて作成されたスケジュールデータと、加工機が用いる消耗品の予測された寿命の時期である寿命予測時期および前記加工機が有する部品のメンテナンスの時期であるメンテナンス時期に基づいて算出された前記加工機に対して保守が必要となる時期である保守必要時期と、を推論用データとして取得するデータ取得部と、
     修正された前記スケジュールデータである修正スケジュールデータを推論するための学習済モデルを用いて、前記スケジュールデータおよび前記保守必要時期から前記修正スケジュールデータを推論する推論部と、
     を備え、
     前記学習済モデルは、前記修正スケジュールデータにおける最後のジョブの実行が完了するまでの時間を早める前記修正スケジュールデータを推論するためのモデルである、
     ことを特徴とするスケジューリング装置。
  10.  各ジョブの加工に要する時間が見積もられた加工見積時間に基づいて作成されたスケジュールデータと、加工機が用いる消耗品の予測された寿命の時期である寿命予測時期および前記加工機が有する部品のメンテナンスの時期であるメンテナンス時期に基づいて算出された前記加工機に対して保守が必要となる時期である保守必要時期と、修正された前記スケジュールデータである修正スケジュールデータおよび前記保守必要時期に従って前記加工機が加工を実行した場合の実行結果を示すスケジュール運転実行結果データと、を含む学習用データを取得するデータ取得部と、
     前記学習用データを用いて、前記スケジュールデータおよび前記保守必要時期から前記スケジュール運転実行結果データに対応する前記修正スケジュールデータを推論するための学習済モデルを生成するモデル生成部と、
     を備え、
     前記学習済モデルは、特定期間における全ての前記加工機の合計のジョブ実行時間の割合が大きくなる前記修正スケジュールデータを推論するモデルである、
     ことを特徴とする学習装置。
  11.  各ジョブの加工に要する時間が見積もられた加工見積時間に基づいて作成されたスケジュールデータと、加工機が用いる消耗品の予測された寿命の時期である寿命予測時期および前記加工機が有する部品のメンテナンスの時期であるメンテナンス時期に基づいて算出された前記加工機に対して保守が必要となる時期である保守必要時期と、を推論用データとして取得するデータ取得部と、
     修正された前記スケジュールデータである修正スケジュールデータを推論するための学習済モデルを用いて、前記スケジュールデータおよび前記保守必要時期から前記修正スケジュールデータを推論する推論部と、
     前記学習済モデルは、特定期間における全ての前記加工機の合計のジョブ実行時間の割合が大きくなる前記修正スケジュールデータを推論するモデルである、
     ことを特徴とするスケジューリング装置。
  12.  各ジョブの加工に要する時間が見積もられた加工見積時間に基づいて作成されたスケジュールデータと、加工機が用いる消耗品の予測された寿命の時期である寿命予測時期および前記加工機が有する部品のメンテナンスの時期であるメンテナンス時期に基づいて算出された前記加工機に対して保守が必要となる時期である保守必要時期と、修正された前記スケジュールデータである修正スケジュールデータおよび前記保守必要時期に従って前記加工機が加工を実行した場合の実行結果を示すスケジュール運転実行結果データと、を含む学習用データを取得するデータ取得部と、
     前記学習用データを用いて、前記スケジュールデータおよび前記保守必要時期から前記スケジュール運転実行結果データに対応する前記修正スケジュールデータを推論するための学習済モデルを生成するモデル生成部と、
     を備え、
     前記学習済モデルは、各ジョブの納期を守りつつ、特定期間における全ての前記加工機の合計のジョブ実行数が多くなる前記修正スケジュールデータを推論するモデルである、
     ことを特徴とする学習装置。
  13.  各ジョブの加工に要する時間が見積もられた加工見積時間に基づいて作成されたスケジュールデータと、加工機が用いる消耗品の予測された寿命の時期である寿命予測時期および前記加工機が有する部品のメンテナンスの時期であるメンテナンス時期に基づいて算出された前記加工機に対して保守が必要となる時期である保守必要時期と、を推論用データとして取得するデータ取得部と、
     修正された前記スケジュールデータである修正スケジュールデータを推論するための学習済モデルを用いて、前記スケジュールデータおよび前記保守必要時期から前記修正スケジュールデータを推論する推論部と、
     前記学習済モデルは、各ジョブの納期を守りつつ、特定期間における全ての前記加工機の合計のジョブ実行数が多くなる前記修正スケジュールデータを推論するモデルである、
     ことを特徴とするスケジューリング装置。
PCT/JP2020/031117 2020-08-18 2020-08-18 スケジューリング装置および学習装置 WO2022038672A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202080099295.6A CN115916460A (zh) 2020-08-18 2020-08-18 调度装置及学习装置
JP2021504841A JP6929484B1 (ja) 2020-08-18 2020-08-18 スケジューリング装置および学習装置
PCT/JP2020/031117 WO2022038672A1 (ja) 2020-08-18 2020-08-18 スケジューリング装置および学習装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/031117 WO2022038672A1 (ja) 2020-08-18 2020-08-18 スケジューリング装置および学習装置

Publications (1)

Publication Number Publication Date
WO2022038672A1 true WO2022038672A1 (ja) 2022-02-24

Family

ID=77456354

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/031117 WO2022038672A1 (ja) 2020-08-18 2020-08-18 スケジューリング装置および学習装置

Country Status (3)

Country Link
JP (1) JP6929484B1 (ja)
CN (1) CN115916460A (ja)
WO (1) WO2022038672A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7387070B1 (ja) 2023-02-16 2023-11-27 三菱電機株式会社 スケジューリング装置、スケジューリングシステム、スケジューリング方法、およびスケジューリングプログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023188214A1 (ja) * 2022-03-30 2023-10-05 富士通株式会社 情報処理プログラム、情報処理方法および情報処理装置

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991001850A1 (fr) * 1989-08-10 1991-02-21 Fujitsu Limited Systeme de commande de procede de fabrication
JPH1050571A (ja) * 1996-08-05 1998-02-20 Nec Corp 生産制御方法及び生産制御装置
JP2012138039A (ja) * 2010-12-28 2012-07-19 Hitachi Engineering & Services Co Ltd 生産シミュレーション装置
WO2014002179A1 (ja) * 2012-06-26 2014-01-03 東芝三菱電機産業システム株式会社 データ収集システム、及びデータ収集システムプログラム
JP2014187211A (ja) * 2013-03-22 2014-10-02 Toshiba Corp 電子デバイスの製造支援システム、製造支援方法及び製造支援プログラム
JP2016030438A (ja) * 2014-07-30 2016-03-07 理想科学工業株式会社 画像記録装置
JP2017010487A (ja) * 2015-06-26 2017-01-12 セイコーエプソン株式会社 プリンター制御装置、プリンター、プリンター制御方法
JP2018147273A (ja) * 2017-03-07 2018-09-20 オークマ株式会社 工具管理装置
JP2019030968A (ja) * 2017-08-04 2019-02-28 ローランドディー.ジー.株式会社 印刷データの処理装置、処理方法及び処理プログラム。
JP2019139755A (ja) * 2018-02-06 2019-08-22 ファナック株式会社 研磨工具摩耗量予測装置、機械学習装置及びシステム
JP2020013464A (ja) * 2018-07-20 2020-01-23 中日本炉工業株式会社 処理装置の稼働管理システム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6017525B2 (ja) * 2014-12-17 2016-11-02 ファナック株式会社 消耗品交換機能を有するワイヤ放電加工機用制御装置

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991001850A1 (fr) * 1989-08-10 1991-02-21 Fujitsu Limited Systeme de commande de procede de fabrication
JPH1050571A (ja) * 1996-08-05 1998-02-20 Nec Corp 生産制御方法及び生産制御装置
JP2012138039A (ja) * 2010-12-28 2012-07-19 Hitachi Engineering & Services Co Ltd 生産シミュレーション装置
WO2014002179A1 (ja) * 2012-06-26 2014-01-03 東芝三菱電機産業システム株式会社 データ収集システム、及びデータ収集システムプログラム
JP2014187211A (ja) * 2013-03-22 2014-10-02 Toshiba Corp 電子デバイスの製造支援システム、製造支援方法及び製造支援プログラム
JP2016030438A (ja) * 2014-07-30 2016-03-07 理想科学工業株式会社 画像記録装置
JP2017010487A (ja) * 2015-06-26 2017-01-12 セイコーエプソン株式会社 プリンター制御装置、プリンター、プリンター制御方法
JP2018147273A (ja) * 2017-03-07 2018-09-20 オークマ株式会社 工具管理装置
JP2019030968A (ja) * 2017-08-04 2019-02-28 ローランドディー.ジー.株式会社 印刷データの処理装置、処理方法及び処理プログラム。
JP2019139755A (ja) * 2018-02-06 2019-08-22 ファナック株式会社 研磨工具摩耗量予測装置、機械学習装置及びシステム
JP2020013464A (ja) * 2018-07-20 2020-01-23 中日本炉工業株式会社 処理装置の稼働管理システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7387070B1 (ja) 2023-02-16 2023-11-27 三菱電機株式会社 スケジューリング装置、スケジューリングシステム、スケジューリング方法、およびスケジューリングプログラム

Also Published As

Publication number Publication date
CN115916460A (zh) 2023-04-04
JP6929484B1 (ja) 2021-09-01
JPWO2022038672A1 (ja) 2022-02-24

Similar Documents

Publication Publication Date Title
JP6457472B2 (ja) 制御システム及び機械学習装置
CN108345273B (zh) 数值控制装置及机器学习装置
WO2022038672A1 (ja) スケジューリング装置および学習装置
JP5969676B1 (ja) 工作機械の工具補正の頻度を最適化する機械学習装置及び機械学習方法、並びに該機械学習装置を備えた工作機械
KR102016270B1 (ko) 열간 자유단조 공정의 작업 계획 최적화 시스템 및 방법
JP2019117458A (ja) 制御装置及び機械学習装置
JP6348098B2 (ja) 機械学習を使った中子の溶着位置決定機能を備えたワイヤ放電加工機のシミュレーション装置
JP2019111637A (ja) 切粉除去装置及び情報処理装置
JP6659652B2 (ja) 加工条件調整装置及び機械学習装置
JP2019162712A (ja) 制御装置、機械学習装置及びシステム
US20170293289A1 (en) Manufacturing management system capable of improving availability ratio of manufacturing cell
CN110347120A (zh) 控制装置以及机器学习装置
JP6781191B2 (ja) プログラマブルコントローラ及び機械学習装置
Lim et al. A multi-agent system using iterative bidding mechanism to enhance manufacturing agility
Jong et al. The multi-layered job-shop automatic scheduling system of mould manufacturing for Industry 3.5
WO2020012581A1 (ja) 機械学習装置、数値制御加工プログラム生成装置および機械学習方法
JP6880343B1 (ja) スケジューラシステム、スケジューラ管理装置および機械学習装置
JP6703020B2 (ja) 制御装置及び機械学習装置
US11931841B2 (en) Prediction device
CN113492583B (zh) 废页预测
EP2551802A1 (en) Processing a technical system
CN116323107A (zh) 规划具有分层结构化任务和并行化选项的技术过程
Aissani et al. Efficient and effective reactive scheduling of manufacturing system using Sarsa-multi-objective agents
Paschko et al. Material flow control in Remanufacturing Systems with random failures and variable processing times
JP7387070B1 (ja) スケジューリング装置、スケジューリングシステム、スケジューリング方法、およびスケジューリングプログラム

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2021504841

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20950238

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20950238

Country of ref document: EP

Kind code of ref document: A1