Substrate processing device, method for controlling substrate processing device, and storage medium storing program

The substrate processing apparatus adjusts transfer schedules by incorporating margin times and sensor feedback to address processing time fluctuations, ensuring timely processing and minimizing post-processing waiting times.

JP2025099151APending Publication Date: 2025-07-03EBARA CORP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2023215584
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-21
Publication Date
2025-07-03

AI Technical Summary

Technical Problem

Conventional substrate processing systems fail to maintain the limit value of processing after-time due to fluctuations in processing end times, leading to disruptions in the transfer schedule and potential substrate damage.

Method used

A substrate processing apparatus with a control device that generates a transfer schedule by adding a positive or negative margin time calculated using a learning network or statistical method to the actual processing time, and adjusts the schedule based on sensor detections to ensure timely processing and minimize post-processing waiting times.

Benefits of technology

The solution effectively maintains the limit value of processing after-time, reducing the risk of substrate damage and optimizing the transfer schedule by accounting for processing time variations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025099151000001_ABST
    Figure 2025099151000001_ABST
Patent Text Reader

Abstract

To suppress or prevent such a situation that the limit value of a left-intact time after processing cannot be observed, even when a processing-completion time varies.SOLUTION: A positive or negative margin time calculated by a learning network or a statistical calculation method by using a measured processing time obtained by actually applying first processing to a plurality of substrates in a first processing tank is added to the processing time of the first processing that is set to a recipe, so as to generate a transport schedule. In place of this, or in addition to this, an estimated processing completion time at which all of one or more pieces of processing in the first processing tank is completed, is calculated from detection values acquired from sensors, and when it is determined that the estimated processing completion time lags behind a scheduled transport start time that is set to the transport schedule, the scheduled transport start time may be corrected to the estimated processing completion time and the transport schedule may be adjusted in accordance with the scheduled transport start time after correction.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a substrate processing apparatus, a control method for the substrate processing apparatus, and a storage medium storing a program for causing a computer to execute the control method for the substrate processing apparatus.

Background Art

[0002] In an electrolytic plating apparatus, as one of the measures for improving plating performance, it may be necessary to adjust the plating end timing based on the measured value of the plating film thickness in order to reduce the variation in the plating film thickness for each substrate (for example, a wafer). This is because the plating film formation rate varies depending on individual differences between modules, individual differences in substrates, differences in chemical solution components, etc., even with the same set plating current.

[0003] In a conventional transfer scheduler, a substrate transfer schedule was generated in advance based on the plating processing time (recipe setting time) of a recipe specified in advance, and then the substrate processing was performed. This specification was premised on the fact that the actual required time in the plating process did not vary. However, when the actual required time varies, it becomes impossible to transfer according to the previously generated substrate transfer schedule, and due to the disruption of the transfer, there is a possibility that the post-treatment standing time in the processing module (the time the wafer is immersed in the plating solution after the plating process until it is unloaded) cannot meet the limit value. Such problems can occur not only in plating but also in other substrate processing.

[0004] As a conventional method for adjusting a transfer schedule, for example, there are techniques described in Patent Documents 1 to 3. Patent Document 1 describes control for performing rescheduling when the remaining time until unloading is equal to or longer than the rescheduling required time when the processing end time of a processing unit is detected. Patent Document 2 describes storing the measured processing time of the lot processed immediately before in a semiconductor manufacturing apparatus in association with a data tag (array of recipes), and predicting the processing time of the lot to be processed next based on the stored measured processing time. Patent Document 3 describes that, in rescheduling, first, a provisional schedule is adjusted as a block in terms of time, and then the entire schedule is recreated.

Prior Art Documents

Patent Documents

[0005]

Patent Document 1

Patent Document 2

Patent Document 3

Summary of the Invention

Problems to be Solved by the Invention

[0006] In the conventional method for adjusting a transfer schedule, when the actual processing end time of a substrate is later than the processing end time set in a recipe and the processing after-time (the time during which the substrate is left in a processing solution or in a processing module from the completion of processing until unloading) cannot be kept within the limit value due to disturbance in transfer, such a situation is not considered.

[0007] An object of the present invention is to solve at least a part of the above-described problems. One of the objects of the present invention is to suppress or prevent a situation in which the limit value of the processing after-time cannot be kept even when the processing end time fluctuates.

Means for Solving the Problems

[0008] According to one aspect of the present invention, there is provided a substrate processing apparatus, comprising: a plurality of processing units for performing processing on a substrate; a substrate processing apparatus comprising: a processing tank; a transport machine for transporting the substrate; and a control device that creates a transfer schedule for transporting and processing the substrate between the multiple processing tanks and controls the transport of the substrate by the transport machine and the substrate processing in the multiple processing tanks based on the transfer schedule, wherein the multiple processing tanks include a first processing tank that performs one or more processes including a first process on a substrate, and the control device generates the transfer schedule by adding a positive or negative margin time calculated by a learning network or a statistical calculation method using an actual processing time obtained by actually performing the first process on the multiple substrates in the first processing tank to the processing time of the first process set in a recipe.

[0009] According to one aspect of the present invention, there is provided a substrate processing apparatus comprising: a plurality of processing tanks for processing substrates; a transport machine for transporting the substrates; and a control device that creates a transfer schedule for transporting and processing the substrates between the plurality of processing tanks, and controls the transport of the substrate by the transport machine and the substrate processing in the plurality of processing tanks based on the transfer schedule, wherein the plurality of processing tanks include a first processing tank for performing one or more processes including a first process on the substrate, the first processing tank having a sensor that detects a progress of the first process, and the control device estimates an expected processing end time when all of the one or more processes in the first processing tank will be completed from a detection value obtained from the sensor, and if it is determined that the expected processing end time is later than a scheduled transport start time set in the transfer schedule, the control device corrects the scheduled transport start time to the expected processing end time and adjusts the transfer schedule. [Brief description of the drawings]

[0010]

Figure 1

Figure 2

Figure 3

Figure 4A

Figure 4B

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9A

Figure 9B

Figure 9C

Figure 9D

Figure 9E

Embodiments for Carrying Out the Invention

[0011] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. In the following embodiments, the same or corresponding members are denoted by the same reference numerals, and redundant descriptions are omitted. In addition, in this specification, expressions such as "upper", "lower", "left", and "right" are used, but these indicate the positions and directions on the paper surface of the exemplary drawings for convenience of explanation, and may be different in the actual arrangement during device use, etc. It may be different in the actual arrangement.

[0012] <Overall Configuration> FIG. 1 is an overall layout diagram of a substrate processing apparatus according to an embodiment of the present invention. In this example, the substrate processing apparatus 100 is an electrolytic plating apparatus. Here, a so-called dip-type electrolytic plating apparatus will be described as an example, but the present invention is applicable to any plating apparatus (cup-type / face-down type plating apparatus, electroless plating apparatus, etc.), and is also applicable to any other substrate processing apparatus.

[0013] The substrate processing apparatus 100 is roughly divided into a load / unload station 101A that loads a substrate as an object to be processed onto a substrate holder (not shown) or unloads the substrate from the substrate holder, and a processing station 101B that performs one or more processes on the substrate. The substrate includes substrates of circular, rectangular (polygons such as quadrilaterals), and other arbitrary shapes. Further, the substrate is an arbitrary object to be processed, and includes semiconductor wafers, glass substrates, liquid crystal substrates, printed circuit boards, and other arbitrary substrates.

[0014] The load / unload station 101A has a plurality of cassettes 102 mounted on a plurality of cassette tables, an aligner 104, a substrate attachment / detachment station 105, and a spin rinse dryer 106. The cassette 102 is a substrate storage container (e.g., FOUP) for storing substrates. The aligner 104 aligns reference positions such as the orifices and notches of the substrate in a predetermined direction. The substrate attachment / detachment station 105 includes one or a plurality of substrate attachment / detachment devices 105a configured to attach and detach the substrate to and from a substrate holder. The spin rinse dryer 106 rotates the substrate at high speed and dries it while supplying a rinse liquid to the substrate after plating. A transfer robot 103 for transferring substrates between these units is arranged in the center of these units.

[0015] The processing station 101B has a stocker 107 for storing and temporarily placing substrate holders, a pre-wet module 108, a pre-soak module 109, a pre-soak rinse module 110a, a rinse module 110b, a blow module 111, and a plating processing module 112. Note that any one or all of the pre-wet module 108, the pre-soak module 109, the pre-soak rinse module 110a, the rinse module 110b, the blow module 111, and the plating processing module 112 may be referred to as a processing module. Some or all of the processing modules among the pre-wet module 108, the pre-soak module 109, the pre-soak rinse module 110a, the rinse module 110b, the blow module 111, and the plating processing module 112 are provided with processing tanks for holding a predetermined processing liquid.

[0016] In the pre-wet module 108, the substrate is immersed in a processing liquid (e.g., pure water), and the air inside the openings on the substrate surface is replaced with pure water. In the pre-soak module 109, the oxide film on the surface of the conductive layer such as the seed layer formed on the surface of the substrate is etched and removed. In the pre-soak rinse module 110a, the substrate after pre-soak is washed with a cleaning liquid (such as pure water) as the processing liquid together with the substrate holder. In the rinse module 110b, the substrate after plating is washed with a cleaning liquid as the processing liquid together with the substrate holder. In the blow module 111, the liquid on the washed substrate is drained.

[0017] The plating processing module 112 has a plurality of cells (also referred to as plating tanks 112a) equipped with overflow tanks. Each plating tank 112a houses, for example, one substrate inside, immerses the substrate in the plating solution held inside, and performs plating such as copper plating on the substrate surface. Here, the type of the plating solution is not particularly limited, and various plating solutions are used according to the application. When a plurality of different plating processes are performed on one substrate, the plating processing module 112 has a plurality of plating tanks 112a that contain different types of plating solutions. In one embodiment, in the plating tank 112a, a rinse process (described later) after the plating process is performed.

[0018] The substrate processing apparatus 100 is located on the side of each of these devices and has a substrate holder transfer device 113 that transfers the substrate holder between these devices, for example, adopting a linear motor method. This substrate holder transfer device 113 has a transporter 114 and a transporter 115. The transporter 114 and the transporter 115 travel on the rail 116. Note that only one of the transporters 114 and 115 may be provided, and the transfer between the above-mentioned parts may be performed by one transporter 114. Also, three or more transporters may be provided. Note that the configuration of this substrate processing apparatus 100 is an example, and other configurations can be adopted.

[0019] In the substrate processing apparatus 100, the transfer robot 103 takes out an unprocessed substrate from the cassette 102, places it on the aligner 104, and the aligner 104 positions the substrate with reference to reference positions such as an orifice and a notch. Next, the transfer robot 103 transfers the substrate to the substrate attaching / detaching device 105a, where the substrate is attached to a substrate holder taken out from the stocker 107. In this example, two substrate attaching / detaching devices 105a are used to attach substrates to their respective substrate holders, and two substrate holders are transported as a set. The substrate attached to the substrate holder is transferred to the pre-wet module 108 by the transporter 114, pre-washed, then transferred to the pre-soak module 109 for pre-treatment, and further transferred to the pre-soak rinse module 110a for a water wash treatment.

[0020] The substrate that has been water-washed in the pre-soak rinse module 110a is transferred by the transporter 115 to any one of the plating baths 112a in the plating processing module 112 and immersed in the plating solution. Here, the substrate is plated to form a metal film. When multiple types of plating processes are performed, the substrate is sequentially transferred to multiple plating baths 112a for plating. After the plating process, the substrate is transferred by the transporter 115 to the rinse module 110b for a water wash treatment, and then transferred to the blow module 111 for a rough drying treatment. Thereafter, it is transferred to the substrate attaching / detaching station 105 by the transporter 114, where the substrate is removed from the substrate holder. The substrate removed from the substrate holder is transferred by the transfer robot 103 to the spin rinse dryer 106, subjected to a cleaning and drying treatment, and then stored in the cassette 102.

[0021] <Control Configuration> FIG. 2 is an explanatory diagram for explaining the control configuration of the substrate processing apparatus 100.

[0022] The substrate processing apparatus 100 includes a device computer 120 and a device controller 121 as controllers for controlling each part of the apparatus. The device computer 120 is connected to the device controller 121 via a wired or wireless network, cable, etc. Various operation devices 130 of the substrate processing apparatus 100 are connected to the device controller 121 via a predetermined interface I / O. The device computer 120 and the device controller 121 cooperate to control the various operation devices 130 of the substrate processing apparatus 100. By sending a control signal from the device computer 120 to the device controller 121 via the network, the various operation devices 130 are controlled via the device controller 121. Further, the device computer 120 is configured to be able to communicate with a host controller (not shown) that centrally controls the substrate processing apparatus 100 and other related devices, either wired or wirelessly, and can exchange data with a database possessed by the host controller.

[0023] The device controller 121 is constituted by, for example, a PLC, a sequencer, etc., and controls the various operation devices 130 of the substrate processing apparatus 100 based on control commands, setting parameters, transfer schedules (transfer time tables), etc. supplied from the device computer 120. Here, the various operation devices of the substrate processing apparatus 100 include a transfer robot 103, conveyors (transporters) 114, 115, and other devices.

[0024] ​The device computer 120 includes a memory 120B that stores various setting data and various programs, and a CPU 120A that executes the programs in the memory 120B (Figure 1). Although not shown, the device computer 120 may include an input / output interface that includes an output device such as a display, and an input device including a keyboard, a mouse, and the like. The storage medium constituting the memory 120B can include any volatile storage medium and / or any non-volatile storage medium. The storage medium can include, for example, one or more of any storage media such as ROM, RAM, hard disk, CD-ROM, DVD-ROM, and flexible disk.

[0025] The programs stored in the memory 120B include software that constitutes the operation screen application 120C and scheduling software that constitutes a module called the transport scheduler 120D. The scheduling software is scheduling software that calculates a substrate transport schedule, and when the scheduling software is executed by the CPU 120A, the transport scheduler 120D is configured. The transport scheduler 120D creates a transport schedule for performing transport control with the maximum throughput from the operation times of each pre-provided transport machine and the like, and the processing conditions of the target substrate (process recipe, hereinafter simply referred to as recipe) for which a processing instruction has been received. As the scheduling software / transport scheduler 120D, a graph network method scheduler, a simulation method scheduler, a machine learning method scheduler, or any other method scheduler can be adopted. The operation screen application 120C displays the recipe, the transport schedule described later, and the like on the display. Input from the operator can be received by this operation screen application 120C.

[0026] In one example, the transfer scheduler 120D receives, as input data, a recipe, parameters other than the recipe, margin time (to be described later), and input of constraint conditions, and creates a transfer schedule / transfer time table at the maximum throughput while satisfying the constraint conditions. The input of the recipe, parameters other than the recipe, and constraint conditions can be stored in the memory 120B. The recipe may be input by the user or selected by the user. Here, the constraint conditions include the upper limit of the post-treatment standing time (limiting value of the post-treatment standing time) in each processing tank and a buffer area for avoiding collisions between transfer machines. The upper limit of the post-treatment standing time is a time constraint set in each processing tank to prevent corrosion of the substrate, and is defined as the time from when the processing in the processing tank is completed until the substrate is carried out of the processing tank. The buffer area is an area set for each transporter to prevent collisions between the transfer machines 114 and 115, prohibits the movement of other transporters to the buffer area, and is set so that each transporter does not approach within a predetermined distance.

[0027] The recipe includes, for example, the number of processed sheets, the processing order, the processing time, etc., set for each substrate or for each job assigned to one or a plurality of substrates. Parameters other than the recipe include, for example, "device setting parameters", "processing module / tank setting parameters", and "transfer machine setting parameters". The device setting parameters include, for example, parameters such as the use / non-use of each tank, the number of tanks, and the number of substrate holders. The processing module / tank setting parameters include, for example, the operation time of various mechanisms included in the processing module / tank, the pre-treatment time / post-treatment time, the reset time, etc. The pre-treatment time is the time taken from when the substrate is carried into the tank until the start of processing. The post-treatment time is the time until the substrate can be carried out after the processing of the substrate in the tank. The reset time is the time until the tank becomes usable again after the substrate is carried out of the tank. The transfer machine setting parameters include, for example, the movement time, the take-out / loading time, etc. Note that the configuration of the input parameters is an example, and can be appropriately changed according to the configuration of the device and the process.

[0028] The transfer schedule / transfer time table (output data) generated by the transfer scheduler 120D includes the start time, the transfer machine to be operated, the type of operation (takeout / storage), the unit processing module / tank at the source, the processing module / tank at the destination, and the like. The configuration of the transfer schedule / transfer time table is an example, and can be appropriately changed according to the configuration of the apparatus and the process.

[0029] In addition, the program stored in the memory 120B further includes, for example, a program for controlling the attachment / detachment of the substrate to / from the substrate holder at the substrate attachment / detachment station 105, a program for controlling the processing of the substrate in each processing module / tank (including a program for controlling the plating process in the plating processing module 112), and other programs for controlling each part of the substrate processing apparatus.

[0030] FIG. 3 is an explanatory diagram for explaining a more detailed control configuration of the substrate processing apparatus 100.

[0031] As shown in FIG. 3, the apparatus computer 120 includes a transfer schedule generation unit 1201 as a transfer scheduler 120D, an HMI unit 1202, a margin time calculation unit 1203, a schedule adjustment determination unit 1205, and a processing end estimated time calculation unit 1206.

[0032] In the present embodiment, the transfer schedule generation unit 1201 (transfer scheduler 120D) generates a transfer schedule based on a recipe, parameters other than the recipe, set values such as constraint conditions, the margin time calculated by the margin time calculation unit 1203 (see FIGS. 4A and 4B), and the like. Further, the transfer schedule generation unit 1201 adjusts the transfer schedule based on an adjustment request from the schedule adjustment determination unit 1205. Further, each time the transfer schedule generation unit 1201 generates a transfer schedule (including the generation of the adjusted transfer schedule by adjustment), it notifies the apparatus controller 121 of the transfer schedule.

[0033] The HMI unit 1202 receives recipe settings and selections from the user via an input / output interface / human-machine interface (HMI), and outputs the recipe to be used for substrate processing to the transfer schedule generation unit 1201 and the margin time calculation unit 1203. Further, the HMI unit 1202 collects the processing logs in the substrate processing apparatus 100 (measurement values such as recipe setting values, plating current, plating film thickness, etc. used in the processing, actual measured plating processing time, and other various processing information), and supplies them to the margin time calculation unit 1203.

[0034] Based on the recipe and the log from the HMI unit 1203, the margin time calculation unit 1203 calculates the margin time so that the actual measured plating processing time of most substrates (for example, substrates within the range of ασ of the statistical data of a plurality of substrates actually plated in the past: σ is the standard deviation, α is the multiple) does not exceed the sum of the plating processing time set in the recipe and the margin time (adjusted plating processing time).

[0035] During the plating process of the substrate, the estimated end time calculation unit 1206 calculates the "estimated end time of plating" of the plating process based on the elapsed plating time obtained from the apparatus controller 121 and the film thickness measurement value of the plating film obtained from the plating film thickness measurement unit 1207, and calculates the "estimated end time of processing" in the plating tank based on the "estimated end time of plating". Here, when only the plating process is performed in the plating tank 112a, "estimated end time of plating" = "estimated end time of processing". When the plating process and the rinsing process after the plating process are performed in the plating tank 112a (see FIGS. 4A and 4B), "estimated end time of plating" + "rinsing time" = "estimated end time of processing". When performing the plating process and the rinsing process after the plating process (see FIGS. 4A and 4B), "estimated end time of plating" + "rinsing time" = "estimated end time of processing".

[0036] The plating film thickness measurement unit 1207 is, for example, a film thickness gauge disposed in each plating tank 112a. The film thickness gauge can employ, for example, an optical displacement sensor (using reflected waves, etc.).

[0037] The schedule adjustment determination unit 1205 determines whether it is necessary to adjust the current transport schedule based on the transport schedule obtained from the transport schedule generation unit 1201 and the estimated processing completion time obtained from the estimated processing completion time calculation unit 1206. When the schedule adjustment determination unit 1205 determines that it is necessary to adjust the transport schedule, it outputs a transport schedule adjustment request to the transport schedule generation unit 1201. Also, as shown in FIG. 4B, the schedule adjustment determination unit 1205 determines that it is necessary to adjust the current transport schedule when the estimated processing completion time elapses the scheduled transport start time (the time to start transporting (unloading) the substrate from the plating tank 112a) in the current transport schedule. Further, when the schedule adjustment determination unit 1205 determines that the actual processing completion time has elapsed the scheduled transport start time in the current transport schedule at the end of the processing (plating process or plating process + rinse process) in the plating tank 112a, it determines that it is necessary to adjust the current transport schedule.

[0038] <Transport schedule> FIGS. 4A and 4B are examples of the transport schedule (transport time table) in the plating tank 112a. The transport schedule in the plating tank 112a has, for example, as shown in FIG. 4A, a plating processing time (recipe setting time), a margin time, a rinse time (recipe setting time), a transport waiting time (recipe setting time), a processing start time, a processing end time, and a scheduled transport start time. Here, an example where the plating process and the rinse process are performed in the plating tank 112a is shown, but the rinse process may be omitted. Also, in some cases, the transport waiting time may not be set for some or all of the transport schedule.

[0039] Here, assuming that at the prediction time shown in FIG. 4B, the process end estimated time calculation unit 1206 receives a notification of the film thickness measurement value from the plating film thickness measurement unit 1207, the process end estimated time calculation unit 1206 calculates the estimated plating end time based on the plating elapsed time and the film thickness measurement value, based on a rule-based calculation formula, a learning network, etc. The rule-based calculation formula is a theoretical calculation formula and / or a calculation formula derived from experiments, etc. Also, based on the estimated plating end time, the estimated process end time (estimated plating end time + rinse time) is calculated. At this time, as shown in FIG. 4B, if the estimated process end time exceeds the scheduled transfer start time, the schedule adjustment determination unit 1205 determines that adjustment of the transfer schedule is necessary, and outputs a transfer schedule adjustment request to the transfer schedule generation unit 1201. The transfer schedule adjustment unit 1201 performs processing such as correcting the scheduled transfer start time of the substrate (referred to as the target substrate) from the plating tank 112a in the current transfer schedule to the estimated process end time based on this adjustment request, adjusts the current transfer schedule, and generates an adjusted transfer schedule.

[0040] Note that, as will be described later, even when the process end time exceeds the scheduled transfer start time after the process ends, the schedule adjustment determination unit 1205 determines that adjustment of the transfer schedule is necessary, and outputs a transfer schedule adjustment request to the transfer schedule generation unit 1201. The transfer schedule adjustment unit 1201 performs processing such as correcting the scheduled transfer start time of the substrate (referred to as the target substrate) from the plating tank 112a in the current transfer schedule to the time obtained by adding a predetermined time to the process end time based on this adjustment request, adjusts the current transfer schedule, and generates an adjusted transfer schedule.

[0041] <Flow of Transfer Scheduling> FIG. 5 is a flowchart showing the overall process of transfer scheduling. FIGS. 9A to 9E are explanatory diagrams for explaining the adjustment of the transfer schedule.

[0042] FIG. 9A is a transfer time table representing the initially generated transfer schedule. FIG. 9B is a transfer time table representing a transfer schedule (first part) after taking out the target substrate from the plating bath where the processing time has exceeded, a transfer schedule (second part) of an untransferred part affected by the target substrate on the upstream side, and a transfer time schedule obtained by removing the transfer schedule (third part) of subsequent unprocessed substrates. FIG. 9C is a transfer time table representing a transfer schedule in which the transfer schedule (first part) after taking out the target substrate from the plating bath is reinserted. FIG. 9D is a transfer time table representing a transfer time schedule in which the transfer schedule (second part) of the untransferred part affected by the target substrate on the upstream side is further reinserted. FIG. 9E is a transfer time table representing a transfer schedule in which the transfer schedule (third part) of subsequent unprocessed substrates is further reinserted.

[0043] In FIGS. 9A to 9D, the table number is a number assigned to each process (including the transfer process) and increases corresponding to the passage of time. Since the table number is uniquely assigned to each transfer, even if a plurality of substrates being transferred simultaneously are transferred by separate transfer machines at exactly the same timing, the positions of the table numbers will be different. When the transfer start times of a plurality of transfer machines coincide, the transfer of each table number will start continuously within an extremely short period of time and will start substantially simultaneously. In the same figure, "in process" means the part of the transfer schedule of the substrate after being taken out from the cassette, excluding the first part and the second part. "Target with processing time exceeded" indicates the transfer schedule of the first part. "Being processed upstream" indicates the transfer schedule of the second part. "Subsequent unprocessed" indicates the transfer schedule of the third part. Details will be described later.

[0044] In the following description, "transfer schedule" and "transfer time table" will be described as synonymous.

[0045] In the flowchart of FIG. 5, in step S11, jobs of a selected recipe are generated for a plurality of substrates (in the same or multiple cassettes).

[0046] In step S12, the margin time calculation unit 1203 calculates the margin time with respect to the plating processing time (recipe setting time). The margin time is calculated as the time within which most substrates (for example, substrates within the range of 3σ) can complete the plating process within the plating processing time (recipe setting time) + the margin time. The predicted plating processing time is calculated as the plating processing time (recipe setting time) + the margin time.

[0047] In step S13, the transfer schedule generation unit 1201 generates a transfer schedule based on the recipe, parameters other than the recipe, set values of constraint conditions, etc., and the margin time (see FIG. 9A).

[0048] In step S14, based on the generated transfer schedule, the operation of the substrate processing apparatus 100 is started.

[0049] In step S15, during the plating process of the substrate in the plating tank 112a, the plating film thickness measurement unit 1207 measures the plating film thickness formed on the substrate and outputs the measured value of the plating film thickness to the estimated end time calculation unit 1206 of the plating film thickness.

[0050] In step S16, it is determined whether or not the processing in the plating tank 112a (the plating process + the rinsing process in the examples of FIGS. 4A and 4B) has ended. When the rinsing process is not performed in the plating tank 112a, the end of the process in the plating tank 112a = the end of the plating process. If it is determined in step S16 that the processing in the plating tank 112a has not ended (No in step S16), the process proceeds to step S17.

[0051] In step S17, the estimated end time calculation unit 1206 calculates the "estimated plating end time" of the plating process based on the plating elapsed time acquired from the apparatus controller 121 and the measured value of the plating film thickness acquired from the plating film thickness measurement unit 1207 during the plating process of the substrate, and calculates the "estimated process end time" in the plating tank based on the "estimated plating end time". Here, in the plating tank 112a, when only the plating process is carried out, "estimated plating end time" = "estimated process end time". In the plating tank 112a, when the plating process and the rinsing process after the plating process are carried out (see FIGS. 4A and 4B), "estimated plating end time" + "rinsing time" = "estimated process end time".

[0052] In step S18, the schedule adjustment determination unit 1205 determines whether the estimated process end time has passed the scheduled conveyance start time. If it is determined that the estimated process end time has not passed the scheduled conveyance start time (No in S18), the process returns to step S15 and the processes after step S15 are repeated. On the other hand, if it is determined that the estimated process end time has passed the scheduled conveyance start time (Yes in S18, see FIG. 4B), the process proceeds to step S19, adjusts the conveyance schedule, and generates an adjusted conveyance schedule (FIGS. 9B to 9E).

[0053] In step S16, if it is determined that the process in the plating tank 112a has ended (Yes in S16), the process proceeds to step S20.

[0054] In step S20, the schedule adjustment determination unit 1205 determines whether the actual process end time (the time when the process actually ends) of the process in the plating tank 112a has passed the scheduled conveyance start time. If it is determined that the actual process end time of the process in the plating tank 112a has not passed the scheduled conveyance start time (No in S20), the process proceeds to step S22, and the substrate is carried out from the plating tank 112a at the scheduled conveyance start time. On the other hand, if it is determined that the actual process end time of the process in the plating tank 112a has passed the scheduled conveyance start time (Yes in S20), the process proceeds to step S21, adjusts the conveyance schedule, and generates an adjusted conveyance schedule (FIGS. 9B to 9E). The adjusted conveyance schedule is also referred to as an adjusted conveyance schedule or a readjusted conveyance schedule.

[0055] FIG. 6 is a flowchart of the process for generating an adjusted conveyance schedule. This process is common to S19 and S21 in FIG. 5.

[0056] In step S31, the expected processing end time (S18) or the processing end time (S20) is Transport schedule (the first part) after taking out the substrate (referred to as the target substrate or the judgment substrate) from the plating bath when the scheduled transport start time has been passed / determined to have passed removed from the current transfer schedule (overall transfer schedule) (Fig. 9B).

[0057] In step S32, the target substrate is removed from the plating bath being processed Transport schedule (the second part) of the untransported part of the substrate affected by the transport of the target substrate on the upstream side from the overall transfer schedule (Fig. 9B). That is, among the one or more substrates after being taken out from the cassette, the untransferred part of the transfer schedule of one or more substrates (for example, substrates planned to use the same plating bath) that are affected by the transfer of the target substrate upstream in the transfer order from the plating bath in which the target substrate is being processed is deleted from the overall transfer schedule. Here, for the substrates being processed in the module / bath, the transfer schedule after being taken out from the module / bath being processed shall be deleted. For the substrates being transferred between modules / baths, the transfer schedule after being taken out from the module / bath at the transfer destination shall be deleted.

[0058] In this example, the transfer order is, as described above, (cassette 102) → aligner 104 → substrate loading / unloading device 105a → pre-wet module 108 → pre-soak module 109 → pre-soak rinse module 110a → plating bath 112a → rinse module 110b → blow module 111 → substrate loading / unloading station 105 → spin rinse dryer 106 → cassette 102. The upstream side of the target substrate in the plating bath 112a corresponds to the part of aligner 104 → substrate loading / unloading device 105a → pre-wet module 108 → pre-soak module 109 → pre-soak rinse module 110a (up to the front of the plating bath 112a in arrow A of Fig. 1).

[0059] ​Substrates affected by the conveyance of the target substrate on the upstream side include, for example, substrates on the upstream side that are planned to use the same plating bath 112a as the target substrate. However, even substrates on the upstream side that are not planned to use the same plating bath 112a as the target substrate may be affected by the upstream configuration (e.g., the number of baths in the pre-wet module 108, etc.) and may be included in such substrates if they are affected by the conveyance of the target substrate on the upstream side.

[0060] In step S33, Transport schedule (the third part) of the subsequent unprocessed substrates is removed from the overall conveyance schedule (Fig. 9B). The subsequent unprocessed substrates mean the subsequent unprocessed substrates that have not yet been taken out from the cassette 102 (inside the cassette 102).

[0061] In step S34, through the process described later in Fig. 7, the conveyance schedule (the first part) of the target substrate after being taken out from the plating bath is reinserted into the overall conveyance schedule (Fig. 9C). At this time, in accordance with the expected processing end time (S18) in the plating bath 112a of the target substrate, or in accordance with the time obtained by adding a predetermined time to the processing end time (S20), the conveyance schedule (the first part) of the target substrate after being taken out from the plating bath is repositioned between the conveyance schedules of other substrates in the overall conveyance schedule. That is, as described later in Fig. 7, the scheduled conveyance start time in the plating bath 112a of the target substrate is corrected to the expected processing end time (S18), or the time obtained by adding a predetermined time to the processing end time (S19), and based on the corrected scheduled conveyance start time, while adjusting the overall conveyance schedule, the conveyance schedule (the first part) of the target substrate after being taken out from the plating bath is reinserted into the overall conveyance schedule.

[0062] In step S35, through the process described later in Fig. 8, the conveyance schedule (the second part) of the un-conveyed portion of the substrate affected by the conveyance of the target substrate on the upstream side is reinserted into the overall conveyance schedule (Fig. 9D). At this time, in accordance with the expected processing end time (S18) in the plating tank 112a of the target substrate, or in accordance with the time obtained by adding a predetermined time to the processing end time (S20), the conveyance schedule (the second part) after the target substrate is taken out of the plating tank is rearranged between the conveyance schedules of other substrates in the overall conveyance schedule. That is, as will be described later with reference to FIG. 8, the scheduled conveyance start time of the substrate on the upstream side from a certain tank / module is corrected to the expected processing end time (S18), or the time obtained by adding a predetermined time to the processing end time (S19). Based on the corrected scheduled conveyance start time, while adjusting the overall conveyance schedule (including the part that has already been reinserted), the conveyance schedule (the second part) after the substrate on the upstream side is taken out of the tank / module is reinserted into the overall conveyance schedule.

[0063] In step S36, for the overall conveyance schedule (FIG. 9D) after the first part and the second part are reinserted in steps S34 and S35, similar to the generation of the conveyance schedule for the new job, rescheduling of the conveyance schedule (the third part) of the subsequent unprocessed substrates is performed, and the conveyance schedule (the third part) of the subsequent unprocessed substrates is reinserted into the overall conveyance schedule (FIG. 9E). The process of reinserting the conveyance schedule (the third part) of the subsequent unprocessed substrates into the overall conveyance schedule is the generation of the conveyance schedule for the substrates that have not been taken out of the cassette, so it is performed in the same manner as the process of generating the conveyance schedule for the new job (S13 in FIG. 5).

[0064] FIG. 7 is a flowchart of the process (S34) of reinserting the conveyance schedule (the first part) after the target substrate is taken out of the plating tank into the overall conveyance schedule.

[0065] In step S41, the scheduled conveyance start time from the plating tank 112a of the target substrate is set to the expected processing end time (S18), or the time obtained by adding a predetermined time to the processing end time (S19). The predetermined time is set in advance in consideration of, for example, the time for adjusting the conveyance schedule.

[0066] In step S42, while adjusting the overall transfer schedule (Figure 9B) in accordance with / based on the corrected scheduled start time of transfer in the plating tank for the target substrate, the transfer schedule (the first part) after the target substrate is taken out of the plating tank is reinserted into the overall transfer schedule (Figure 9C). Note that "after the plating tank take-out" indicates after the start of transfer from the plating tank.

[0067] In step S43, it is determined whether there is any other substrate (other substrates in the overall transfer schedule, see Figure 9B) whose post-treatment standing time (the time the substrate is immersed in the treatment liquid from after treatment until being carried out) exceeds the limit value. If it is determined that there is no other substrate whose post-treatment standing time exceeds the limit value, the insertion of the first part (the transfer schedule after the target substrate is taken out of the plating tank) into the overall transfer schedule is completed (Figure 9C). That is, the processing of this flow (step S34) is terminated. On the other hand, if it is determined that there is any other substrate whose post-treatment standing time exceeds the limit value, the process proceeds to step S44.

[0068] In step S44, the overall transfer schedule is restored to the state before inserting the transfer schedule (the first part) after the target substrate is taken out of the plating tank (the state before step S42, see Figure 9B), and the process proceeds to step S45.

[0069] In step S45, the scheduled start time of transfer for the target substrate is reset with a further delay of a certain time, and the process returns to step S42, and the processing after S42 is repeated again. That is, in step S43, until it is determined that there is no other substrate whose post-treatment standing time exceeds the limit value, the overall transfer schedule is returned to the state before inserting the first part (step S44), the scheduled start time of transfer is further delayed by a certain time (step S45), and the reinsertion of the first part (step S42) is repeated. The certain time can be a preset time.

[0070] In step S43, when it is determined that there is no other substrate whose post-treatment standing time exceeds the limit value, the insertion of the first part (the conveyance schedule after the plating bath removal of the target substrate) into the overall conveyance schedule is completed (Fig. 9C). That is, the process of this flow (step S34) is terminated.

[0071] Fig. 8 is a flowchart of the process (S35) of reinserting the conveyance schedule (second part) of the untransported portion of the substrate affected by the conveyance of the target substrate on the upstream side into the overall conveyance schedule. When there are multiple substrates affected by the conveyance of the target substrate on the upstream side, the processes of steps S52 to S55 (S57) in Fig. 8 are sequentially executed from the downstream substrate.

[0072] In step S51, among the substrates affected by the conveyance of the target substrate on the upstream side, the most downstream substrate for which the processes after step S52 have not been performed is selected.

[0073] In step S52, when the substrate selected in step S52 is being conveyed, the conveyance to the processing bath at the destination is first completed.

[0074] In step S53, for the scheduled conveyance start time at which the substrate selected in step S52 is to be taken out from the current processing bath, a time obtained by adding a predetermined time to the expected processing end time (S17) or the processing end time (S20) of the target substrate is set. That is, the scheduled conveyance start time at which the substrate selected in step S52 is to be taken out from the current processing bath is updated to the time obtained by adding a predetermined time to the expected processing end time (S17) or the processing end time (S20) of the target substrate.

[0075] In step S54, in accordance with / based on the corrected scheduled conveyance start time in the current processing bath of the substrate selected in step S52, while adjusting the overall conveyance schedule, the conveyance schedule after the take-out from the current processing bath of the substrate selected in step S52 (the part corresponding to the substrate selected in step S52 in the second part) is reinserted into the overall conveyance schedule (Fig. 9D).

[0076] In step S55, it is determined whether there is any other substrate (other substrates in the overall transfer schedule) in which the post - processing waiting time exceeds the limit value. If it is determined that there is no other normal substrate in which the post - processing waiting time exceeds the limit value, the process proceeds to step S58. On the other hand, if it is determined that there is a substrate in which the post - processing waiting time exceeds the limit value among other substrates, the process proceeds to step S56.

[0077] In step S56, the overall transfer schedule is restored to the state before inserting the transfer schedule of the substrate selected in step S52 (the part corresponding to the substrate selected in step S52 in the second part), that is, the state before step S54, and the process proceeds to step S57.

[0078] In step S57, the scheduled transfer start time of the substrate selected in step S52 is reset with a further delay of a certain time, the process returns to step S54, and the processing after S54 is repeated again. That is, in step S55, until it is determined that there is no substrate in which the post - processing waiting time exceeds the limit value among other substrates, the overall transfer schedule is returned to the state before insertion in S54 (step S56), the scheduled transfer start time is further delayed by a certain time (step S57), and the re - insertion of the second part (step S54) is repeated. The certain time can be a preset time.

[0079] When it is determined in step S55 that there is no substrate in which the post - processing waiting time exceeds the limit value among other substrates, the process proceeds to step S58.

[0080] In step S58, it is determined whether there is a substrate (second part) that is affected by the conveyance of the target substrate on the upstream side and for which the processing after step S52 has not been performed. If there is such a substrate, in step S51, the lowermost one among the remaining substrates is selected, and the processing after step S52 is executed. On the other hand, if there is no such substrate remaining, the insertion of the conveyance schedule (second part) of the un-conveyed portion of the substrate that is affected by the conveyance of the target substrate on the upstream side into the overall conveyance schedule is completed (Fig. 9D). That is, the processing of this flow (S35 in Fig. 6) is terminated.

[0081] Note that after the processing of step S35 in Fig. 6 is completed, as described above, in step S36, for the overall schedule (Fig. 9D) after the first part and the second part are re-inserted, in the same manner as the generation of the conveyance schedule for a new job, the conveyance schedule (third part) of the subsequent unprocessed substrates is re-scheduled, and the conveyance schedule (third part) of the subsequent unprocessed substrates is re-inserted into the overall conveyance schedule (Fig. 9E). Thereby, the adjustment of the conveyance schedule, that is, the generation of the adjusted conveyance schedule (step S19 or step S20) is completed. Thereby, the adjustment of the conveyance schedule, i.e., the generation of the adjusted conveyance schedule (step S19 or step S20) is completed.

[0082] (Example of method for calculating margin time) An example of the calculation direction of the margin time in step S12 of Fig. 5 will be described. For the calculation of the margin time added to the plating processing time (recipe setting time) shown in Figs. 4A and 4B, a statistical value based on past plating data or a learning network can be used.

[0083] (1) Example of method for calculating margin time using a learning network The margin time can be calculated by a learning network (machine learning). For example, the margin time can be calculated using a trained network that has been machine-learned / trained using past plating data as teacher data. The input and output parameters of the learning network can be set, for example, as follows. Input) Plating processing time in recipe settings, plating current value in recipe settings, target film thickness value, chemical solution components, chemical solution temperature, circulation flow rate, paddle speed, substrate information (aperture ratio, area) Output) Margin time (= actual plating required time - plating processing time in recipe settings) (Note that the actual plating required time = measured plating processing time.) When plating a substrate, input the input value according to the substrate to be plated into the input of the learning network (trained network) to calculate the margin time.

[0084] The input of the learning network may include parameters other than the above, some of the above parameters may be omitted, or a combination of parameters other than the above may also be used. Note that the margin time does not necessarily have to be a positive value. In the case of a negative value, the plating process is set to end in a time shorter than the recipe setting time. Regardless of the positive or negative value of the margin time, set the margin time so that most substrates do not exceed the recipe setting time + margin time. The same applies to the following examples.

[0085] As past plating data, only data where the actual processing end time exceeds (or shortens) the processing end time in the recipe settings may be used. The same applies to (2) and (3) below.

[0086] (2) Example 1 of a method for calculating the margin time from statistical values based on plating data Using numbers 1 to 3, the statistical value of the required plating time can be calculated, and the margin time can be calculated based on the statistical value of the required plating time. The left side of number 1 is the average value of the plating required time [min]( <tm>(also denoted as). The argument inside the Σ on the right side of Equation 1 is the plating time measurement value [min] (also denoted as Tm(n)). n represents the data number, and N represents the total number of data. In Equation 2, σ 2 represents the variance with respect to the distribution of the plating time measurement values of the substrate. In Equation 3, t margin is the margin time [min], t recipe is the plating process time [min] of the recipe setting, σ is the standard deviation (square root of the variance), and α represents a multiple of σ. Adding ασ is to adjust the margin time in the + direction.

Equation

Equation

Equation

[0087] Equation 3 shows that for the substrates among the past plating data within the range of α times the standard deviation σ, the margin time is calculated such that the plating process can be completed within the plating process time (recipe setting) + margin time. For example, if α = 3, the margin time can be calculated such that the substrates within the range of 3 times the standard deviation 3σ can complete the plating process within the plating process time (recipe setting) + margin time. Assuming that the distribution of the plating time measurement values is a normal distribution, the number of substrates within the range of 3σ is 99.7% of all substrates. That is, the margin time can be calculated such that 99.7% of the substrates can complete the plating process within the plating process time (recipe setting) + margin time.

[0088] The above calculation formula assumes that the target film thickness and plating rate for the substrate are constant values. Since the plating time varies according to the plating rate and target film thickness, for each combination of the target film thickness and plating rate, the average plating time value [min] ( <tm>Collect the measured values of ()) and calculate the margin time.

[0089] Although the plating rate may change non-linearly depending on plating conditions such as the plating film thickness and current density, in such a case, it is preferable from the viewpoint of accuracy to use a learning network instead of calculating the margin time using the above theoretical formula.

[0090] (3) Example 2 of the method for calculating the margin time from statistical values based on plating data

[0091] As shown in Equation 4 to Equation 7, calculate the plating rate from the measured value of the plating film thickness and the required plating time (required plating processing time), calculate the statistical value thereof, and calculate the margin time.

[0092] The left side of Equation 4 is the measured value of the plating rate [μm / min] (also denoted as Am(n)). The numerator on the right side of Equation 4 is the measured value of the film thickness [μm] (also denoted as Xm(n)). The denominator on the right side of Equation 4 is the measured value of the plating processing time [min] (also denoted as Tm(n)). The left side of Equation 5 is the average value of the measured values of the plating rate [um / min] ( <am>(also denoted as). n represents the data number, and N represents the total number of data. In Equation 6, σ 2 represents the variance with respect to the distribution of the plating rate measurement values of the substrate. In Equation 7, t margin is the margin time [min], X target is the target film thickness [μm], t recipe is the plating processing time [min] of the recipe setting, σ is the standard deviation (square root of the variance), and α represents a multiple of σ. Subtracting ασ in Equation 7 is to adjust the margin time in the + direction.

[0093] In Equation 7, similar to what was described above in Equation 3, it shows that the margin time is calculated for the substrates within the range of α times the standard deviation σ among the substrates included in the past plating data to complete the plating process within the plating processing time (recipe setting) t recipe + margin time t margin within. For example, if α = 3, the margin time can be calculated for the substrates within the range of 3 times the standard deviation σ: 3σ to complete the plating process within the plating processing time (recipe setting) + margin time. can be calculated. Assuming that the distribution of the plating rate measurement values is a normal distribution, the number of substrates within the range of 3σ is 99.7% of all substrates. That is, the margin time can be calculated for 99.7% of the substrates to complete the plating process within the plating processing time (recipe setting) + margin time.

Equation

Equation

Equation

Equation

[0094] The above calculation formula is premised on the assumption that the current density applied to the substrate is a constant value. Since the plating rate varies according to the current density, the plating rate measurement value [μm / min] (Am(n)) is collected for each current density, and the margin time is calculated.

[0095] Although the theoretical deposition amount (γ) of plating may not be a constant value and may vary (become non-linear) depending on the current density and other plating conditions, in such cases, it is preferable from the perspective of accuracy to use a learning network instead of calculating the margin time using the above theoretical formula.

[0096] (Example of method for calculating estimated plating end time)

[0097] (1) Example of method for calculating estimated plating end time using a learning network The estimated plating end time can be calculated by a learning network (machine learning). For example, an estimated plating end time (S17 in FIG. 5) can be calculated using a trained network that has been machine-learned / trained using past plating data as teacher data. The input and output parameters of the learning network can be set as follows, for example. Input) Plating elapsed time / measured current value, target film thickness / current value, chemical solution components, chemical solution temperature, circulation flow rate, paddle speed, substrate information Output) Estimated remaining plating time The estimated plating end time can be calculated as the current time + the estimated remaining plating time = the estimated plating end time. The current time may be calculated as the plating start time + the plating elapsed time. Also, when a rinsing process is also carried out in the plating tank, the estimated end time of the process in the plating tank can be calculated by adding the rinsing process time to the estimated plating end time.

[0098] The input of the learning network may include parameters other than the above, may omit some of the above parameters, or may be a combination of parameters other than the above.

[0099] (2) Example of a method for calculating the expected plating end time using a rule-based calculation formula The calculation of the expected plating end time (S17 in Fig. 5) by simple calculation is to calculate the remaining film thickness from the difference between the target film thickness and the measured film thickness, calculate the remaining expected plating time from the statistical value of the plating rate (for example, the average value of the plating rate measurement values), and add it to the current time (plating start time + elapsed plating time) to obtain the expected plating end time (see Equation 4). Expected plating end time = (Target film thickness - Measured film thickness) / (Average value of plating rate measurement values) + (Plating start time + Elapsed plating time) ··· (Equation 4)

[0100] (Other embodiments) (1) In the adjustment scheduling of the above-described transfer schedule, the transfer schedule after taking out the target substrate from the plating tank (the first part), the transfer schedule of the untransferred part of the substrate affected by the transfer of the target substrate on the upstream side (the second part), and the transfer schedule of the subsequent unprocessed substrates (the third part) are rearranged and inserted between the transfers of other substrates. For the purpose, any scheduling method such as the graph network method, simulation method, machine learning, or other arbitrary scheduling methods can be adopted under the conditions that satisfy the purpose. (2) When the expected plating end time is later than the plating end time (+ margin time) set in the recipe, the rinse time may be shortened within an adjustable range that does not affect the rinse performance. Conversely, when the expected plating end time is earlier than the plating end time (+ margin time) set in the recipe, the rinse time may be lengthened within an adjustable range that does not affect the rinse performance. (3) If the expected end time of the plating process (+ margin time) + rinse time does not exceed the scheduled transfer start time, there is no need to adjust the transfer schedule. However, it may be adjusted. (4) In the initial substrate input scheduling, even if the actual processing time of most substrates is extended, it is not always necessary to set a margin time. Even in such a case, it is possible to perform film thickness measurement during plating processing, calculate the expected processing end time, and adjust the transfer schedule. That is, in the above embodiment, the setting of the margin time may be omitted, and only the adjustment scheduling of the transfer schedule based on the measured film thickness value may be performed. (5) Further, in order to set the margin time so that most substrates can complete the plating process within the plating process time (recipe set time) + margin time, if desired, the adjustment scheduling of the transfer schedule during the operation of the substrate processing apparatus may be omitted. (6) In the above embodiment, when the expected processing end time (actual processing end time) exceeds the scheduled transfer start time, the transfer schedule is adjusted. However, when the expected processing end time (actual processing end time) is earlier than the scheduled transfer start time, the scheduled transfer start time may be set to the expected processing end time (actual processing end time), and the transfer schedule may be adjusted.

[0101] At least the following technical ideas can be grasped from the above embodiment.

[0102] [1] According to one form, a substrate processing apparatus includes a plurality of processing tanks for processing a substrate, a transfer machine for transferring the substrate, and a control device that creates a transfer schedule for transferring and processing the substrate between the plurality of processing tanks and controls the transfer of the substrate by the transfer machine and the substrate processing in the plurality of processing tanks based on the transfer schedule. The plurality of processing tanks include a first processing tank that performs one or more processes including a first process on the substrate. The control device adds a positive or negative margin time calculated by a learning network or a statistical calculation method using the actually measured processing time obtained by actually performing the first process on a plurality of substrates in the first processing tank to the processing time of the first process set in the recipe to generate a transfer schedule. A substrate processing apparatus is provided. The actually measured processing time indicates the time required for the first process actually measured. 1 process is performed, and a positive or negative margin time calculated by a learning network or a statistical calculation method using the actually measured processing time is added to the processing time of the first process set in the recipe to generate a transfer schedule. The actually measured processing time indicates the time required for the first process actually measured.

[0103] According to this embodiment, even when the processing end time of the first process fluctuates, by adding the margin time calculated by the learning network or the statistical calculation method from past processing data to the processing time (recipe setting time) of the first process, within the range of the processing time (recipe setting time) of the first process + margin time, the possibility of completing the first process can be improved. Thereby, it is possible to suppress the possibility that the processing end time of the first process is delayed from the processing end time set in the recipe and other substrates cannot keep within the limit value of the post-processing waiting time due to the disturbance of conveyance. Note that the measured processing time when the first process is performed by setting the margin time can be added to the processing data for calculating the subsequent margin time to update the processing data. In this way, the accuracy of the margin time can be improved as the first process is performed. The negative margin time corresponds to the case where there are many substrates in the past processing data whose measured processing time of the first process is shorter than the processing time set in the recipe.

[0104] [2] According to one embodiment, the margin time is calculated based on the statistical calculation of measurement values including the measured processing time when the first process is actually performed on a plurality of substrates in the first processing tank, so that among the plurality of substrates, the measured processing time of the substrates within the range of 3σ value, which is three times the standard deviation σ, does not exceed the time obtained by adding the margin to the processing time of the first process set in the recipe. The measurement values can include the measurement values of various physical quantities during the implementation of the first process (in the case of plating, for example, plating time, film thickness, plating rate).

[0105] According to this embodiment, for most substrates within the range of 3σ value (99.7% in the normal distribution), in other words, with high accuracy, the first process can be completed within the range of the processing time (recipe setting) of the first process + margin time.

[0106] [3]According to one embodiment, the first processing tank includes a sensor that detects the progress of the first processing. The control device estimates the estimated processing end time when all of the one or more processes in the first processing tank are completed from the detection value obtained from the sensor. When it is determined that the estimated processing end time is later than the scheduled transfer start time set in the transfer schedule, the control device corrects the scheduled transfer start time to the estimated processing end time and adjusts the transfer schedule.

[0107] According to this embodiment, the margin time increases the possibility that the first processing can be completed within the range of the processing time (recipe setting) + margin time. Further, by monitoring the estimated processing end time in the first processing tank and correcting the scheduled transfer start time to the estimated processing end time and adjusting the transfer schedule when the estimated processing end time is later than the scheduled transfer start time, it is possible to further suppress the possibility that other substrates will not be able to meet the limit value of the post-processing standby time due to the disturbance of the transfer caused by the variation of the estimated processing end time. In addition, if the transfer schedule is configured to be adjusted when the estimated processing end time is later than the scheduled transfer start time, the load of adjusting the transfer schedule can be minimized. Note that the transfer schedule may also be adjusted even when the estimated processing end time is earlier than the scheduled transfer start time.

[0108] [4]According to one embodiment, the control device removes, from the transfer schedule, a first portion of the transfer schedule corresponding to the portion after the transfer out of the first processing tank of the substrate for which it is determined that the estimated processing end time is later than the scheduled transfer start time, a second portion of the transfer schedule corresponding to the untransferred portions of one or more substrates affected by the transfer of the substrate on the upstream side, and a third portion of the transfer schedule for one or more subsequent unprocessed substrates in the substrate container. Then, the control device corrects the scheduled transfer start time to the estimated processing end time and reinserts the first to third portions into the transfer schedule according to the corrected scheduled transfer start time, thereby adjusting the transfer schedule. ​

[0109] According to this form, only the part of the transfer schedule that needs adjustment is once removed from the transfer schedule, and in accordance with the scheduled start time of transfer corrected at the expected time of completion of processing, the removed part is reinserted into the transfer schedule, so that the transfer schedule can be adjusted with the minimum necessary processing and the adjusted transfer schedule can be generated.

[0110] [5] According to one form, after the time of completion of all of the one or more processes in the first processing tank, when it is determined that the time of completion of processing has passed the scheduled start time of transfer, the control device corrects the scheduled start time of transfer to a time obtained by adding a predetermined time to the time of completion of processing, and adjusts the transfer schedule.

[0111] According to this form, even when the actual time of completion of processing has passed the scheduled start time of transfer after the processing in the first processing tank has been completed, the transfer schedule is adjusted. Thereby, it is possible to further suppress the possibility that other substrates cannot satisfy the limit value of the standing time after processing due to the disturbance of the transfer of the first process.

[0112] [6] According to one form, the control device once removes from the transfer schedule a first part of the transfer schedule corresponding to the part after the unloading of the substrate from the first processing tank for which it is determined that the time of completion of processing has passed the scheduled start time of transfer, a second part of the transfer schedule corresponding to the untransferred parts of one or more substrates affected by the transfer of the substrate upstream, and a third part of the transfer schedule for one or more subsequent unprocessed substrates in the substrate storage container, corrects the scheduled start time of transfer to a time obtained by adding a predetermined time to the time of completion of processing, and re-inserts the first to third parts into the transfer schedule in accordance with the corrected scheduled start time of transfer, thereby adjusting the transfer schedule.

[0113] According to this embodiment, only the parts of the transfer schedule that need adjustment are temporarily removed from the transfer schedule, and in accordance with the scheduled start time of transfer corrected to the time obtained by adding a predetermined time to the time when the processing ends, the removed parts are reinserted into the transfer schedule, so that the transfer schedule can be adjusted with the minimum necessary processing and a transfer schedule after adjustment can be generated.

[0114] [7]According to one embodiment, the control device generates the transfer schedule using a graph network-based scheduler, a simulation-based scheduler, or a machine learning-based scheduler.

[0115] According to this embodiment, the transfer schedule can be generated using various schedulers.

[0116] [8]According to one embodiment, the first process is a plating process, and the first or more processes include only the plating process or include the plating process and a rinsing process.

[0117] According to this embodiment, it is possible to suppress the possibility that the transfer is disturbed due to fluctuations in the plating processing time and that other substrates cannot meet the limit value of the standing time after processing.

[0118] [9]According to one embodiment, there is provided a substrate processing apparatus including: a plurality of processing tanks for processing a substrate; a transfer mechanism for transferring the substrate; and a control device configured to create a transfer schedule for transferring and processing the substrate between the plurality of processing tanks and to control the transfer of the substrate by the transfer mechanism and the substrate processing in the plurality of processing tanks based on the transfer schedule. The plurality of processing tanks include a first processing tank configured to perform one or more processes including a first process on the substrate and having a sensor for detecting the progress of the first process. The control device estimates a processing end expected time at which all of the one or more processes in the first processing tank are completed from a detection value obtained from the sensor, and when it is determined that the processing end expected time is later than a transfer start scheduled time set in the transfer schedule, the control device corrects the transfer start scheduled time to the processing end expected time and adjusts the transfer schedule according to the corrected transfer start scheduled time.

[0119] According to this embodiment, the processing end expected time is estimated based on the detection value of the sensor during substrate processing, the processing end expected time in the first processing tank is monitored, and when the processing end expected time is later than the transfer start scheduled time, the transfer start scheduled time is corrected to the processing end expected time and the transfer schedule is adjusted. This can suppress the possibility that other substrates may not be able to meet the limit value of the post-processing waiting time due to the disturbance of transfer caused by the variation in the processing end time. In addition, if the transfer schedule is configured to be adjusted when the processing end expected time is later than the transfer start scheduled time, the load of adjusting the transfer schedule can be minimized. Note that the transfer schedule may also be adjusted when the processing end expected time is earlier than the transfer start scheduled time.

[0120]

[10] According to one embodiment, the control device once removes from the transfer schedule a first portion of the transfer schedule corresponding to a portion after the unloading of the substrate from the first processing tank, for which it is determined that the expected processing completion time is later than the expected transfer start time, a second portion of the transfer schedule corresponding to untransferred portions of one or more substrates that are affected by the transfer of the substrate on the upstream side, and a third portion of the transfer schedule for one or more subsequent unprocessed substrates in the substrate container, corrects the expected transfer start time to the expected processing completion time, and reinserts the first to third portions into the transfer schedule in accordance with the corrected expected transfer start time, thereby adjusting the transfer schedule.

[0121] According to this embodiment, only the portions of the transfer schedule that need adjustment are once removed from the transfer schedule, and the removed portions are reinserted into the transfer schedule in accordance with the expected transfer start time corrected to the expected processing completion time, so that the transfer schedule can be adjusted with a minimum amount of necessary processing and a transfer schedule after adjustment can be generated.

[0122]

[11] According to one embodiment, after the processing completion time at which all of the one or more processes in the first processing tank have ended, when it is determined that the processing completion time has passed the expected transfer start time, the control device corrects the expected transfer start time to a time obtained by adding a predetermined time to the processing completion time, and adjusts the transfer schedule.

[0123] According to this embodiment, even when the actual processing completion time has passed the expected transfer start time after the processing in the first processing tank has ended, the transfer schedule is adjusted. Thereby, it is possible to further suppress the possibility that other substrates may not be able to meet the limit value of the standing time after processing due to the disturbance of the transfer of the first process.

[0124]

[12] According to one embodiment, the control device removes from the transfer schedule the first processing tank of the substrate for which it is determined that the processing completion time has passed the expected transfer start time The first part of the transport schedule corresponding to the part after the unloading, the second part of the transport schedule corresponding to the untransported parts of one or more substrates affected by the transport of the substrate on the upstream side, and the third part of the transport schedule for one or more subsequent unprocessed substrates in the substrate container are temporarily removed from the transport schedule, the scheduled transport start time is corrected to the time obtained by adding a predetermined time to the processing end time, and the first to third parts are reinserted into the transport schedule according to the corrected scheduled transport start time, thereby adjusting the transport schedule.

[0125] According to this aspect, only the part that needs to be adjusted in the transport schedule is temporarily removed from the transport schedule, and the removed part is reinserted into the transport schedule according to the scheduled transport start time corrected to "the time obtained by adding a predetermined time to the processing end time", so that the transport schedule can be adjusted with the minimum necessary processing and the adjusted transport schedule can be generated.

[0126]

[13] According to one aspect, the control device calculates the expected processing end time from a rule-based calculation formula or a learned network using the detection value of the sensor.

[0127] According to this aspect, the processing end time can be easily calculated from the rule-based calculation formula using the detection value of the sensor, parameters of the recipe setting, etc., or a highly accurate processing end time can be calculated using a learned network.

[0128]

[14] According to one aspect, the control device uses a graph network-based scheduler, a simulation-based scheduler, or a machine learning-based scheduler to generate and adjust the transport schedule.

[0129] According to this aspect, the generation or adjustment of the transport schedule can be implemented using various schedulers.

[0130]

[15] According to one embodiment, the first process is a plating process, and the first or plurality of processes include only the plating process or both the plating process and a rinsing process.

[0131] According to this embodiment, it is possible to suppress the occurrence of conveyance disturbance due to fluctuations in the plating process time and the possibility that other substrates cannot meet the limit value of the post-treatment standing time.

[0132]

[16] According to one embodiment, there are provided a plurality of processing tanks for processing a substrate, a transfer machine for transferring the substrate, and a control device that creates a transfer schedule for transferring and processing the substrate between the plurality of processing tanks, and controls the transfer of the substrate by the transfer machine and the substrate processing in the plurality of processing tanks based on the transfer schedule. The plurality of processing tanks include a first processing tank that performs one or more processes including a first process on the substrate. A method for controlling a substrate processing apparatus, wherein the control device adds a positive or negative margin time calculated by a learning network or a statistical calculation method using the actually measured processing time obtained by actually performing the first process on a plurality of substrates in the first processing tank to the processing time of the first process set in the recipe to generate a transfer schedule.

[0133]

[17] According to one embodiment, there is provided a storage medium storing a program for causing a computer to execute a method for controlling a substrate processing apparatus, the method including a plurality of processing tanks for processing a substrate, a transfer machine for transferring the substrate, and a control device that creates a transfer schedule for transferring and processing the substrate between the plurality of processing tanks, and controls the transfer of the substrate by the transfer machine and the substrate processing in the plurality of processing tanks based on the transfer schedule. The plurality of processing tanks include a first processing tank that performs one or more processes including a first process on the substrate. The control device actually performs the first process on a plurality of substrates in the first processing tank A storage medium storing a program for causing a computer to execute: adding a positive or negative margin time calculated by a learning network or a statistical calculation method using the actually measured processing time obtained thereby to the processing time of a first process set in a recipe to generate a transfer schedule.

[0134]

[18] According to one embodiment, there is provided a method for controlling a substrate processing apparatus, the method including: a plurality of processing tanks that perform processing on a substrate; a transfer device that transfers the substrate; a control device that creates a transfer schedule for transferring and processing the substrate between the plurality of processing tanks and controls the transfer of the substrate by the transfer device and the substrate processing in the plurality of processing tanks based on the transfer schedule, wherein the plurality of processing tanks include a first processing tank that performs one or more processes including a first process on the substrate, and the first processing tank has a sensor that detects the progress of the first process. The method includes estimating an expected processing end time at which all of the one or more processes in the first processing tank are completed from a detection value acquired from the sensor, and when it is determined that the expected processing end time is later than a scheduled transfer start time set in the transfer schedule, correcting the scheduled transfer start time to the expected processing end time and adjusting the transfer schedule.

[0135]

[19] According to one embodiment, there are provided a plurality of processing tanks for processing a substrate, a transfer machine for transferring the substrate, and a control device that creates a transfer schedule for transferring and processing the substrate between the plurality of processing tanks and controls the transfer of the substrate by the transfer machine and the substrate processing in the plurality of processing tanks based on the transfer schedule. The plurality of processing tanks include a first processing tank that performs one or more processes including a first process on the substrate, and the first processing tank has a sensor for detecting the progress of the first process. A storage medium storing a program for causing a computer to execute a method for controlling a substrate processing apparatus, the method including estimating an expected processing end time at which all of the one or more processes in the first processing tank are completed from a detection value acquired from the sensor, and when it is determined that the expected processing end time is later than a scheduled transfer start time set in the transfer schedule, correcting the scheduled transfer start time to the expected processing end time and adjusting the transfer schedule.

[0136] As described above, embodiments of the present invention have been described based on several examples. However, the above-described embodiments of the invention are for facilitating understanding of the present invention and do not limit the present invention. The present invention can be changed and improved without departing from its gist, and it goes without saying that equivalents of the present invention are included therein. Also, any combination or omission of each component described in the claims and the specification is possible within the scope that can solve at least a part of the above-described problems or exhibit at least a part of the effects.

Description of Reference Numerals

[0137] 100... Substrate processing apparatus 101A... Load / Unload section 101B... Processing section 102... Cassette table 103... Transfer robot 104... Aligner 105... Substrate attachment / detachment station 105a... Substrate attachment / detachment device 106…Spin Rinse Dryer 107…Stocka 108…Pre - wet Module 109…Pre - soak Module 110a…Pre - soak Rinse Module 111…Blow Module 110b…Rinse Module 112…Plating Processing Module 112a…Plating Tank (Cell) 113…Substrate Holder Conveyor 114…Conveyor (Transporta) 115…Conveyor (Transporta) 116…Rail 120…Device Computer 120A…CPU 120B…Memory 120C…Operation Screen Application 120D…Conveyor Scheduler 121…Device Controller 130…Operating Equipment 1201…Conveyor Schedule Generation Unit 1202…HMI Unit 1203…Margin Time Calculation Unit 1205…Schedule Adjustment Judgment Unit 1206…Estimated Completion Time Calculation Unit 1207…Plating Film Thickness Measurement Unit< / am> < / tm> < / tm>

Claims

1. A substrate processing apparatus, comprising: a plurality of processing tanks for performing processing on a substrate; a transporter for transporting the substrate; a control device configured to create a transport schedule for transporting and processing the substrate between the plurality of processing tanks, and to control the transport of the substrate by the transporter and the substrate processing in the plurality of processing tanks based on the transport schedule; the plurality of processing tanks including a first processing tank that performs one or more processes including a first process on the substrate; the control device generates a transport schedule by adding a positive or negative margin time calculated by a learning network or a statistical calculation method using the measured processing time obtained by actually performing the first process on a plurality of substrates in the first processing tank to the processing time of the first process set in a recipe. A substrate processing apparatus.

2. The substrate processing apparatus according to claim 1, wherein the margin time is calculated based on a statistical calculation of measured values including the measured processing time when the first process is actually performed on a plurality of substrates in the first processing tank, so that among the plurality of substrates, the measured processing time of the substrates within the range of 3σ values, which is three times the standard deviation σ, does not exceed the time obtained by adding the margin to the processing time of the first process set in the recipe. A substrate processing apparatus.

3. The substrate processing apparatus according to claim 1 or 2, wherein the first processing tank includes a sensor for detecting the progress of the first process; the control device estimates the expected processing end time when all of the one or more processes in the first processing tank are completed from the detection value obtained from the sensor, and when it is determined that the expected processing end time is later than the scheduled transport start time set in the transport schedule, the control device corrects the scheduled transport start time to the expected processing end time and adjusts the transport schedule. A substrate processing apparatus.

4. The substrate processing apparatus according to claim 3, wherein The control device once removes, from the transfer schedule, a first portion of the transfer schedule corresponding to a portion after the unloading of the substrate from the first processing tank, for which it is determined that the expected processing completion time is later than the expected transfer start time, a second portion of the transfer schedule corresponding to untransferred portions of one or more substrates that are affected by the transfer of the substrate on the upstream side, and a third portion of the transfer schedule for one or more subsequent unprocessed substrates in the substrate container, corrects the expected transfer start time to the expected processing completion time, and reinserts the first to third portions into the transfer schedule in accordance with the corrected expected transfer start time, thereby adjusting the transfer schedule. A substrate processing apparatus.

5. In the substrate processing apparatus according to claim 3, when the control device determines that the processing completion time has passed the expected transfer start time after the processing completion time at which all of the one or more processes in the first processing tank have ended, the control device corrects the expected transfer start time to a time obtained by adding a predetermined time to the processing completion time, and adjusts the transfer schedule. A substrate processing apparatus.

6. In the substrate processing apparatus according to claim 5, the control device once removes, from the transfer schedule, a first portion of the transfer schedule corresponding to a portion after the unloading of the substrate from the first processing tank, for which it is determined that the processing completion time has passed the expected transfer start time, a second portion of the transfer schedule corresponding to untransferred portions of one or more substrates that are affected by the transfer of the substrate on the upstream side, and a third portion of the transfer schedule for one or more subsequent unprocessed substrates in the substrate container, corrects the expected transfer start time to a time obtained by adding a predetermined time to the processing completion time, and reinserts the first to third portions into the transfer schedule in accordance with the corrected expected transfer start time, thereby adjusting the transfer schedule. A substrate processing apparatus.

7. In the substrate processing apparatus according to claim 1 or 2, the control device generates the transfer schedule using a graph network method scheduler, a simulation method scheduler, or a machine learning method scheduler. A substrate processing apparatus.

8. In the substrate processing apparatus according to claim 1 or 2, The first process is a plating process, The first or plurality of processes is a substrate processing apparatus that includes only a plating process or includes a plating process and a rinsing process.

9. A substrate processing apparatus, A plurality of processing tanks for performing processing on a substrate, A transporter for transporting the substrate, A control device that creates a transport schedule for transporting and processing the substrate between the plurality of processing tanks and controls the transport of the substrate by the transporter and the substrate processing in the plurality of processing tanks based on the transport schedule, The plurality of processing tanks includes a first processing tank that performs one or more processes including a first process on the substrate, and the first processing tank has a sensor for detecting the progress of the first process, The control device estimates an expected process end time when all of the one or more processes in the first processing tank are completed from a detection value obtained from the sensor, and when it is determined that the expected process end time is later than a scheduled transport start time set in the transport schedule, the control device corrects the scheduled transport start time to the expected process end time and adjusts the transport schedule according to the corrected scheduled transport start time. A substrate processing apparatus.

10. In the substrate processing apparatus according to claim 9, The control device removes, from the transport schedule, a first portion of the transport schedule corresponding to the portion after the unloading of the substrate from the first processing tank for which it is determined that the expected process end time is later than the scheduled transport start time, a second portion of the transport schedule corresponding to the untransported portions of one or more substrates that are affected by the transport of the substrate upstream, and a third portion of the transport schedule for one or more subsequent unprocessed substrates in the substrate container, once. Then, the control device corrects the scheduled transport start time to the expected process end time and reinserts the first to third portions into the transport schedule according to the corrected scheduled transport start time, thereby adjusting the transport schedule. A substrate processing apparatus.

11. In the substrate processing apparatus according to claim 9 or 10, When the control device determines that the process end time has passed the scheduled transport start time after the process end time when all of the one or more processes in the first processing tank are completed, the control device corrects the scheduled transport start time to a time obtained by adding a predetermined time to the process end time and adjusts the transport schedule. A substrate processing apparatus.

12. In the substrate processing apparatus according to claim 11, the control device corresponds to a part after the unloading of the substrate determined to have elapsed the processing end time from the transfer start scheduled time from the transfer schedule from the first processing tank of the substrate, Once the first part of the transfer schedule, the second part of the transfer schedule corresponding to the untransferred parts of one or more substrates affected by the transfer of the substrate upstream, and the third part of the transfer schedule for one or more subsequent unprocessed substrates in the substrate container are removed from the transfer schedule, the transfer start scheduled time is corrected to a time obtained by adding a predetermined time to the processing end time, and the first to third parts are reinserted into the transfer schedule in accordance with the corrected transfer start scheduled time, thereby adjusting the transfer schedule. A substrate processing apparatus.

13. In the substrate processing apparatus according to claim 9 or 10, the control device calculates the expected processing end time using the detection value of the sensor from a rule-based calculation formula or a learned network. A substrate processing apparatus.

14. In the substrate processing apparatus according to claim 9 or 10, the control device uses a graph network-based scheduler, a simulation-based scheduler, or a machine learning-based scheduler to generate and adjust the transfer schedule. A substrate processing apparatus.

15. In the substrate processing apparatus according to claim 9 or 10, the first processing is plating, the first or more processes include only plating or include plating and rinsing. A substrate processing apparatus.

16. A method for controlling a substrate processing apparatus, comprising: a plurality of processing tanks for processing a substrate; a transfer machine for transferring the substrate; creating a transfer schedule for transferring and processing the substrate between the plurality of processing tanks, and based on the transfer schedule, controlling the transfer of the substrate by the transfer machine and the substrate processing in the plurality of processing tanks; and a control device, wherein the plurality of processing tanks include a first processing tank for performing one or more processes including a first process on the substrate. The control device adds the positive or negative margin time calculated by a learning network or a statistical calculation method using the actually measured processing time obtained by actually performing the first processing on a plurality of substrates in the first processing tank to the processing time of the first processing set in the recipe to generate a transfer schedule. A method including the above. **Claim 17** A storage medium storing a program for causing a computer to execute a method for controlling a substrate processing apparatus, the method comprising: a plurality of processing tanks for processing substrates; a transfer machine for transferring the substrates; a control device for creating a transfer schedule for transferring and processing the substrates between the plurality of processing tanks and controlling the transfer of the substrates by the transfer machine and the substrate processing in the plurality of processing tanks based on the transfer schedule, wherein the plurality of processing tanks include a first processing tank for performing one or more processes including a first process on the substrates. The control device adds the positive or negative margin time calculated by a learning network or a statistical calculation method using the actually measured processing time obtained by actually performing the first processing on a plurality of substrates in the first processing tank to the processing time of the first processing set in the recipe to generate a transfer schedule. A storage medium storing a program for causing a computer to execute the above. **Claim 18** A method for controlling a substrate processing apparatus, the method comprising: a plurality of processing tanks for processing substrates; a transfer machine for transferring the substrates; a control device for creating a transfer schedule for transferring and processing the substrates between the plurality of processing tanks and controlling the transfer of the substrates by the transfer machine and the substrate processing in the plurality of processing tanks based on the transfer schedule, wherein the plurality of processing tanks include a first processing tank for performing one or more processes including a first process on the substrates, and the first processing tank has a sensor for detecting the progress of the first process. The method includes: estimating an expected processing end time when all of the one or more processes in the first processing tank are completed from a detection value obtained from the sensor, and when it is determined that the expected processing end time is later than a scheduled transfer start time set in the transfer schedule, correcting the scheduled transfer start time to the expected processing end time and adjusting the transfer schedule. A method including the above. **Claim 19** A plurality of processing tanks for processing a substrate, a transfer machine for transferring the substrate, and a transfer schedule for transferring and processing the substrate between the plurality of processing tanks are created, and based on the transfer schedule, the transfer of the substrate by the transfer machine and the substrate processing in the plurality of processing tanks are controlled. A control device, and the plurality of processing tanks include a first processing tank that performs one or more processes including a first process on the substrate, and the first processing tank having a sensor for detecting the progress of the first process. A storage medium storing a program for causing a computer to execute a method for controlling a substrate processing apparatus, Estimate the expected processing end time when all of the one or more processes in the first processing tank are completed from the detection value obtained from the sensor, and when it is determined that the expected processing end time is later than the scheduled transfer start time set in the transfer schedule, correct the scheduled transfer start time to the expected processing end time and adjust the transfer schedule. A storage medium storing a program for causing a computer to execute.

Citation Information

Patent Citations

  • Production management system

    JP2011018738A

  • JP2021‐36582A

  • Schedule change method

    JP2022181368A