JP7471173B2 - SCHEDULE CREATION METHOD AND SCHEDULE CREATION DEVICE - Google Patents

SCHEDULE CREATION METHOD AND SCHEDULE CREATION DEVICE Download PDF

Info

Publication number
JP7471173B2
JP7471173B2 JP2020138043A JP2020138043A JP7471173B2 JP 7471173 B2 JP7471173 B2 JP 7471173B2 JP 2020138043 A JP2020138043 A JP 2020138043A JP 2020138043 A JP2020138043 A JP 2020138043A JP 7471173 B2 JP7471173 B2 JP 7471173B2
Authority
JP
Japan
Prior art keywords
processing
unit
substrate
schedule
plan
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020138043A
Other languages
Japanese (ja)
Other versions
JP2021036582A (en
Inventor
俊樹 森井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Screen Holdings Co Ltd
Original Assignee
Screen Holdings Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Screen Holdings Co Ltd filed Critical Screen Holdings Co Ltd
Publication of JP2021036582A publication Critical patent/JP2021036582A/en
Application granted granted Critical
Publication of JP7471173B2 publication Critical patent/JP7471173B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Container, Conveyance, Adherence, Positioning, Of Wafer (AREA)
  • Cleaning Or Drying Semiconductors (AREA)

Description

本願は、スケジュール作成方法およびスケジュール作成装置に関する。 This application relates to a schedule creation method and a schedule creation device.

従来から、基板を処理する基板処理装置が提案されている。この基板処理装置は、基板を処理する複数の処理ユニットと、基板を搬送する搬送ロボットと、制御部とを含む。搬送ロボットは未処理の基板を各処理ユニットに搬入し、各処理ユニットで処理された処理済みの基板を当該処理ユニットから搬出する。制御部は搬送ロボットおよび処理ユニットを制御する。 Substrate processing apparatuses for processing substrates have been proposed in the past. These substrate processing apparatuses include multiple processing units for processing substrates, a transport robot for transporting the substrates, and a control unit. The transport robot transports unprocessed substrates into each processing unit and transports processed substrates out of each processing unit. The control unit controls the transport robot and the processing units.

制御部は、搬送ロボットおよび処理ユニットの動作を規定したスケジュールを作成し、このスケジュールに従って搬送ロボットおよび処理ユニットを制御する(例えば特許文献1)。特許文献1では、制御部は、まず、処理ユニットごとに、各基板に対する処理内容を規定するブロックを時系列に従って結合して仮タイムテーブルを作成する。このブロックは、各処理ユニットの基板に対する処理、および、搬送ロボットの搬送処理を示しており、そのブロックの長さが各処理の所要処理時間を示している。 The control unit creates a schedule that specifies the operation of the transport robot and the processing units, and controls the transport robot and the processing units according to this schedule (see, for example, Patent Document 1). In Patent Document 1, the control unit first creates a provisional timetable for each processing unit by combining blocks that specify the processing content for each substrate in chronological order. These blocks indicate the processing of the substrate by each processing unit and the transport processing by the transport robot, and the length of the block indicates the required processing time for each process.

次に、制御部は、この仮タイムテーブルからブロックを取得し、時系列に従って配置することにより、基板処理装置の全体における各部の処理の時間帯を規定するスケジュールを作成する。 Next, the control unit obtains blocks from this temporary timetable and arranges them in chronological order to create a schedule that specifies the processing time periods for each part of the entire substrate processing apparatus.

制御部は、作成したスケジュールに従った動作を搬送ロボットおよび処理ユニットに行わせることにより、基板を順次に各処理ユニットにおいて処理させることができる。 The control unit can process the substrates in each processing unit sequentially by having the transport robot and processing units perform operations according to the created schedule.

特開2013-77796号公報JP 2013-77796 A

各処理ユニットにおける所要処理時間は、例えば処理ユニットの個体差によって相違し得る。また、当該所要処理時間は、処理ユニットの経時的な劣化によっても変動し得る。また、当該所要処理時間は、基板の個体差によっても変動し得る。よって、各処理ユニットにおいて所要処理時間は動的に補正することが望ましい。 The required processing time in each processing unit may differ, for example, depending on the individual differences of the processing units. Furthermore, the required processing time may vary due to deterioration of the processing unit over time. Furthermore, the required processing time may vary due to individual differences of the substrates. Therefore, it is desirable to dynamically correct the required processing time in each processing unit.

しかしながら、特許文献1では、処理ユニットの所要処理時間を予め決定して作成された全体スケジュールを利用しているので、このような処理時間の変動に対応できない。 However, in Patent Document 1, an overall schedule is used that is created by determining in advance the required processing time of each processing unit, and so such fluctuations in processing time cannot be accommodated.

そこで、本願は、所要処理時間の変動に対応してスケジュールを作成できる技術を提供することを目的とする。 Therefore, the present application aims to provide technology that can create a schedule that responds to fluctuations in required processing time.

スケジュール作成方法の第1の態様は、基板に対する処理を行う複数の処理ユニットを含む複数のユニットを備える基板処理装置の動作を時系列に従って規定するスケジュールを作成するためのスケジュール作成方法であって、処理の内容および処理の所要時間を示すブロックを時系列に従って仮想的に配置して、仮タイムテーブルを作成するステップと、前記仮タイムテーブルから前記ブロックを取得し、時系列に従って仮想的に前記ブロックを配置して、前記複数のユニットの全体についての全体スケジュールを作成するスケジューリングステップと、前記複数のユニットに含まれる第1ユニットにおいて第1センサで第1ユニットセンシング情報を検出する検出ステップと、前記第1ユニットにおける処理進行状況と、前記第1ユニットセンシング情報との関係性を示す関係性情報に基づき、前記第1ユニットの処理終了時刻を推定し、第1ユニット推定終了時刻を得る推定ステップと、前記第1ユニット推定終了時刻を反映して前記仮タイムテーブルにおける、前記第1ユニットに対応する前記ブロックの内容を更新する仮タイムテーブル更新ステップと、更新した前記仮タイムテーブルに基づき、前記全体スケジュールを再作成する全体スケジュール更新ステップとを備え、前記仮タイムテーブル更新ステップおよび前記全体スケジュール更新ステップを、前記第1ユニット推定終了時刻までに完了させる。 The first aspect of the schedule creation method is a schedule creation method for creating a schedule that chronologically specifies the operation of a substrate processing apparatus having a plurality of units, including a plurality of processing units that perform processing on substrates, and includes a step of virtually arranging blocks indicating the contents of processing and the required time of processing in a chronological order to create a provisional timetable, a scheduling step of acquiring the blocks from the provisional timetable, virtually arranging the blocks in a chronological order to create an overall schedule for the plurality of units, a detection step of detecting first unit sensing information with a first sensor in a first unit included in the plurality of units, an estimation step of estimating the processing end time of the first unit based on relationship information indicating the relationship between the processing progress in the first unit and the first unit sensing information, and obtaining an estimated first unit end time, a provisional timetable update step of updating the contents of the block corresponding to the first unit in the provisional timetable to reflect the estimated first unit end time, and an overall schedule update step of recreating the overall schedule based on the updated provisional timetable, and the provisional timetable update step and the overall schedule update step are completed by the estimated first unit end time.

スケジュール作成方法の第2の態様は、第1の態様にかかるスケジュール作成方法であって、前記スケジューリングステップにおいて、前記全体スケジュールとして、前記複数のユニットについての基板の搬入および処理の開始時刻を規定する投入計画を作成し、少なくとも前記第1ユニットについての処理の終了時刻および基板の搬出を規定する払出計画を作成する前に、前記基板処理装置に前記全体スケジュールに従った動作を実行させ、前記全体スケジュール更新ステップにおいて、前記第1ユニット推定終了時刻に基づいて前記第1ユニットについての前記払出計画を作成して前記全体スケジュールを再作成する。 A second aspect of the schedule creation method is a schedule creation method according to the first aspect, in which, in the scheduling step, an input plan is created as the overall schedule, specifying the substrate loading and processing start times for the multiple units, and before creating an unloading plan that specifies the processing end time and substrate unloading time for at least the first unit, the substrate processing apparatus is caused to perform operations in accordance with the overall schedule, and, in the overall schedule update step, the unloading plan for the first unit is created based on the estimated end time of the first unit, and the overall schedule is recreated.

スケジュール作成方法の第3の態様は、第2の態様にかかるスケジュール作成方法であって、前記第1ユニットおよび前記複数のユニットに含まれる第2ユニットにおける処理を基板に対して連続的に行う渡り処理が、基板の処理手順を規定する処理内容データ40に含まれる場合には、前記第1ユニットから前記第2ユニットへの搬送を規定する渡り計画を作成する前に、前記基板処理装置に前記全体スケジュールに従った動作を実行させ、第1基板を処理する前記第1ユニットの前記第1ユニット推定終了時刻を得たときに、前記全体スケジュール更新ステップにおいて、前記第1基板についての前記渡り計画を作成して前記全体スケジュールを再作成する。 A third aspect of the schedule creation method is a schedule creation method according to the second aspect, in which, when a transfer process in which a substrate is continuously processed in the first unit and a second unit included in the plurality of units is included in the processing content data 40 that defines the processing procedure for the substrate, before creating a transfer plan that defines the transport from the first unit to the second unit, the substrate processing apparatus is caused to perform an operation in accordance with the overall schedule, and when the first unit estimated end time of the first unit that processes the first substrate is obtained, the transfer plan for the first substrate is created in the overall schedule update step to recreate the overall schedule.

スケジュール作成方法の第4の態様は、第3の態様にかかるスケジュール作成方法であって、前記全体スケジュール更新ステップにおいて、前記第1基板を処理する前記第1ユニットの第1ユニット推定終了時刻を得たときに、前記第2ユニットが第2基板を処理しており、かつ、前記第2ユニットからの前記第2基板の搬送が未だ計画されていない場合、前記第1基板についての前記渡り計画の作成を中断し、前記第2ユニットからの当該搬送が計画されてから前記第1基板についての前記渡り計画を作成して前記全体スケジュールを再作成する。 A fourth aspect of the schedule creation method is a schedule creation method according to the third aspect, in which, in the overall schedule update step, if the second unit is processing a second substrate when the first unit estimated end time of the first unit processing the first substrate is obtained and the transport of the second substrate from the second unit has not yet been planned, the creation of the transfer plan for the first substrate is interrupted, and the transfer plan for the first substrate is created after the transport from the second unit is planned, and the overall schedule is recreated.

スケジュール作成方法の第5の態様は、第1の態様にかかるスケジュール作成方法であって、前記全体スケジュール更新ステップにおいて、前記全体スケジュールとして、前記複数のユニットについての基板の搬入、処理および搬出を規定した計画を作成する。 The fifth aspect of the schedule creation method is the schedule creation method according to the first aspect, in which in the overall schedule update step, a plan is created as the overall schedule that specifies the loading, processing, and unloading of substrates for the multiple units.

スケジュール作成方法の第6の態様は、第5の態様にかかるスケジュール作成方法であって、前記全体スケジュールにおける前記ブロックの終了予定時刻と、前記推定ステップで得られた第1ユニット推定終了時刻との時刻差が既定の基準値を超えているか否かを判断するステップをさらに含み、前記時刻差が前記基準値よりも大きいと判断された場合には、前記全体スケジュール更新ステップを実行し、前記時刻差が前記基準値よりも小さいと判断された場合には、前記全体スケジュール更新ステップを実行しない。 A sixth aspect of the schedule creation method is a schedule creation method according to the fifth aspect, further comprising a step of determining whether the time difference between the scheduled end time of the block in the overall schedule and the first unit estimated end time obtained in the estimation step exceeds a predetermined reference value, and if it is determined that the time difference is greater than the reference value, the overall schedule update step is executed, and if it is determined that the time difference is less than the reference value, the overall schedule update step is not executed.

スケジュール作成方法の第7の態様は、第5または第6の態様にかかるスケジュール作成方法であって、前記全体スケジュール更新ステップにおいて作成される前記計画は、前記第1ユニットから前記複数のユニットに含まれた第2ユニットへの搬送を規定する渡り計画を含む。 A seventh aspect of the schedule creation method is a schedule creation method according to the fifth or sixth aspect, in which the plan created in the overall schedule update step includes a transfer plan that specifies transportation from the first unit to a second unit included in the plurality of units.

スケジュール作成方法の第8の態様は、第1から第7のいずれか一つの態様にかかるスケジュール作成方法であって、前記ブロックが示す処理の時間を前記第1ユニット推定終了時刻に基づいて更新して、記憶媒体に記憶するブロック更新工程をさらに備える。 The eighth aspect of the schedule creation method is a schedule creation method according to any one of the first to seventh aspects, further comprising a block update step of updating the processing time indicated by the block based on the first unit estimated end time and storing the updated processing time in a storage medium.

スケジュール作成装置の態様は、基板に対する処理を行う複数の処理ユニットを含む複数のユニットを備える基板処理装置と、前記基板処理装置の動作を時系列に従って規定するスケジュールを作成する制御部とを備え、前記制御部は、処理の内容および処理の所要時間を示すブロックを時系列に従って仮想的に配置して、仮タイムテーブルを作成し、前記仮タイムテーブルから前記ブロックを取得し、時系列に従って仮想的に前記ブロックを配置して、前記複数のユニットの全体についての全体スケジュールを作成し、前記複数のユニットに含まれる第1ユニットにおいて第1センサで検出された第1ユニットセンシング情報と、前記第1ユニットにおける処理進行状況とを示す関係性情報に基づき、前記第1ユニットの処理終了時刻を推定し、第1ユニット推定終了時刻を取得し、前記第1ユニット推定終了時刻を反映して前記仮タイムテーブルにおける、前記第1ユニットに対応する前記ブロックの内容を更新し、前記第1ユニット推定終了時刻までに、更新した前記仮タイムテーブルに基づき、前記全体スケジュールを再作成する。 The schedule creation device includes a substrate processing apparatus having a plurality of units including a plurality of processing units that perform processing on substrates, and a control unit that creates a schedule that specifies the operation of the substrate processing apparatus in a chronological order, and the control unit virtually arranges blocks indicating the content of processing and the required time for processing in a chronological order to create a provisional timetable, obtains the blocks from the provisional timetable, virtually arranges the blocks in a chronological order to create an overall schedule for the plurality of units, estimates the processing end time of the first unit based on first unit sensing information detected by a first sensor in a first unit included in the plurality of units and relationship information indicating the processing progress in the first unit, obtains the first unit estimated end time, updates the content of the block corresponding to the first unit in the provisional timetable to reflect the first unit estimated end time, and recreates the overall schedule based on the updated provisional timetable by the first unit estimated end time.

スケジュール作成方法の第1および第5の態様ならびにスケジュール作成装置の態様によれば、処理ユニットの所要処理時間が変動しても、基板処理装置は、動作を中断することなく、その変動後の所要処理時間に対応した全体スケジュールに従って動作することができる。 According to the first and fifth aspects of the schedule creation method and the aspect of the schedule creation device, even if the required processing time of a processing unit changes, the substrate processing apparatus can operate according to an overall schedule that corresponds to the required processing time after the change without interrupting operation.

スケジュール作成方法の第2の態様によれば、払出計画を作成する前に基板処理装置が動作を実行する。もし仮に、この実行前に第1ユニットについての払出計画を作成した場合、その払出計画は全体スケジュール更新ステップにおいて変更され得る。この場合、実行ステップの実行前において作成された払出計画は無駄となる。第2の態様では、このような無駄な払出計画の作成を抑制できる。つまり、不要な制御部の動作を抑制することができる。 According to a second aspect of the schedule creation method, the substrate processing apparatus executes an operation before creating a take-out plan. If a take-out plan for the first unit is created before this execution, the take-out plan may be changed in the overall schedule update step. In this case, the take-out plan created before the execution step is executed becomes useless. In the second aspect, it is possible to prevent the creation of such useless take-out plans. In other words, it is possible to prevent unnecessary operation of the control unit.

スケジュール作成方法の第3の態様によれば、渡り計画を含む全体スケジュールを作成することができる。しかも、第1基板についての渡り計画を作成する前に基板処理装置が動作を実行する。もし仮に、この実行前に第1基板についての渡り計画を作成した場合、その渡り計画は全体スケジュール更新ステップにおいて変更され得る。この場合、実行ステップの実行前において作成された渡り計画は無駄となる。第3の態様では、このような無駄な渡り計画の作成を抑制できる。つまり、不要な制御部の動作を抑制することができる。 According to the third aspect of the schedule creation method, an overall schedule including a transfer plan can be created. Moreover, the substrate processing apparatus executes an operation before creating a transfer plan for the first substrate. If a transfer plan for the first substrate is created before this execution, the transfer plan may be changed in the overall schedule update step. In this case, the transfer plan created before the execution step is executed becomes useless. In the third aspect, the creation of such a useless transfer plan can be suppressed. In other words, unnecessary operation of the control unit can be suppressed.

スケジュール作成方法の第4の態様によれば、適切に第1基板についての渡り計画を作成することができる。 According to the fourth aspect of the schedule creation method, a transfer plan for the first board can be created appropriately.

スケジュール作成方法の第6の態様によれば、不要な全体スケジュールの再作成を回避できる。 The sixth aspect of the schedule creation method makes it possible to avoid unnecessary recreation of the entire schedule.

スケジュール作成方法の第7の態様によれば、渡り計画を含む全体スケジュールを作成することができる。 According to the seventh aspect of the schedule creation method, an overall schedule including a migration plan can be created.

スケジュール作成方法の第8の態様によれば、ブロックにおける処理の時間を実際の処理の時間に近い値に更新することができる。 According to the eighth aspect of the schedule creation method, the processing time for a block can be updated to a value closer to the actual processing time.

基板処理装置の構成の一例を概略的に示す平面図である。1 is a plan view illustrating an example of a configuration of a substrate processing apparatus. 基板処理装置の構成の一例を概略的に示す側面図である。1 is a side view illustrating an example of a configuration of a substrate processing apparatus. 基板処理装置の電気的な構成の一例を概略的に示す機能ブロック図である。2 is a functional block diagram illustrating an example of an electrical configuration of the substrate processing apparatus; FIG. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 基板処理装置の動作の一例を示すフローチャートである。10 is a flowchart showing an example of an operation of the substrate processing apparatus. 仮タイムテーブルの一例を模式的に示す図である。FIG. 10 is a diagram illustrating an example of a provisional timetable. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 更新後の仮タイムテーブルの一例を模式的に示す図である。FIG. 10 is a diagram illustrating an example of an updated provisional timetable. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 基板処理装置の動作の一例を示すフローチャートである。10 is a flowchart showing an example of an operation of the substrate processing apparatus. 基板処理装置の動作の一例を示すフローチャートである。10 is a flowchart showing an example of an operation of the substrate processing apparatus. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 基板処理装置の動作の一例を示すフローチャートである。10 is a flowchart showing an example of an operation of the substrate processing apparatus. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule. 全体スケジュールの一例を模式的に示す図である。FIG. 2 is a diagram illustrating an example of an overall schedule.

以下、添付される図面を参照しながら実施の形態について説明する。なお、図面は概略的に示されるものであり、説明の便宜のため、適宜、構成の省略、または、構成の簡略化がなされるものである。また、図面に示される構成の大きさおよび位置の相互関係は、必ずしも正確に記載されるものではなく、適宜変更され得るものである。 Below, the embodiments will be described with reference to the attached drawings. Note that the drawings are schematic, and for the sake of convenience, configurations are omitted or simplified as appropriate. Furthermore, the sizes and positional relationships of the configurations shown in the drawings are not necessarily described accurately, and may be changed as appropriate.

また、以下に示される説明では、同様の構成要素には同じ符号を付して図示し、それらの名称と機能とについても同様のものとする。したがって、それらについての詳細な説明を、重複を避けるために省略する場合がある。 In addition, in the following description, similar components are illustrated with the same reference symbols, and their names and functions are also similar. Therefore, detailed descriptions of them may be omitted to avoid duplication.

<第1の実施の形態>
図1は、基板処理装置100の構成の一例を概略的に示す平面図であり、図2は、基板処理装置100の構成の一例を概略的に示す側面図である。この基板処理装置100は、インデクサセクション1と、処理セクション2とを含む。処理セクション2は受渡ユニットPASSを含んでいる。インデクサセクション1は、未処理の基板Wを受渡ユニットPASSに渡し、受渡ユニットPASSから処理済みの基板Wを受け取る。処理セクション2は、受渡ユニットPASSから未処理の基板Wを受け取って、その基板Wに対して、処理剤(処理液または処理ガス)を用いた処理、紫外線等の電磁波を用いた処理、および、物理洗浄処理(ブラシ洗浄およびスプレーノズル洗浄等)などの各種の処理を施す。そして、処理セクション2は、処理後の基板Wを受渡ユニットPASSに渡す。
First Embodiment
FIG. 1 is a plan view showing an example of the configuration of the substrate processing apparatus 100, and FIG. 2 is a side view showing an example of the configuration of the substrate processing apparatus 100. The substrate processing apparatus 100 includes an indexer section 1 and a processing section 2. The processing section 2 includes a transfer unit PASS. The indexer section 1 transfers an unprocessed substrate W to the transfer unit PASS and receives a processed substrate W from the transfer unit PASS. The processing section 2 receives the unprocessed substrate W from the transfer unit PASS and performs various processes on the substrate W, such as a process using a processing agent (a processing liquid or a processing gas), a process using electromagnetic waves such as ultraviolet light, and a physical cleaning process (brush cleaning, spray nozzle cleaning, etc.). The processing section 2 then transfers the processed substrate W to the transfer unit PASS.

インデクサセクション1は、複数のステージST1~ST4と、基板搬送ユニットの一例であるインデクサロボットIRとを含む。ステージST1~ST4は、複数枚の基板W(例えば半導体ウエハ)を積層状態で収容した基板収容器Cをそれぞれ保持することができる基板収容器保持部である。基板収容器Cは、基板Wを密閉した状態で収納するFOUP(Front Opening Unified Pod)であってもよいし、SMIF(Standard Mechanical Inter Face)ポッドまたはOC(Open Cassette)等であってもよい。例えば、基板収容器CをステージST1~ST4に載置したとき、基板収容器Cでは、水平姿勢の複数枚の基板Wが互いに間隔を開けて鉛直方向に積層された状態となる。ここでいう水平姿勢とは、基板Wの厚み方向が鉛直方向に沿う状態をいう。 The indexer section 1 includes multiple stages ST1 to ST4 and an indexer robot IR, which is an example of a substrate transport unit. Each of the stages ST1 to ST4 is a substrate container holder capable of holding a substrate container C that contains multiple substrates W (e.g., semiconductor wafers) in a stacked state. The substrate container C may be a front opening unified pod (FOUP) that stores the substrates W in a sealed state, or a standard mechanical interface (SMIF) pod or an open cassette (OC). For example, when the substrate container C is placed on the stages ST1 to ST4, the substrate container C contains multiple substrates W in a horizontal position that are stacked vertically with a gap between them. The horizontal position here refers to a state in which the thickness direction of the substrates W is aligned vertically.

インデクサロボットIRは、例えば、基台部6と、多関節アーム7と、一対のハンド8A,8Bとを含む。基台部6は、例えば、当該基板処理装置100のフレームに固定されている。多関節アーム7は、水平面に沿って回動可能な複数本のアーム部を互いに回動可能に結合して構成されており、アーム部の結合箇所である関節部でアーム部間の角度を変更することによって、屈伸するように構成されている。多関節アーム7の基端部は、基台部6に対して、鉛直軸線まわりの回動が可能であるように結合されている。さらに、多関節アーム7は、基台部6に対して昇降可能に結合されている。換言すれば、基台部6には、多関節アーム7を昇降させるための昇降駆動機構、および、多関節アーム7を鉛直軸線まわりに回動させるための回動駆動機構が内蔵されている。また、多関節アーム7には、各アーム部を独立して回動させるための個別回動駆動機構が設けられている。多関節アーム7の先端部に、鉛直軸線まわりの個別回動および水平方向への個別進退が可能であるように、ハンド8A,8Bが結合されている。多関節アーム7には、ハンド8A,8Bを鉛直軸線まわりに個別に回動させるためのハンド回動駆動機構と、ハンド8A,8Bを水平方向に個別に進退させるためのハンド進退機構とが設けられている。ハンド8A,8Bは、例えば、1枚の基板Wをそれぞれ保持できるように構成されている。なお、ハンド8A,8Bは上下に重なった状態で配置されていてもよいが、図1では、明瞭化のために、ハンド8A,8Bを紙面に平行な方向(水平方向)にずらして描いてある。 The indexer robot IR includes, for example, a base unit 6, a multi-joint arm 7, and a pair of hands 8A and 8B. The base unit 6 is fixed to, for example, the frame of the substrate processing apparatus 100. The multi-joint arm 7 is configured by connecting a plurality of arms that can rotate along a horizontal plane to each other in a rotatable manner, and is configured to bend and extend by changing the angle between the arm units at the joints that are the connecting points of the arm units. The base end of the multi-joint arm 7 is connected to the base unit 6 so as to be rotatable around a vertical axis. Furthermore, the multi-joint arm 7 is connected to the base unit 6 so as to be able to rise and fall. In other words, the base unit 6 includes a lifting drive mechanism for raising and lowering the multi-joint arm 7, and a rotation drive mechanism for rotating the multi-joint arm 7 around the vertical axis. In addition, the multi-joint arm 7 is provided with an individual rotation drive mechanism for independently rotating each arm unit. The hands 8A and 8B are connected to the tip of the articulated arm 7 so that they can rotate individually around a vertical axis and advance and retreat individually in the horizontal direction. The articulated arm 7 is provided with a hand rotation drive mechanism for rotating the hands 8A and 8B individually around the vertical axis, and a hand advance and retreat mechanism for advancing and retreating the hands 8A and 8B individually in the horizontal direction. The hands 8A and 8B are configured to be able to hold, for example, one substrate W each. The hands 8A and 8B may be arranged in a vertically overlapping state, but in FIG. 1, the hands 8A and 8B are drawn shifted in a direction parallel to the paper surface (horizontal direction) for clarity.

この構成により、インデクサロボットIRは、いずれかのステージST1~ST4に保持された基板収容器Cから1枚の未処理の基板Wをハンド8Aで搬出して受渡ユニットPASSに渡すように動作する。さらに、インデクサロボットIRは、受渡ユニットPASSから1枚の処理済みの基板Wをハンド8Bで受け取って、いずれかのステージST1~ST4に保持された基板収容器Cに収容するように動作する。 With this configuration, the indexer robot IR operates to remove one unprocessed substrate W from a substrate container C held on any of the stages ST1 to ST4 with the hand 8A and transfer it to the transfer unit PASS. Furthermore, the indexer robot IR operates to receive one processed substrate W from the transfer unit PASS with the hand 8B and transfer it to a substrate container C held on any of the stages ST1 to ST4.

処理セクション2は、複数(この実施形態では12個)の処理ユニットSPIN1~SPIN12と、基板搬送ユニットの一例である主搬送ロボットCRと、前述の受渡ユニットPASSとを含む。処理ユニットSPIN1~SPIN12は、この実施形態では、立体的に配置されている。より具体的には、三階建て構造をなすように複数の処理ユニットSPIN1~SPIN12が配置されており、各階部分に4つの処理ユニットが配置されている。すなわち、一階部分に4つの処理ユニットSPIN1,SPIN4,SPIN7,SPIN10が配置され、二階部分に別の4つの処理ユニットSPIN2,SPIN5,SPIN8,SPIN11が配置され、三階部分にさらに別の処理ユニットSPIN3,SPIN6,SPIN9,SPIN12が配置されている。さらに具体的には、平面視において処理セクション2の中央に主搬送ロボットCRが配置されており、この主搬送ロボットCRとインデクサロボットIRとの間に受渡ユニットPASSが配置されている。3つの処理ユニットSPIN1~SPIN3を積層した第1処理ユニット群G1と、別の3つの処理ユニットSPIN4~SPIN6を積層した第2処理ユニット群G2とが、受渡ユニットPASSを挟んで対向するように配置されている。そして、第1処理ユニット群G1に対してインデクサロボットIRから遠い側に隣接するように、3つの処理ユニットSPIN7~SPIN9を積層した第3処理ユニット群G3が配置されている。同様に、第2処理ユニット群G2に対してインデクサロボットIRから遠い側に隣接するように、3つの処理ユニットSPIN10~SPIN12を積層した第4処理ユニット群G4が配置されている。第1~第4処理ユニット群G1~G4によって、主搬送ロボットCRが取り囲まれている。 The processing section 2 includes a plurality of (12 in this embodiment) processing units SPIN1 to SPIN12, a main transport robot CR which is an example of a substrate transport unit, and the aforementioned delivery unit PASS. In this embodiment, the processing units SPIN1 to SPIN12 are arranged three-dimensionally. More specifically, the processing units SPIN1 to SPIN12 are arranged to form a three-story structure, with four processing units arranged on each floor. That is, four processing units SPIN1, SPIN4, SPIN7, and SPIN10 are arranged on the first floor, another four processing units SPIN2, SPIN5, SPIN8, and SPIN11 are arranged on the second floor, and further processing units SPIN3, SPIN6, SPIN9, and SPIN12 are arranged on the third floor. More specifically, the main transport robot CR is disposed in the center of the processing section 2 in a plan view, and the transfer unit PASS is disposed between the main transport robot CR and the indexer robot IR. A first processing unit group G1, which is made up of three stacked processing units SPIN1 to SPIN3, and a second processing unit group G2, which is made up of another three stacked processing units SPIN4 to SPIN6, are disposed so as to face each other across the transfer unit PASS. A third processing unit group G3, which is made up of three stacked processing units SPIN7 to SPIN9, is disposed adjacent to the first processing unit group G1 on the side farther from the indexer robot IR. Similarly, a fourth processing unit group G4, which is made up of three stacked processing units SPIN10 to SPIN12, is disposed adjacent to the second processing unit group G2 on the side farther from the indexer robot IR. The first to fourth processing unit groups G1 to G4 surround the main transport robot CR.

主搬送ロボットCRは、例えば、基台部11と、多関節アーム12と、一対のハンド13A,13Bとを含む。基台部11は、例えば、当該基板処理装置100のフレームに固定されている。多関節アーム12は、水平面に沿って延びた複数本のアーム部を互いに回動可能に結合して構成されており、アーム部の結合箇所である関節部でアーム部間の角度を変更することによって、屈伸するように構成されている。多関節アーム12の基端部は基台部11に対して、鉛直軸線まわりの回動が可能であるように結合されている。さらに、多関節アーム12は、基台部11に対して昇降可能に結合されている。換言すれば、基台部11には、多関節アーム12を昇降させるための昇降駆動機構、多関節アーム12を鉛直軸線まわりに回動させるための回動駆動機構が内蔵されている。また、多関節アーム12には、各アーム部を独立して回動させるための個別回動駆動機構が設けられている。多関節アーム12の先端部に、鉛直軸線まわりの個別回動および水平方向への個別進退が可能であるように、ハンド13A,13Bが結合されている。多関節アーム12には、ハンド13A,13Bを鉛直軸線まわりに個別に回動させるためのハンド回動駆動機構と、ハンド13A,13Bを水平方向に個別に進退させるためのハンド進退機構とが設けられている。ハンド13A,13Bは、例えば、1枚の基板Wをそれぞれ保持できるように構成されている。なお、ハンド13A,13Bは上下に重なった状態で配置されていてもよいが、図1では、明瞭化のために、ハンド13A,13Bを紙面に平行な方向(水平方向)にずらして描いてある。 The main transport robot CR includes, for example, a base unit 11, a multi-joint arm 12, and a pair of hands 13A and 13B. The base unit 11 is fixed to, for example, a frame of the substrate processing apparatus 100. The multi-joint arm 12 is configured by connecting a plurality of arms extending along a horizontal plane to each other so as to be rotatable, and is configured to bend and extend by changing the angle between the arm units at the joints where the arm units are connected. The base end of the multi-joint arm 12 is connected to the base unit 11 so as to be rotatable around a vertical axis. Furthermore, the multi-joint arm 12 is connected to the base unit 11 so as to be able to rise and fall. In other words, the base unit 11 includes a lifting drive mechanism for raising and lowering the multi-joint arm 12 and a rotation drive mechanism for rotating the multi-joint arm 12 around a vertical axis. In addition, the multi-joint arm 12 is provided with an individual rotation drive mechanism for independently rotating each arm unit. The hands 13A and 13B are connected to the tip of the articulated arm 12 so that they can rotate about a vertical axis and advance and retreat individually in the horizontal direction. The articulated arm 12 is provided with a hand rotation drive mechanism for rotating the hands 13A and 13B about a vertical axis and a hand advance and retreat mechanism for advancing and retreating the hands 13A and 13B in the horizontal direction individually. The hands 13A and 13B are configured to be able to hold, for example, one substrate W each. The hands 13A and 13B may be arranged in a vertically overlapping state, but in FIG. 1, the hands 13A and 13B are drawn shifted in a direction parallel to the paper surface (horizontal direction) for clarity.

この構成により、主搬送ロボットCRは、受渡ユニットPASSから未処理の1枚の基板Wをハンド13Aで受け取り、その未処理の基板Wをいずれかの処理ユニットSPIN1~SPIN12に搬入する。また、主搬送ロボットCRは、処理ユニットSPIN1~SPIN12で処理された処理済みの基板Wをハンド13Bで受け取り、その基板Wを受渡ユニットPASSに渡す。 With this configuration, the main transport robot CR receives one unprocessed substrate W from the delivery unit PASS with the hand 13A, and transports the unprocessed substrate W into one of the processing units SPIN1 to SPIN12. The main transport robot CR also receives a processed substrate W that has been processed in the processing units SPIN1 to SPIN12 with the hand 13B, and delivers the substrate W to the delivery unit PASS.

処理ユニットSPIN1~SPIN12は、基板Wを1枚ずつ処理する枚葉型の処理ユニットである。処理ユニットSPIN1~SPIN12は、例えば、1枚の基板Wを水平姿勢で保持して回転させるスピンチャック15と、スピンチャック15に対して処理液(薬液またはリンス液)を供給する処理液ノズル16とを処理室17(チャンバ)内に含んだ、回転液処理ユニットであってもよい。図2では、処理ユニットSPIN3,SPIN6についてのみ、その内部構成を示し、他の処理ユニットの内部構成の図示を省いている。 The processing units SPIN1 to SPIN12 are single-wafer processing units that process substrates W one by one. The processing units SPIN1 to SPIN12 may be, for example, rotating liquid processing units that include, in a processing chamber 17 (chamber), a spin chuck 15 that holds and rotates a single substrate W in a horizontal position, and a processing liquid nozzle 16 that supplies a processing liquid (chemical liquid or rinsing liquid) to the spin chuck 15. In FIG. 2, the internal structure of only the processing units SPIN3 and SPIN6 is shown, and the internal structure of the other processing units is not shown.

図3は、基板処理装置100の電気的な構成の一例を概略的に示す機能ブロック図である。基板処理装置100は、処理ユニットSPIN1~SPIN12、主搬送ロボットCRおよびインデクサロボットIRを制御するコンピュータ20を含んでいる。コンピュータ20は、パーソナルコンピュータ(FAパソコン)の形態を有していてもよく、制御部(制御回路)21と、出入力部22と、記憶媒体23とを含んでいる。制御部21は、CPU等の演算処理装置を含む。出入力部22は、表示ユニット等の出力機器と、キーボード、ポインティングデバイスおよびタッチパネル等の入力機器とを含む。さらに、出入力部22は、ホストコンピュータとの通信のための通信モジュールを含む。記憶媒体23は、固体メモリデバイスおよびハードディスクドライブ等の記憶装置を含む。 Figure 3 is a functional block diagram showing an example of the electrical configuration of the substrate processing apparatus 100. The substrate processing apparatus 100 includes a computer 20 that controls the processing units SPIN1 to SPIN12, the main transport robot CR, and the indexer robot IR. The computer 20 may have the form of a personal computer (FA personal computer) and includes a control unit (control circuit) 21, an input/output unit 22, and a storage medium 23. The control unit 21 includes a processor such as a CPU. The input/output unit 22 includes an output device such as a display unit, and an input device such as a keyboard, a pointing device, and a touch panel. Furthermore, the input/output unit 22 includes a communication module for communication with a host computer. The storage medium 23 includes a storage device such as a solid-state memory device and a hard disk drive.

制御部21は、スケジューリング機能部(スケジューラ)25と、処理実行指示部26とを含む。スケジューリング機能部25は、基板Wを基板収容器Cから搬出し、処理ユニットSPIN1~SPIN12で処理した後、基板収容器Cに収容するために、基板処理装置100のリソースを時系列に従って動作させるための計画(全体スケジュール)を作成する。全体スケジュールは基板処理装置100の動作を規定した計画である。処理実行指示部26は、スケジューリング機能部25によって作成された全体スケジュールに従って、基板処理装置100のリソースを動作させる。 The control unit 21 includes a scheduling function unit (scheduler) 25 and a processing execution instruction unit 26. The scheduling function unit 25 creates a plan (overall schedule) for operating the resources of the substrate processing apparatus 100 in chronological order so that the substrate W is removed from the substrate container C, processed in the processing units SPIN1 to SPIN12, and then stored in the substrate container C. The overall schedule is a plan that specifies the operation of the substrate processing apparatus 100. The processing execution instruction unit 26 operates the resources of the substrate processing apparatus 100 in accordance with the overall schedule created by the scheduling function unit 25.

記憶媒体23は、制御部21が実行するプログラムと、処理内容データ40と、スケジューリング機能部25によって作成されたスケジュールデータ(全体スケジュール)とを含む各種データ等を記憶するように構成されている。処理内容データ40は、基板Wに対する処理の内容および処理の所要時間(以下、所要処理時間と呼ぶ)を示している。処理内容データ40の具体例は後述する。この処理内容データ40は例えばホストコンピュータから出入力部22に入力されてもよく、あるいは、ユーザによる入力機器の操作によって出入力部22に入力されてもよい。 The storage medium 23 is configured to store various data including the program executed by the control unit 21, processing content data 40, and schedule data (overall schedule) created by the scheduling function unit 25. The processing content data 40 indicates the content of processing for the substrate W and the time required for the processing (hereinafter referred to as required processing time). Specific examples of the processing content data 40 will be described later. This processing content data 40 may be input to the input/output unit 22 from a host computer, for example, or may be input to the input/output unit 22 by a user operating an input device.

記憶媒体23に記憶されたプログラムは、制御部21をスケジューリング機能部25として動作させるためのスケジュール作成プログラムと、制御部21を処理実行指示部26として動作させるための処理実行プログラムとを含む。なお、制御部21は必ずしもプログラムに基づいて動作する必要はなく、例えば、論理回路等の専用のハードウェア回路によって構成されてもよい。 The programs stored in the storage medium 23 include a schedule creation program for causing the control unit 21 to operate as a scheduling function unit 25, and a process execution program for causing the control unit 21 to operate as a process execution instruction unit 26. Note that the control unit 21 does not necessarily need to operate based on a program, and may be configured, for example, by a dedicated hardware circuit such as a logic circuit.

処理内容データ40は、各基板Wに付与されたプロセスジョブ(PJ)符号と、プロセスジョブ符号に対応付けられたレシピとを含む。レシピは、基板処理内容を定義したデータであり、基板処理条件および基板処理手順を含む。より具体的には、レシピは、並行処理ユニット情報、使用処理液情報および処理時間(所要処理時間)情報等を含む。並行処理ユニット情報とは、使用可能な処理ユニットを指定する情報であり、指定された処理ユニットによる並行処理が可能であることを表す。換言すれば、指定処理ユニットのうちの一つが使用できないときには、それ以外の指定処理ユニットによる代替が可能であることを表す。「使用できないとき」とは、当該処理ユニットが別の基板Wの処理のために使用中であるとき、当該処理ユニットが故障中であるとき、または、オペレータが当該処理ユニットで基板Wの処理をさせたくないと考えているとき、などである。プロセスジョブとは、共通の処理が施される1枚または複数枚の基板Wをいう。プロセスジョブ符号とは、プロセスジョブを識別するための識別情報(基板群識別情報)である。すなわち、共通のプロセスジョブ符号が付与された複数枚の基板Wには、当該プロセスジョブ符号に対応付けられたレシピによる共通の処理が施される。ただし、異なるプロセスジョブ符号に対応する基板処理内容(レシピ)が同じである場合もあり得る。例えば、処理順序(基板収容器Cからの払い出し順序)が連続している複数枚の基板Wに対して共通の処理が施されるとき、それらの複数枚の基板Wに対して共通のプロセスジョブ符号が付与される。 The processing content data 40 includes a process job (PJ) code assigned to each substrate W and a recipe associated with the process job code. The recipe is data that defines the substrate processing content, and includes substrate processing conditions and substrate processing procedures. More specifically, the recipe includes parallel processing unit information, processing liquid information, and processing time (required processing time) information. The parallel processing unit information is information that specifies available processing units, and indicates that parallel processing is possible using the specified processing units. In other words, it indicates that when one of the specified processing units is unavailable, it is possible to use the other specified processing units instead. "When unavailable" refers to when the processing unit is being used to process another substrate W, when the processing unit is out of order, or when the operator does not want the processing unit to process the substrate W. A process job refers to one or more substrates W that are subjected to a common process. A process job code is identification information (substrate group identification information) for identifying a process job. That is, multiple substrates W that have been assigned a common process job code are subjected to a common process according to a recipe that corresponds to that process job code. However, there may be cases where the substrate processing content (recipe) that corresponds to different process job codes is the same. For example, when a common process is performed on multiple substrates W that are in a consecutive processing order (the order of removal from the substrate container C), a common process job code is assigned to those multiple substrates W.

制御部21は、各基板Wに対する処理内容データ40を取得して、記憶媒体23に記憶させる。処理内容データ40の取得および記憶は、各基板Wに対するスケジューリング(つまり、全体スケジュールの作成)が実行されるよりも前に行われればよい。例えば、基板収容器CがステージST1~ST4に保持された直後に、ホストコンピュータから制御部21に当該基板収容器Cに収容された基板Wに対応する処理内容データ40が与えられてもよい。 The control unit 21 acquires processing content data 40 for each substrate W and stores it in the storage medium 23. The acquisition and storage of processing content data 40 may be performed before scheduling for each substrate W (i.e., creation of an overall schedule). For example, immediately after a substrate container C is held on a stage ST1 to ST4, processing content data 40 corresponding to a substrate W contained in the substrate container C may be provided from the host computer to the control unit 21.

スケジューリング機能部25は処理内容データ40に基づいて全体スケジュールを作成する。図4は、スケジューリング機能部25によって作成される全体スケジュールの一例を模式的に示す図である。図4の例では、全体スケジュールはブロックおよび矢印によって模式的に表現されている。なお、図4では、説明を簡単にすべく、代表的に4つの処理ユニットSPIN1~SPIN4を用いた全体スケジュールが示されている。また、説明の簡単のために、8枚の基板Wに対する処理について述べる。実際にはより多くの基板Wが処理される。 The scheduling function unit 25 creates an overall schedule based on the processing content data 40. FIG. 4 is a diagram that shows a schematic example of an overall schedule created by the scheduling function unit 25. In the example of FIG. 4, the overall schedule is represented diagrammatically by blocks and arrows. Note that, for ease of explanation, FIG. 4 shows an overall schedule that representatively uses four processing units SPIN1 to SPIN4. Also, for ease of explanation, processing of eight substrates W will be described. In reality, more substrates W are processed.

図4に示される各ブロックは、各ユニット(インデクサロボットIR、主搬送ロボットCRおよび処理ユニットSPIN1~SPIN4)における処理の内容を示している。具体的には、記号Gで示されるブロックは、各基板搬送ユニット(インデクサロボットIRおよび主搬送ロボットCRの各々)による基板Wの搬出処理を示し、記号Pで示されるブロックは、各基板搬送ユニットによる基板Wの搬入処理を示し、空欄のブロックは各処理ユニットSPIN1~SPIN4における処理を示している。また各ブロックの長さは、対応する処理の所要処理時間を示している。これらのブロックは処理内容データ40によって規定される。 Each block shown in FIG. 4 indicates the processing content in each unit (indexer robot IR, main transport robot CR, and processing units SPIN1 to SPIN4). Specifically, the block indicated with the symbol G indicates the unloading processing of the substrate W by each substrate transport unit (indexer robot IR and main transport robot CR), the block indicated with the symbol P indicates the loading processing of the substrate W by each substrate transport unit, and the blank blocks indicate the processing in each processing unit SPIN1 to SPIN4. The length of each block indicates the required processing time for the corresponding process. These blocks are defined by the processing content data 40.

図4に示される各ブロックの位置は、当該ブロックに対応する処理の時間帯を示している。つまり、ブロックの両端の位置はそれぞれ処理の開始時刻および終了時刻を示している。また、ブロック間をつなぐ矢印は基板Wの移動先を示している。 The position of each block shown in FIG. 4 indicates the time period of the processing corresponding to that block. In other words, the positions of both ends of the block indicate the start and end times of the processing, respectively. In addition, the arrows connecting the blocks indicate the destination of the substrate W.

ここで、代表的に、処理ユニットSPIN1によって処理される基板Wに着目して、全体スケジュールを説明する。図4の例では、処理ユニットSPIN1によって処理される基板Wに対応するブロックを、太線で示している。ここでは、処理ユニットSPIN1によって順次に処理される2枚の基板Wとして基板W1,W2を例として説明する。図4によれば、未処理の基板W1はインデクサロボットIRによって基板収容器Cから取り出され(ブロックA1)、受渡ユニットPASSに受け渡される(ブロックA2)。そして、この基板W1は主搬送ロボットCRによって受渡ユニットPASSから取り出され(ブロックA3)、処理ユニットSPIN1に受け渡される(ブロックA4)。基板W1には、この処理ユニットSPIN1において処理が施される(ブロックA5)。 Here, the overall schedule will be described focusing on a substrate W processed by processing unit SPIN1 as a representative example. In the example of FIG. 4, the blocks corresponding to the substrate W processed by processing unit SPIN1 are indicated by thick lines. Here, substrates W1 and W2 are used as an example of two substrates W sequentially processed by processing unit SPIN1. According to FIG. 4, the unprocessed substrate W1 is taken out of the substrate container C by the indexer robot IR (block A1) and transferred to the transfer unit PASS (block A2). Then, this substrate W1 is taken out of the transfer unit PASS by the main transport robot CR (block A3) and transferred to the processing unit SPIN1 (block A4). The substrate W1 is subjected to processing in this processing unit SPIN1 (block A5).

図4の例では、処理ユニットSPIN1の処理終了前に、次の未処理の基板W2がインデクサロボットIRによって基板収容器Cから取り出され(ブロックB1)、受渡ユニットPASSに受け渡される(ブロックB2)。そして、基板W2は主搬送ロボットCRによって受渡ユニットPASSから取り出される(ブロックB3)。 In the example of FIG. 4, before the processing in the processing unit SPIN1 is completed, the next unprocessed substrate W2 is removed from the substrate container C by the indexer robot IR (block B1) and transferred to the transfer unit PASS (block B2). Then, the substrate W2 is removed from the transfer unit PASS by the main transport robot CR (block B3).

一方、処理ユニットSPIN1の処理終了後に、処理済みの基板W1は主搬送ロボットCRによって処理ユニットSPIN1から取り出され(ブロックA6)、引き続き、次の未処理の基板W2が主搬送ロボットCRによって処理ユニットSPIN1に受け渡される(ブロックB4)。なお、本実施の形態では、主搬送ロボットCRは2つのハンド13A,13Bを含むので、例えばハンド13Aによって処理済みの基板W1を処理ユニットSPIN1から取り出し(ブロックA6)、ハンド13Bによって未処理の基板W2を処理ユニットSPIN1に受け渡す(ブロックB4)ことができる。処理済みの基板W1は主搬送ロボットCRから受渡ユニットPASSに受け渡される(ブロックA7)。この基板W1はインデクサロボットIRによって受渡ユニットPASSから取り出され(ブロックA8)、基板収容器Cに受け渡される(ブロックA9)。 After the processing in the processing unit SPIN1 is completed, the processed substrate W1 is removed from the processing unit SPIN1 by the main transport robot CR (block A6), and the next unprocessed substrate W2 is then transferred to the processing unit SPIN1 by the main transport robot CR (block B4). In this embodiment, the main transport robot CR includes two hands 13A and 13B, so that the processed substrate W1 can be removed from the processing unit SPIN1 by the hand 13A (block A6), and the unprocessed substrate W2 can be transferred to the processing unit SPIN1 by the hand 13B (block B4). The processed substrate W1 is transferred from the main transport robot CR to the transfer unit PASS (block A7). The substrate W1 is removed from the transfer unit PASS by the indexer robot IR (block A8) and transferred to the substrate container C (block A9).

一方、未処理の基板W2には、処理ユニットSPIN1によって処理が施される(ブロックB5)。そして、処理ユニットSPIN1による基板W2の処理が終了すると、主搬送ロボットCRによって処理ユニットSPIN1から取り出され(ブロックB6)、受渡ユニットPASSに受け渡される(ブロックB7)。続いて、処理済みの基板W2はインデクサロボットIRによって受渡ユニットPASSから取り出され(ブロックB8)、基板収容器Cに受け渡される(ブロックB9)。 Meanwhile, unprocessed substrate W2 is processed by processing unit SPIN1 (block B5). Then, when processing of substrate W2 by processing unit SPIN1 is completed, it is removed from processing unit SPIN1 by main transport robot CR (block B6) and transferred to transfer unit PASS (block B7). Next, processed substrate W2 is removed from transfer unit PASS by indexer robot IR (block B8) and transferred to substrate container C (block B9).

制御部21のスケジューリング機能部25が、図4に例示するような全体スケジュールを作成し、処理実行指示部26がこの全体スケジュールに従って基板処理装置100の各部を制御すれば、全体スケジュールに従った動作を基板処理装置100に行わせることができる。図4の全体スケジュールによれば、処理ユニットSPIN1~SPIN4がそれぞれ2回の処理を行うことにより、8枚の基板Wが処理される。 If the scheduling function unit 25 of the control unit 21 creates an overall schedule as shown in FIG. 4 and the processing execution instruction unit 26 controls each part of the substrate processing apparatus 100 according to this overall schedule, the substrate processing apparatus 100 can be made to operate according to the overall schedule. According to the overall schedule in FIG. 4, eight substrates W are processed by each of the processing units SPIN1 to SPIN4 performing two processes.

しかしながら、処理ユニットSPIN1~SPIN4における所要処理時間は種々の要因により、予め決められた時間と相違し得る。当該処理時間は、例えば、処理ユニットSPIN1~SPIN4の個体差によって相違し得るし、また、処理ユニットSPIN1~SPIN4の経時的な変化によっても相違し得る。また、当該所要処理時間は基板Wの個体差によっても相違し得る。 However, the required processing time in the processing units SPIN1 to SPIN4 may differ from the predetermined time due to various factors. For example, the processing time may differ due to individual differences between the processing units SPIN1 to SPIN4, and may also differ due to changes over time in the processing units SPIN1 to SPIN4. The required processing time may also differ due to individual differences between substrates W.

そこで、本実施の形態では、図3に示すように、各処理ユニットSPIN1~SPIN12はセンサSRを含んでいる。このセンサSRは各処理ユニットSPIN1~SPIN12の処理実行中において処理進行状況をモニタする。具合的には、各センサSRは、各処理ユニットSPIN1~SPIN12の処理進行状況を示すユニットセンシング情報を検出する。当該ユニットセンシング情報は、各処理ユニットSPIN1~SPIN12の処理の残り時間、つまり処理の終了時刻に関連する情報である。処理ユニットSPIN1~SPIN12はセンサSRの検出に応じて、通知情報を制御部21に通知する。 In this embodiment, as shown in FIG. 3, each of the processing units SPIN1 to SPIN12 includes a sensor SR. This sensor SR monitors the processing progress status of each of the processing units SPIN1 to SPIN12 while the processing is being executed. Specifically, each sensor SR detects unit sensing information indicating the processing progress status of each of the processing units SPIN1 to SPIN12. The unit sensing information is information related to the remaining time of the processing of each of the processing units SPIN1 to SPIN12, that is, the end time of the processing. In response to detection by the sensor SR, the processing units SPIN1 to SPIN12 notify the control unit 21 of notification information.

例えば処理ユニットSPIN1~SPIN12が基板Wの表面の所定膜に対してエッチング処理を行う場合、当該ユニットセンシング情報として当該所定膜の膜厚を採用できる。この場合、センサSRは基板W上の所定膜の膜厚を検出する。例えばセンサSRとしては、基板Wの表面を撮像するカメラを採用できる。基板Wの表面はエッチングの進行度、つまり、所定膜の膜厚に応じて変化するので、カメラによって取得される画像も所定膜の膜厚に応じて変化する。よって、この画像はエッチングの進行度に関連する情報、言い換えれば、処理の終了時刻に関連する情報である。 For example, when processing units SPIN1 to SPIN12 perform etching processing on a specified film on the surface of substrate W, the film thickness of the specified film can be used as the unit sensing information. In this case, sensor SR detects the film thickness of the specified film on substrate W. For example, a camera that captures an image of the surface of substrate W can be used as sensor SR. Since the surface of substrate W changes depending on the progress of etching, i.e., the film thickness of the specified film, the image captured by the camera also changes depending on the film thickness of the specified film. Therefore, this image is information related to the progress of etching, in other words, information related to the end time of processing.

エッチングが進行すると、そのエッチング対象領域の色が処理の進行状況(つまり、エッチングの進行度)に応じて変化する場合がある。この場合、エッチングの進行度とエッチング対象領域の色との関係を予め求めておいてもよい。また、エッチングの進行度は処理開始からの経過時間に依存するので、当該関係から、エッチング対象領域の色と処理の残り時間との対応関係を予め求めることができる。このような対応関係は例えば実験またはシミュレーションにより求めることができる。この対応関係を示す関係性情報は、例えば数値表またはルックアップテーブルとして記憶媒体23に記憶されてもよく、あるいは、演算式(関数式)として記憶媒体23に記憶されてもよい。 As etching progresses, the color of the area to be etched may change depending on the progress of the process (i.e., the degree of etching progress). In this case, the relationship between the degree of etching progress and the color of the area to be etched may be determined in advance. Furthermore, since the degree of etching progress depends on the time elapsed since the start of processing, the correspondence between the color of the area to be etched and the remaining time of processing can be determined in advance from this relationship. Such a correspondence can be determined, for example, by experiment or simulation. Relationship information indicating this correspondence may be stored in the storage medium 23, for example, as a numerical table or lookup table, or may be stored in the storage medium 23 as an arithmetic expression (function expression).

そして、センサSRによって取得された画像に対する画像処理を行うことにより、エッチング対象領域の色を判別すれば、その判別した色と、予め決められた対応関係(記憶媒体23の関係性情報)とに応じて、処理の残り時間を求める(推定する)ことができる。 Then, by performing image processing on the image acquired by the sensor SR to determine the color of the area to be etched, the remaining processing time can be found (estimated) according to the determined color and a predetermined correspondence relationship (relationship information in the storage medium 23).

処理ユニットSPIN1~SPIN12の各々は、処理中にセンサSRによって検出されたユニットセンシング情報に応じて、当該処理中に通知情報を制御部21に通知する。通知情報は、センサSRによって取得されたユニットセンシング情報(上述の例では画像)であってもよい。この場合、制御部21のスケジューリング機能部25は、当該通知情報と上記対応関係とに基づいて、その通知元の処理ユニットの残り時間を推定し、ユニット推定終了時刻を推定する(推定ステップ)。 Each of the processing units SPIN1 to SPIN12 notifies the control unit 21 of notification information during processing in response to unit sensing information detected by the sensor SR during the processing. The notification information may be unit sensing information (an image in the above example) acquired by the sensor SR. In this case, the scheduling function unit 25 of the control unit 21 estimates the remaining time of the processing unit that sent the notification based on the notification information and the above correspondence relationship, and estimates the unit estimated end time (estimation step).

なお、制御部21の機能が分割されている場合もある。例えば処理ユニットSPIN1~SPIN12のそれぞれに制御部が設けられ、処理ユニットSPIN1~SPIN12の制御部が制御部21と通信線で接続される場合もある。この場合、各処理ユニットSPIN1~SPIN12の制御部が、センサSRによって検出されたユニットセンシング情報に基づいて処理の残り時間を推定してもよい。そして、各処理ユニットSPIN1~SPIN12の制御部は、この推定残り時間を含む通知情報を制御部21に通知してもよい。 The functions of the control unit 21 may be divided. For example, a control unit may be provided in each of the processing units SPIN1 to SPIN12, and the control units of the processing units SPIN1 to SPIN12 may be connected to the control unit 21 via a communication line. In this case, the control unit of each of the processing units SPIN1 to SPIN12 may estimate the remaining processing time based on unit sensing information detected by the sensor SR. Then, the control unit of each of the processing units SPIN1 to SPIN12 may notify the control unit 21 of notification information including this estimated remaining time.

以上のように、制御部21のスケジューリング機能部25は、処理ユニットが処理を実行している途中に、その処理ユニットのユニット推定終了時刻を認識することができる。言い換えれば、スケジューリング機能部25は、その処理ユニットが処理を終了するまでに、その処理ユニットのユニット推定終了時刻を認識することができる。そこで、スケジューリング機能部25は、その処理ユニットが処理を終了するまでに、そのユニット推定終了時刻に基づいて全体スケジュールを再作成する。具体的には、スケジューリング機能部25はその処理ユニットの終了時刻をユニット推定終了時刻に基づいて決定し、これに伴って、他のユニットの処理の時間帯も適宜に決定する。以下、具体的な動作の一例について詳述する。 As described above, the scheduling function unit 25 of the control unit 21 can recognize the unit estimated end time of a processing unit while the processing unit is in the middle of executing the processing. In other words, the scheduling function unit 25 can recognize the unit estimated end time of the processing unit before the processing unit ends. Therefore, the scheduling function unit 25 recreates the overall schedule based on the unit estimated end time before the processing unit ends. Specifically, the scheduling function unit 25 determines the end time of the processing unit based on the unit estimated end time, and accordingly determines the processing time zones of other units as appropriate. An example of a specific operation is described in detail below.

なお、ここでは、各ユニットの処理の時間帯の決定を、当該処理に対応したブロックの配置で説明する。つまり、ブロックを時間軸上で仮想的に配置することで、当該ブロックに対応した処理の時間帯を決定している。 Note that here, the determination of the processing time period for each unit is explained by arranging the blocks corresponding to that processing. In other words, the blocks are virtually arranged on the time axis to determine the processing time period corresponding to that block.

<基板処理装置100の具体的な動作例>
第1の実施の形態では、全体スケジュールを投入計画および払出計画に分割して考慮する。投入計画とは、基板収容器Cから各処理ユニットSPIN1~SPIN12への基板Wの搬送に関する計画である。つまり、この投入計画は、基板Wの搬入および処理の開始時刻を規定する計画であり、より具体的には、各処理ユニットへの各基板搬送ユニットの搬送処理の時間帯(例えばブロックA1~A4,B1~B4)と、各処理ユニットSPIN1~SPIN12の処理の開始時刻(例えばブロックA5,B5の開始時刻)とを規定した計画である。払出計画とは、各処理ユニットSPIN1~SPIN12から基板収容器Cまでの基板Wの搬送に関する計画である。つまり、この払出計画は、処理の終了時刻および基板Wの搬出を規定する計画であり、より具体的には、各処理ユニットSPIN1~SPIN12の処理の終了時刻(例えばブロックA5,B5の終了時刻)と、基板収容器Cへの各基板搬送ユニットの搬送処理の時間帯(例えばブロックA6~A9,B6~B9)とを規定した計画である。
<Specific Operation Example of the Substrate Processing Apparatus 100>
In the first embodiment, the overall schedule is divided into an input plan and an unloading plan for consideration. The input plan is a plan regarding the transport of substrates W from the substrate container C to each of the processing units SPIN1 to SPIN12. In other words, this input plan is a plan that specifies the start time of loading and processing of substrates W, and more specifically, the time period of transport processing by each substrate transport unit to each processing unit (e.g., blocks A1 to A4, B1 to B4) and the start time of processing in each processing unit SPIN1 to SPIN12 (e.g., start time of blocks A5, B5). The unloading plan is a plan regarding the transport of substrates W from each processing unit SPIN1 to SPIN12 to the substrate container C. In other words, this unloading plan is a plan that specifies the end time of processing and the removal of substrates W, and more specifically, is a plan that specifies the end time of processing for each processing unit SPIN1 to SPIN12 (e.g., the end time of blocks A5, B5) and the time period for transport processing of each substrate transport unit to substrate container C (e.g., blocks A6 to A9, B6 to B9).

図5は、基板処理装置100(スケジュール作成装置)の具体的な動作の一例を示すフローチャートである。この一連の処理は繰り返し実行される。まず、スケジューリング機能部25は基板処理開始指示があったか否かを判断する(ステップS1)。例えばホストコンピュータまたはユーザから出入力部22に当該開始指示が入力される。制御部21は当該入力に応答して、例えば開始指示のフラグをLからHに遷移させる。ここでいう「L」および「H」は情報の2値を示すものであり、開始指示のフラグがHであることは、基板処理開始指示が入力されたことを示す。この開始指示のフラグは、全ての基板Wに対する処理が終了するまでHを維持する。 Figure 5 is a flow chart showing an example of a specific operation of the substrate processing apparatus 100 (schedule creation apparatus). This series of processes is executed repeatedly. First, the scheduling function unit 25 judges whether or not a substrate processing start instruction has been received (step S1). For example, the start instruction is input to the input/output unit 22 from a host computer or a user. In response to this input, the control unit 21 transitions, for example, the start instruction flag from L to H. Here, "L" and "H" indicate two values of information, and a start instruction flag of H indicates that a substrate processing start instruction has been input. This start instruction flag remains H until processing for all substrates W is completed.

基板処理開始指示は、共通の基板収容器Cに収容された全ての基板Wを一単位として発行されてもよい。また、基板処理開始指示は、共通の基板収容器Cに収容された全数未満の1枚以上の基板Wの処理開始を指示するものであってもよいし、別々の基板収容器Cに収容された複数枚の基板Wの処理開始を指示するものであってもよい。 The substrate processing start instruction may be issued for all substrates W accommodated in a common substrate container C as a single unit. The substrate processing start instruction may also be an instruction to start processing one or more substrates W that are less than the total number accommodated in the common substrate container C, or an instruction to start processing multiple substrates W accommodated in separate substrate containers C.

基板処理開始指示がない、つまり開始指示のフラグがLであるときには、スケジューリング機能部25は再びステップS1を実行する。基板処理開始指示があったときには、スケジューリング機能部25は計画範囲を決定する(ステップS2)。つまり、スケジューリング機能部25は全体スケジュールのうち投入計画を作成するのか、払出計画を作成するのかを決定する。初期的には、スケジューリング機能部25は投入計画を計画範囲に決定する。以下では、まず投入計画の作成に着目して、各ステップを説明する。また、以下では、説明の簡単のために、4つの処理ユニットSPIN1~SPIN4を用いて説明を行う。 When there is no substrate processing start instruction, that is, when the start instruction flag is L, the scheduling function unit 25 executes step S1 again. When there is a substrate processing start instruction, the scheduling function unit 25 determines the planning range (step S2). That is, the scheduling function unit 25 determines whether to create an input plan or an output plan from the overall schedule. Initially, the scheduling function unit 25 determines the input plan as the planning range. Below, each step will be explained, focusing first on the creation of the input plan. Also, for simplicity of explanation, the following explanation will be given using four processing units SPIN1 to SPIN4.

例えば、処理内容データ40において或るプロセスジョブ符号に対応付けられたレシピが、処理ユニットSPIN1~SPIN4の並行処理を指定しているとする。すなわち、当該レシピに従う基板処理が、4つの処理ユニットSPIN1~SPIN4のいずれにおいても実行可能である場合を考える。この場合、当該プロセスジョブ符号が付与された基板Wが処理を受けるときに通る経路は、4通りである。すなわち、その基板Wの処理のために選択し得る経路は、処理ユニットSPIN1~SPIN4のいずれかを通る4つの経路である。そこで、スケジューリング機能部25は、その4つの経路に対応した仮タイムテーブルを作成する(ステップS3)。 For example, suppose that a recipe associated with a certain process job code in the processing content data 40 specifies parallel processing of processing units SPIN1 to SPIN4. That is, consider a case where substrate processing according to that recipe can be performed in any of the four processing units SPIN1 to SPIN4. In this case, there are four possible routes that a substrate W assigned that process job code can take when undergoing processing. That is, the routes that can be selected for processing that substrate W are the four routes that pass through any of the processing units SPIN1 to SPIN4. The scheduling function unit 25 then creates a tentative timetable corresponding to the four routes (step S3).

図6は、処理ユニットSPIN1を通る経路に対応した仮タイムテーブルの一例を示す図である。ここでは、全体スケジュールの投入計画を作成するので、仮タイムテーブルでも、投入計画で用いられるブロックが配置される。図6の例では、仮タイムテーブルは、インデクサロボットIRによる基板収容器Cからの基板Wの搬出処理を表すブロックA1と、インデクサロボットIRによる基板Wの受渡ユニットPASSへの搬入処理を表すブロックA2と、主搬送ロボットCRによる受渡ユニットPASSからの基板Wの搬出処理を表すブロックA3と、主搬送ロボットCRによる基板Wの処理ユニットSPIN1への搬入処理を表すブロックA4と、処理ユニットSPIN1による基板Wに対する処理の開始を表すブロックA51とを含む。 Figure 6 is a diagram showing an example of a provisional timetable corresponding to a route that passes through processing unit SPIN1. Here, an input plan for the entire schedule is created, so the provisional timetable also includes blocks used in the input plan. In the example of Figure 6, the provisional timetable includes block A1 representing the unloading process of the substrate W from the substrate container C by the indexer robot IR, block A2 representing the loading process of the substrate W into the transfer unit PASS by the indexer robot IR, block A3 representing the unloading process of the substrate W from the transfer unit PASS by the main transport robot CR, block A4 representing the loading process of the substrate W into processing unit SPIN1 by the main transport robot CR, and block A51 representing the start of processing of the substrate W by processing unit SPIN1.

なお、以下では、インデクサロボットIRおよび主搬送ロボットCRの各々による搬出処理および搬入処理を纏めて搬送処理とも呼ぶ。この搬送処理を示すブロックは、互いに隣接して記号G,Pが付記された一対のブロック(例えば一対のブロックA1,A2および一対のブロックA3,A4)である。 In the following, the unloading and loading processes performed by the indexer robot IR and the main transport robot CR are collectively referred to as the transport process. The blocks that represent this transport process are a pair of adjacent blocks marked with the symbols G and P (for example, a pair of blocks A1, A2 and a pair of blocks A3, A4).

スケジューリング機能部25は、図6に示すように、複数のブロックを時間軸上で重なり合いのないように順番に配置することによって、仮タイムテーブルを作成する。スケジューリング機能部25は、同じ基板Wに対して、4つの処理ユニットSPIN1~SPIN4をそれぞれ通る4つの経路に対応した同様の4つの仮タイムテーブル(ブロックを処理ユニットSPIN1~SPIN4にそれぞれ配置した仮タイムテーブル)を作成する。こうして、1枚の基板Wに対して合計4経路分の仮タイムテーブルが作成される。 The scheduling function unit 25 creates a provisional timetable by arranging multiple blocks in order on the time axis without overlapping, as shown in FIG. 6. For the same substrate W, the scheduling function unit 25 creates four similar provisional timetables (provisional timetables in which blocks are arranged in the processing units SPIN1 to SPIN4, respectively) corresponding to the four routes that pass through the four processing units SPIN1 to SPIN4, respectively. In this way, provisional timetables for a total of four routes are created for one substrate W.

同様の仮タイムテーブルが、同じプロセスジョブ符号が付与された基板W(ここでは、最初に処理ユニットSPIN1~SPIN4で処理される4つの基板W)に対応して作成される。こうして作成された仮タイムテーブルは、スケジュールデータの一部として記憶媒体23に格納される。仮タイムテーブルの作成段階では、複数の基板Wに関するブロック同士の干渉(時間軸上での重なり合い)は考慮されない。 A similar provisional timetable is created for substrates W that have been assigned the same process job code (here, the four substrates W that are first processed in processing units SPIN1 to SPIN4). The provisional timetable created in this way is stored in storage medium 23 as part of the schedule data. At the stage of creating the provisional timetable, interference between blocks relating to multiple substrates W (overlap on the time axis) is not taken into consideration.

スケジューリング指示が発生すると(ステップS4:YES)、当該プロセスジョブの基板Wに関するブロックの配置が行われる(ステップS4~S13)。なお、制御部21はスケジューリング指示の発生に応じて、スケジューリング指示のフラグをLからHに遷移させる。スケジューリング指示のフラグがHであることは、スケジューリング指示が発生したことを示す。このスケジューリング指示のフラグは、全ての基板Wに対する処理が終了するまでHを維持する。 When a scheduling instruction is issued (step S4: YES), blocks are arranged for the substrates W of the process job (steps S4 to S13). In response to the issuance of a scheduling instruction, the control unit 21 transitions the scheduling instruction flag from L to H. The scheduling instruction flag being H indicates that a scheduling instruction has been issued. This scheduling instruction flag remains H until processing for all substrates W is completed.

スケジューリング指示が発生すると、スケジューリング機能部25は、スケジュール作成対象の基板Wがプロセスジョブの最初の基板Wであるか否かを判断する(ステップS5)。基板Wがプロセスジョブの最初の基板Wである場合、スケジューリング機能部25は前準備処理が必要か否かを判断する(ステップS6)。前準備処理としては、例えば、処理液ノズルから処理液を一定量だけ吐出するプリディスペンス工程を挙げることができる。例えば、温度調整された処理液を基板に供給して当該基板を処理する場合に、プリディスペンス工程を実行することによって、処理液ノズルおよび処理液配管に滞留していて目標温度範囲外の温度となってしまった処理液を排出して、処理液ノズルの吐出口に温度調整された処理液を導くことができる。そして、プリディスペンス工程の後に、基板Wに対して処理液を吐出する処理液供給工程を実行することによって、当初から温度調整された処理液によって基板Wを処理できる。これにより、精密な基板処理を実現できる。前準備処理の例としては、他にも、処理ユニットに設けられた処理室(チャンバ)内の洗浄処理(チャンバ洗浄)を例示できる。処理室内の洗浄を実行することによって、次に処理室に搬入される基板Wに対して、前の基板Wに対する処理の影響が及ぶことを回避できる。これにより、精密な基板処理を実現できる。チャンバ洗浄は、例えば、基板Wを保持して回転させるスピンチャックの洗浄、スピンチャックを収容する処理カップの洗浄、スピンチャックから飛び散る処理液を受けるガード(飛散防止部材)の洗浄などを含む。前準備処理の例としては、さらに、基板Wを保持するチャックピンの洗浄、処理室内のその他の部品の洗浄などを挙げることができる。 When a scheduling instruction is issued, the scheduling function unit 25 judges whether the substrate W for which the schedule is to be created is the first substrate W of the process job (step S5). If the substrate W is the first substrate W of the process job, the scheduling function unit 25 judges whether pre-preparation processing is required (step S6). As an example of pre-preparation processing, a pre-dispense process in which a certain amount of processing liquid is discharged from a processing liquid nozzle can be mentioned. For example, when a temperature-adjusted processing liquid is supplied to a substrate to process the substrate, the pre-dispense process can be executed to discharge the processing liquid that has accumulated in the processing liquid nozzle and the processing liquid piping and has become outside the target temperature range, and the temperature-adjusted processing liquid can be guided to the discharge port of the processing liquid nozzle. Then, by executing a processing liquid supply process in which the processing liquid is discharged onto the substrate W after the pre-dispense process, the substrate W can be processed with the processing liquid that has been temperature-adjusted from the beginning. This allows precise substrate processing to be realized. Another example of pre-preparation processing is a cleaning process (chamber cleaning) in a processing chamber (chamber) provided in a processing unit. By cleaning the inside of the processing chamber, it is possible to prevent the next substrate W loaded into the processing chamber from being affected by the processing of the previous substrate W. This allows for precise substrate processing. Chamber cleaning includes, for example, cleaning of the spin chuck that holds and spins the substrate W, cleaning of the processing cup that houses the spin chuck, and cleaning of the guard (anti-splash member) that catches processing liquid splashed from the spin chuck. Further examples of preparatory processing include cleaning of the chuck pins that hold the substrate W and cleaning of other parts in the processing chamber.

前準備処理の要否は、プロセスジョブ符号に対応付けられたレシピにおいて指定される。前準備処理が必要であるときには、当該基板Wを処理する可能性のある処理ユニットSPIN1~SPIN4(前述の例では全ての処理ユニット)に関して、前準備処理の実行を表すブロック(前準備ブロック)が配置される(ステップS7)。図7は、全ての処理ユニットSPIN1~SPIN4に関して前準備ブロックを配置した計画の一例を模式的に示す図である。当該プロセスジョブの最初の基板W以外の基板Wのスケジューリングを実行するときには(ステップS5:NO)、ステップS6,S7の処理が省かれる。また、当該プロセスジョブの最初の基板Wのスケジューリングを行うときであっても、当該プロセスジョブに対応するレシピが前準備処理を指定していないものであれば(ステップS6:NO)、ステップS7の処理が省かれる。ここでは、一例として、前準備ブロックが配置されない場合について述べる。 Whether or not preparatory processing is required is specified in the recipe associated with the process job code. When preparatory processing is required, a block (preparatory block) representing the execution of preparatory processing is placed for processing units SPIN1 to SPIN4 (all processing units in the above example) that may process the substrate W (step S7). FIG. 7 is a diagram showing an example of a plan in which preparatory blocks are placed for all processing units SPIN1 to SPIN4. When scheduling a substrate W other than the first substrate W of the process job (step S5: NO), steps S6 and S7 are omitted. Even when scheduling the first substrate W of the process job, if the recipe corresponding to the process job does not specify preparatory processing (step S6: NO), step S7 is omitted. Here, as an example, a case in which a preparatory block is not placed is described.

次に、スケジューリング機能部25は、当該基板Wに対応する仮タイムテーブルを参照し、当該仮タイムテーブルを構成するブロックを一つ取得する(ステップS8)。このとき取得されるブロックは、未配置のブロックのうち仮タイムテーブルの時間軸上で最も早い位置に配置されているブロックである。さらに、スケジューリング機能部25は、当該取得したブロックを配置できる位置を検索し(ステップS9)、その検索された位置に当該ブロックを配置する(ステップS10)。各ブロックは、同一リソースが同じ時間に重複して使用されないようにしながら、時間軸上で最も早い位置に配置される。なお、ここでいうブロックの配置とは、実際にブロックを配置しているのではなく、実際的には各処理の時間帯を仮決定している。 Next, the scheduling function unit 25 refers to the temporary timetable corresponding to the substrate W, and acquires one of the blocks that constitutes the temporary timetable (step S8). The block acquired at this time is the block that is placed at the earliest position on the time axis of the temporary timetable among the blocks that have not been placed. Furthermore, the scheduling function unit 25 searches for a position where the acquired block can be placed (step S9), and places the block in the searched position (step S10). Each block is placed at the earliest position on the time axis while preventing the same resources from being used at the same time in duplicate. Note that placing the blocks here does not mean actually placing the blocks, but rather means provisionally determining the time period for each process.

次に、スケジューリング機能部25は、仮タイムテーブルの全てのブロックの配置が終了したかを判断し(ステップS11)、未配置であれば(ステップS11:NO)、同様の動作(ステップS8~S10)を繰り返す。そして、仮タイムテーブルの全てのブロックを配置し終えると(ステップS11:YES)、スケジューリング機能部25は、全ての仮タイムテーブルを用いた計画の作成が終了したか否かを判断する(ステップS12)。つまり、4つの処理ユニットSPIN1~SPIN4を用いた全てのパターンの投入計画が作成されたか否かを判断する(ステップS12)。未だ全てのパターンが作成されていない場合(ステップS11:NO)、スケジューリング機能部25は再びステップS4を実行する。全てのパターンが作成されていると(ステップS12:YES)、スケジューリング機能部25は、作成済みの計画の一つを全体スケジュールとして選択するための判定を行う(ステップS13)。例えば、スケジューリング機能部25は、スループットが最も高い計画を特定し、その計画を選択する。スループットが最も高い計画が複数あれば、スケジューリング機能部25は、例えば、その計画のうち、ブロックの間隔(使用間隔)が最も空いている計画を選択する。また、使用間隔も同じであれば、スケジューリング機能部25は、例えば、その計画のうち、識別番号が小さい処理ユニットから順に動作する計画を選択する。 Next, the scheduling function unit 25 judges whether all blocks in the provisional timetable have been arranged (step S11), and if they have not been arranged (step S11: NO), repeats the same operations (steps S8 to S10). Then, when all blocks in the provisional timetable have been arranged (step S11: YES), the scheduling function unit 25 judges whether the creation of plans using all provisional timetables has been completed (step S12). That is, it judges whether the input plans of all patterns using the four processing units SPIN1 to SPIN4 have been created (step S12). If all patterns have not yet been created (step S11: NO), the scheduling function unit 25 executes step S4 again. If all patterns have been created (step S12: YES), the scheduling function unit 25 judges to select one of the created plans as the overall schedule (step S13). For example, the scheduling function unit 25 identifies the plan with the highest throughput and selects that plan. If there are multiple plans with the highest throughput, the scheduling function unit 25 selects, for example, the plan with the widest interval (use interval) between blocks among the plans. Also, if the usage intervals are also the same, the scheduling function unit 25 selects, for example, a plan that operates the processing units in ascending order of identification numbers from among the plans.

図8は、上述の動作によって初期的に作成された全体スケジュールの一例を模式的に示す図である。図8の例では、処理ユニットSPIN1~SPIN4における処理の開始時刻はこの順に遅くなっている。投入計画は、インデクサロボットIRによる搬出処理(「G」)および搬入処理(「P」)を示すブロックと、主搬送ロボットCRによる搬出処理(「G」)および搬入処理(「P」)を示すブロックと、各処理ユニットSPIN1~SPIN4の処理の開始時刻を示すブロックとによって表現される。図8に例示するように、この時点では、全体スケジュールは最初の4枚の基板Wに対する投入計画のみを含んでいる。 Figure 8 is a schematic diagram showing an example of an overall schedule initially created by the above-mentioned operations. In the example of Figure 8, the start times of processing in the processing units SPIN1 to SPIN4 become later in that order. The loading plan is represented by a block showing unloading processing ("G") and load processing ("P") by the indexer robot IR, a block showing unloading processing ("G") and load processing ("P") by the main transport robot CR, and a block showing the start times of processing in each of the processing units SPIN1 to SPIN4. As shown in the example of Figure 8, at this point, the overall schedule only includes loading plans for the first four substrates W.

なお、ステップS4~S13は、仮タイムテーブルに基づいて全体スケジュールを作成するスケジューリングステップに相当する。 Steps S4 to S13 correspond to the scheduling step in which an overall schedule is created based on the tentative timetable.

制御部21の処理実行指示部26は、図8の全体スケジュールに従った動作を基板処理装置100に実行させる。よって、処理ユニットSPIN1~SPIN4は図8の全体スケジュールに従って基板Wに対する処理を開始する。そして、各処理ユニットSPIN1~SPIN4が処理を開始すると、その処理中において、各センサSRはユニットセンシング情報を検出し(検出ステップ)、その検出に応じて通知情報を制御部21に通知する。 The process execution instruction unit 26 of the control unit 21 causes the substrate processing apparatus 100 to perform operations according to the overall schedule of FIG. 8. Thus, the processing units SPIN1 to SPIN4 start processing the substrate W according to the overall schedule of FIG. 8. Then, when each of the processing units SPIN1 to SPIN4 starts processing, during that processing, each sensor SR detects unit sensing information (detection step) and notifies the control unit 21 of notification information in response to the detection.

制御部21のスケジューリング機能部25は通知情報の通知に応じて、その通知元の処理ユニットに対する払出計画およびその次の投入計画を作成する。この作成も図5のフローチャートに沿って行うことができる。 In response to the notification of the notification information, the scheduling function unit 25 of the control unit 21 creates a payout plan and the next input plan for the processing unit that sent the notification. This can also be done according to the flowchart in Figure 5.

なお、基板処理装置100の全体スケジュールに従った動作の実行中においては、基板処理開始指示のフラグは常にHとなっているので、ステップS1の処理において、肯定的な判断(YESの判断)がなされる。 Note that while the substrate processing apparatus 100 is operating according to the overall schedule, the flag for the substrate processing start instruction is always set to H, so a positive judgment (YES judgment) is made in the processing of step S1.

スケジューリング機能部25は通知情報の通知に応じて、作成対象となる計画範囲を払出計画に決定する(ステップS2)。次に、スケジューリング機能部25は通知情報に基づいて仮タイムテーブルを更新する(ステップS3)。具体的には、スケジューリング機能部25は仮タイムテーブルにおいて、通知元の処理ユニットから基板収容器Cまでの搬送に関するブロックを、通知情報に基づいて配置する。 In response to the notification of the notification information, the scheduling function unit 25 determines the plan range to be created as a delivery plan (step S2). Next, the scheduling function unit 25 updates the provisional timetable based on the notification information (step S3). Specifically, the scheduling function unit 25 arranges blocks related to transport from the processing unit that sent the notification to the substrate container C in the provisional timetable based on the notification information.

ここでは、処理ユニットSPIN1から通知情報がスケジューリング機能部25に通知されたものとする。スケジューリング機能部25は通知情報に基づいて処理ユニットSPIN1の推定残り時間を認識できる。スケジューリング機能部25は処理ユニットSPIN1の推定残り時間に基づいて所要処理時間を算出し、この所要処理時間に基づいて仮タイムテーブルを更新する(ステップS3:仮タイムテーブル更新ステップ)。所要処理時間は、処理ユニットSPIN1の処理の開始時刻から現在時刻までの時間と、推定残り時間との和に基づいて算出される。スケジューリング機能部25は、仮タイムテーブルにおける、通知元の処理ユニットSPIN1に対応するブロックの内容を、当該所要処理時間に基づいて更新する。図9は、処理ユニットSPIN1についての更新後の仮タイムテーブルである。図9の例では、仮タイムテーブルにおいて、処理ユニットSPIN1の処理の終了を規定するブロックA52と、処理ユニットSPIN1から受渡ユニットPASSへの主搬送ロボットCRによる搬送処理を規定するブロックA6,A7、および、受渡ユニットPASSから基板収容器CへのインデクサロボットIRによる搬送処理を規定するブロックA8、A9が新たに配置されている。図9の例では、新たに配置されたブロックを斜線のハッチングで示している。 Here, it is assumed that notification information has been notified from processing unit SPIN1 to the scheduling function unit 25. The scheduling function unit 25 can recognize the estimated remaining time of processing unit SPIN1 based on the notification information. The scheduling function unit 25 calculates the required processing time based on the estimated remaining time of processing unit SPIN1, and updates the provisional timetable based on this required processing time (step S3: provisional timetable update step). The required processing time is calculated based on the sum of the time from the start time of processing of processing unit SPIN1 to the current time and the estimated remaining time. The scheduling function unit 25 updates the contents of the block in the provisional timetable that corresponds to the processing unit SPIN1 that sent the notification based on the required processing time. Figure 9 shows the provisional timetable after update for processing unit SPIN1. In the example of FIG. 9, the following blocks have been newly placed in the provisional timetable: block A52, which specifies the end of processing in processing unit SPIN1; blocks A6 and A7, which specify the transport processing by the main transport robot CR from processing unit SPIN1 to the delivery unit PASS; and blocks A8 and A9, which specify the transport processing by the indexer robot IR from the delivery unit PASS to the substrate container C. In the example of FIG. 9, the newly placed blocks are indicated by diagonal hatching.

ステップS4では、スケジューリング指示のフラグがHであるので、肯定的な判断(YESの判断)がなされ、ステップS5では、否定的な判断(NOの判断)がなされる。 In step S4, since the scheduling instruction flag is H, a positive judgment (YES judgment) is made, and in step S5, a negative judgment (NO judgment) is made.

次に、スケジューリング機能部25は、通知元の処理ユニットSPIN1に対する仮タイムテーブルを参照し、当該仮タイムテーブルを構成する未配置のブロックを一つ取得する(ステップS8)。ここでいう未配置のブロックとは、全体スケジュールに未だ配置されていないブロックである。例えば、スケジューリング機能部25は、未配置のブロックのうち最も早い位置に配置されたブロックA52を取得する。 Next, the scheduling function unit 25 refers to the provisional timetable for the processing unit SPIN1 that sent the notification, and acquires one of the unplaced blocks that constitute the provisional timetable (step S8). An unplaced block here is a block that has not yet been placed in the overall schedule. For example, the scheduling function unit 25 acquires block A52, which is placed in the earliest position among the unplaced blocks.

スケジューリング機能部25は、当該取得したブロックA52を配置できる位置を検索し(ステップS9)、その検索された位置に当該ブロックA52を配置する(ステップS10)。他のブロックA6~A9についても同様の処理により順次に配置される(ステップS11:NO、ステップS9~S10)。これにより、スケジューリング機能部25は、処理ユニットSPIN1についての払出計画を含んだ全体スケジュールを作成できる。 The scheduling function unit 25 searches for a position where the acquired block A52 can be placed (step S9), and places the block A52 at the searched position (step S10). The other blocks A6 to A9 are also placed sequentially by a similar process (step S11: NO, steps S9 to S10). This allows the scheduling function unit 25 to create an overall schedule that includes a payout plan for the processing unit SPIN1.

図10は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図10の例では、処理ユニットSPIN1から通知情報が通知された通知時刻t2(SPIN1)と、その処理ユニットSPIN1のユニット推定終了時刻t3(SPIN1)も示されている。 Figure 10 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operations. The example in Figure 10 also shows the notification time t2 (SPIN1) at which notification information is notified from the processing unit SPIN1, and the unit estimated end time t3 (SPIN1) of that processing unit SPIN1.

スケジューリング機能部25は、図10に示すように、当該通知情報に基づいて、処理ユニットSPIN1の終了時刻を示すブロックと、処理ユニットSPIN1から基板収容器Cへの搬送処理に関する主搬送ロボットCRおよびインデクサロボットIRのブロックが新たに配置されている。図10の例でも、新たに配置されたブロックを斜線のハッチングで示している。 As shown in FIG. 10, based on the notification information, the scheduling function unit 25 newly places a block indicating the end time of the processing unit SPIN1 and a block of the main transport robot CR and the indexer robot IR related to the transport process from the processing unit SPIN1 to the substrate container C. In the example of FIG. 10, the newly placed blocks are also indicated by diagonal hatching.

なお、ここでは、未だ処理すべき基板Wが基板収容器Cに存在しているので、通知元の処理ユニットSPIN1についての次の投入計画も作成する。つまり、処理ユニットSPIN1に対して搬送可能な次の未処理の基板Wが基板収容器Cに存在する場合には、その基板Wを処理ユニットSPIN1に搬送すべく、スケジューリング機能部25は処理ユニットSPIN1に対する次の投入計画も作成する。言い換えれば、ステップS2において、未処理の基板Wが存在する場合には、スケジューリング機能部25は、通知情報の通知元の処理ユニットに対する払出計画のみならず、当該処理ユニットについての次の投入計画も計画範囲に決定する。 Note that here, since there are still substrates W to be processed in the substrate container C, the next input plan for the processing unit SPIN1 that sent the notification is also created. In other words, if there is a next unprocessed substrate W in the substrate container C that can be transported to the processing unit SPIN1, the scheduling function unit 25 also creates a next input plan for the processing unit SPIN1 in order to transport that substrate W to the processing unit SPIN1. In other words, in step S2, if there is an unprocessed substrate W, the scheduling function unit 25 determines in the planning range not only the unloading plan for the processing unit that sent the notification information, but also the next input plan for that processing unit.

この場合、ステップS3において、スケジューリング機能部25は、現在の基板Wの仮タイムテーブル(図8)のみならず、次の基板Wの処理ユニットSPIN1についての仮タイムテーブルも作成する。ただし、次の基板Wの仮タイムテーブルは、図6と同様に、投入計画に関するブロックのみが配置される。そして、スケジューリング機能部25は、現在の基板Wに対する払出計画を作成した後に、次の基板Wの投入計画に関するブロックについて、ステップS8~ステップS10を繰り返して、次の基板Wについての投入計画を作成する。 In this case, in step S3, the scheduling function unit 25 creates not only a tentative timetable (Figure 8) for the current substrate W, but also a tentative timetable for the processing unit SPIN1 for the next substrate W. However, in the tentative timetable for the next substrate W, only blocks related to the loading plan are arranged, as in Figure 6. Then, after creating the unloading plan for the current substrate W, the scheduling function unit 25 repeats steps S8 to S10 for the blocks related to the loading plan for the next substrate W to create a loading plan for the next substrate W.

図11は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図11の例では、次の基板Wについての、基板収容器Cから処理ユニットSPIN1への基板Wの搬送処理に関するインデクサロボットIRおよび主搬送ロボットCRのブロック、および、処理ユニットSPIN1の次の処理の開始時刻を示すブロックが新たに配置されている。図11の例でも、新たに配置されたブロックを斜線のハッチングで示している。図11の例では、処理ユニットSPIN1の処理の終了時刻と、処理ユニットSPIN1の次の処理の開始時刻との間には、所定の準備期間が設けられている。 Figure 11 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operations. In the example of Figure 11, a block of the indexer robot IR and the main transport robot CR for transport processing of the next substrate W from the substrate container C to the processing unit SPIN1, and a block indicating the start time of the next processing of the processing unit SPIN1 are newly placed. In the example of Figure 11, the newly placed block is also shown with diagonal hatching. In the example of Figure 11, a predetermined preparation period is provided between the end time of the processing of the processing unit SPIN1 and the start time of the next processing of the processing unit SPIN1.

上述の動作では、処理ユニットSPIN1についての払出計画および次の投入計画を含む全体スケジュールが一つ作成される。よって、ステップS12では、肯定的な判断(YESの判断)がなされる。全体スケジュールが一つ作成されているので、ステップS13において判定処理は実質的に省略される。 In the above operation, one overall schedule is created that includes the payout plan and the next input plan for processing unit SPIN1. Therefore, in step S12, a positive judgment (YES judgment) is made. Since one overall schedule has been created, the judgment process in step S13 is essentially omitted.

ところで、スケジューリング機能部25は処理ユニットSPIN1についての払出計画および次の投入計画の作成、つまり、全体スケジュールの再作成を、処理ユニットSPIN1のユニット推定終了時刻t3(SPIN1)よりも前に完了させる。例えば、センサSRは処理ユニットSPIN1の処理開始から所定時間が経過したときに通知情報を取得し、当該通知情報を通知してもよい。当該所定時間は、通知情報の通知時刻t2(SPIN1)からの処理の残り時間が、全体スケジュールの再作成に要する所要作成時間Tref以上となるように、予め設定されてもよい。所要作成時間Trefも例えば予め設定される。 The scheduling function unit 25 completes the creation of the take-out plan and the next input plan for the processing unit SPIN1, i.e., the recreation of the overall schedule, before the unit estimated end time t3 (SPIN1) of the processing unit SPIN1. For example, the sensor SR may acquire notification information when a predetermined time has elapsed since the start of processing of the processing unit SPIN1, and notify the notification information. The predetermined time may be set in advance so that the remaining processing time from the notification time t2 (SPIN1) of the notification information is equal to or greater than the required creation time Tref required to recreate the overall schedule. The required creation time Tref is also set in advance, for example.

これによれば、制御部21のスケジューリング機能部25が通知情報を受け取った通知時刻t2(SPIN1)において、その通知元の処理ユニットSPIN1の処理の推定残り時間は、その通知元の払出計画および次の投入計画の作成に要する所要作成時間Trefよりも長い。よって、スケジューリング機能部25は通知元の処理ユニットSPIN1のユニット推定終了時刻t3(SPIN1)よりも前に、当該処理ユニットSPIN1の払出計画および次の投入計画を作成することができる。したがって、処理実行指示部26は基板処理装置100の動作を中断させることなく、全体スケジュールに従った動作を基板処理装置100に続行させることができる。 Accordingly, at notification time t2 (SPIN1) when the scheduling function unit 25 of the control unit 21 receives the notification information, the estimated remaining processing time of the notifying processing unit SPIN1 is longer than the required creation time Tref required to create the notifying processing unit's take-out plan and next input plan. Therefore, the scheduling function unit 25 can create the take-out plan and next input plan of the notifying processing unit SPIN1 before the unit estimated end time t3 (SPIN1) of the notifying processing unit SPIN1. Therefore, the processing execution instruction unit 26 can cause the substrate processing apparatus 100 to continue operating according to the overall schedule without interrupting the operation of the substrate processing apparatus 100.

なお、通知情報に応じて実行されるステップS3は、仮タイムテーブルを更新する仮タイムテーブル更新ステップに相当し、通知情報に応じて実行されるステップS4~S13は、全体スケジュールを再作成する全体スケジュール更新ステップに相当する。仮タイムテーブル更新ステップおよび全体スケジュール更新ステップは、通知元の処理ユニットのユニット推定終了時刻t3までに完了する。 Step S3, which is executed in response to the notification information, corresponds to a tentative timetable update step for updating the tentative timetable, and steps S4 to S13, which are executed in response to the notification information, correspond to an overall schedule update step for recreating the overall schedule. The tentative timetable update step and the overall schedule update step are completed by the unit estimated end time t3 of the processing unit that sent the notification.

なお、ユニット推定終了時刻t3(SPIN1)の算出精度は、センサSRによるユニットセンシング情報の検出タイミングが処理の終了時刻に近いほど高い。つまり、ユニットセンシング情報に基づいて推定される推定残り時間が短いほど、その推定精度は高い。そこで、スケジューリング機能部25は、推定残り時間が、全体スケジュールの再作成に要する所要作成時間Trefに近い値となったときに、全体スケジュールの再作成を開始してもよい。具体的な動作の一例としては、処理ユニットSPIN1の制御部は、センサSRによる検出のたびに、処理の残り時間を推定し、その推定残り時間が所要作成時間Trefに近づいたか否かを判断する。例えば、当該制御部は推定残り時間と所要作成時間Trefとの差が基準値未満となったか否かを判断する。当該基準値は例えば予め設定される。そして、当該差が基準値未満となったときに、当該制御部は通知情報(推定残り時間)を制御部21に通知する。 The calculation accuracy of the unit estimated end time t3 (SPIN1) is higher the closer the timing of detection of the unit sensing information by the sensor SR is to the end time of the processing. In other words, the shorter the estimated remaining time estimated based on the unit sensing information, the higher the estimation accuracy. Therefore, the scheduling function unit 25 may start recreating the entire schedule when the estimated remaining time becomes close to the required creation time Tref required to re-create the entire schedule. As an example of a specific operation, the control unit of the processing unit SPIN1 estimates the remaining time of the processing each time the sensor SR detects, and judges whether the estimated remaining time has approached the required creation time Tref. For example, the control unit judges whether the difference between the estimated remaining time and the required creation time Tref is less than a reference value. The reference value is, for example, set in advance. Then, when the difference becomes less than the reference value, the control unit notifies the control unit 21 of the notification information (estimated remaining time).

これによれば、スケジューリング機能部25は、より高い精度で推定された推定残り時間(つまりユニット推定終了時刻t3(SPIN1))に基づいて、その処理ユニットSPIN1の払出計画および次の投入計画を作成することができる。つまり、より精度の高い全体スケジュールを再作成できる。 As a result, the scheduling function unit 25 can create a take-out plan and a next put-in plan for the processing unit SPIN1 based on the estimated remaining time (i.e., the unit estimated end time t3 (SPIN1)) that is estimated with higher accuracy. In other words, a more accurate overall schedule can be recreated.

以下では、処理ユニットSPIN2~SPIN4も、推定残り時間と所要作成時間Trefとの差が基準値未満となったときに、通知情報を制御部21に通知するものとする。よって、処理ユニットSPIN1からの通知の後には、処理ユニットSPIN2のセンサSRから、通知情報が通知される。スケジューリング機能部25は通知情報の通知に基づいて、その通知元の処理ユニットSPIN2についての払出計画を作成しつつ、必要に応じて次の投入計画も作成して、全体スケジュールを再作成する。 In the following, processing units SPIN2 to SPIN4 also notify the control unit 21 of notification information when the difference between the estimated remaining time and the required creation time Tref falls below a reference value. Therefore, after the notification from processing unit SPIN1, notification information is notified from the sensor SR of processing unit SPIN2. Based on the notification of the notification information, the scheduling function unit 25 creates a take-out plan for the processing unit SPIN2 that sent the notification, and also creates the next input plan as necessary, recreating the overall schedule.

図12は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図12の例では、通知時刻t2(SPIN2)において、処理ユニットSPIN2から通知情報がスケジューリング機能部25に通知される。スケジューリング機能部25は、当該通知情報に基づいて、処理ユニットSPIN2についての払出計画および次の投入計画を作成して、全体スケジュールを再作成する。図12の例でも、新たに配置されたブロックを斜線のハッチングで示している。 Figure 12 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operations. In the example of Figure 12, at notification time t2 (SPIN2), notification information is notified from processing unit SPIN2 to the scheduling function unit 25. Based on the notification information, the scheduling function unit 25 creates a take-out plan and a next input plan for processing unit SPIN2, and recreates the overall schedule. In the example of Figure 12, the newly placed blocks are also shown with diagonal hatching.

以後、同様の処理を繰り返すことにより、基板処理装置100の動作と並行しつつ、順次に新たな計画が全体スケジュールに盛り込まれる。これにより、図4に例示する全体スケジュールが作成される。 Then, by repeating the same process, new plans are sequentially incorporated into the overall schedule in parallel with the operation of the substrate processing apparatus 100. This results in the overall schedule shown in FIG. 4.

なお、上述の例では、処理ユニットSPIN1~SPIN4の所要処理時間が通常の所要処理時間とほぼ等しい場合を例に挙げて説明した。次に、処理ユニットSPIN1~SPIN4における所要処理時間が変動した場合の例について述べる。ここでは、まず、処理ユニットSPIN2,SPIN4の所要処理時間が通常よりも短い場合について述べる。基板処理装置100の動作の一例は図5と同様である。 In the above example, the case where the required processing time of the processing units SPIN1 to SPIN4 is approximately equal to the normal required processing time has been described. Next, an example where the required processing time of the processing units SPIN1 to SPIN4 varies will be described. First, a case where the required processing time of the processing units SPIN2 and SPIN4 is shorter than normal will be described. An example of the operation of the substrate processing apparatus 100 is the same as that shown in FIG. 5.

まず、スケジューリング機能部25は上述の通り、基板処理装置100の動作を開始する前に全体スケジュールの一部として各処理ユニットSPIN1~SPIN4についての最初の投入計画を作成する(ステップS2:投入計画、ステップS3~S13)。これにより、図8に例示する全体スケジュールが作成される。 First, as described above, the scheduling function unit 25 creates an initial loading plan for each processing unit SPIN1 to SPIN4 as part of the overall schedule before starting operation of the substrate processing apparatus 100 (step S2: loading plan, steps S3 to S13). This creates the overall schedule shown in FIG. 8.

各処理ユニットSPIN1~SPIN4の制御部は、処理の推定残り時間が、全体スケジュールの再作成に要する所要作成時間Trefに近づいたときに、制御部21に通知情報を通知する。よって、通知時刻t2は、その処理ユニットの実際の所要処理時間が短いほど、早くなる。言い換えれば、通知時刻t2は、その処理ユニットの実際の所要処理時間が長いほど、遅れる。 The control unit of each processing unit SPIN1 to SPIN4 notifies the control unit 21 of notification information when the estimated remaining processing time approaches the required creation time Tref required to re-create the overall schedule. Therefore, the notification time t2 will be earlier the shorter the actual required processing time of the processing unit. In other words, the longer the actual required processing time of the processing unit, the later the notification time t2 will be.

ここでは、処理ユニットSPIN2の実際の所要処理時間が通常よりも短いために、処理ユニットSPIN1よりも先に処理ユニットSPIN2から通知情報が通知されるものとする。スケジューリング機能部25は既述のように、この通知情報に基づいて、通知元の処理ユニットSPIN2の仮タイムテーブルを更新し(および必要に応じて次の基板Wに対する仮タイムテーブルを作成し)、処理ユニットSPIN2についての払出計画(および必要に応じて次の投入計画)を作成する(ステップS2:払出計画(および必要に応じて次の投入計画)、ステップS3~S13)。スケジューリング機能部25は、処理ユニットSPIN2のユニット推定終了時刻t3(SPIN2)の前に、全体スケジュールの再作成を完了する。 Here, because the actual required processing time of processing unit SPIN2 is shorter than usual, it is assumed that the notification information is notified from processing unit SPIN2 before processing unit SPIN1. As described above, the scheduling function unit 25 updates the tentative timetable of processing unit SPIN2 that notified based on this notification information (and creates a tentative timetable for the next substrate W as necessary), and creates a take-out plan (and next input plan as necessary) for processing unit SPIN2 (step S2: take-out plan (and next input plan as necessary), steps S3 to S13). The scheduling function unit 25 completes the re-creation of the overall schedule before the estimated unit end time t3 (SPIN2) of processing unit SPIN2.

図13は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図13の例では、処理ユニットSPIN1の払出計画およびその次の投入計画についてのブロックは未だ配置されておらず、処理ユニットSPIN2の払出計画およびその次の投入計画についてのブロックが新たに配置されている。図13の例でも、新たに配置されたブロックが斜線のハッチングで示されている。 Figure 13 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operations. In the example of Figure 13, blocks for the take-out plan and the next put-in plan of processing unit SPIN1 have not yet been placed, and blocks for the take-out plan and the next put-in plan of processing unit SPIN2 have been newly placed. In the example of Figure 13, the newly placed blocks are also shown with diagonal hatching.

基板処理装置100における処理が進行すると、処理ユニットSPIN1からの通知情報が制御部21に通知される。スケジューリング機能部25は、既述のように、この通知情報に基づいて、通知元の処理ユニットSPIN1の仮タイムテーブルを更新し(および必要に応じて次の基板Wに対する仮タイムテーブルを作成し)、処理ユニットSPIN1についての払出計画(および必要に応じて次の投入計画)を作成する(ステップS2:払出計画(および必要に応じて次の投入計画)、ステップS3~S13)。スケジューリング機能部25は、処理ユニットSPIN1のユニット推定終了時刻t3(SPIN1)の前に、全体スケジュールの再作成を完了する。 As processing in the substrate processing apparatus 100 progresses, notification information from processing unit SPIN1 is notified to the control unit 21. As described above, the scheduling function unit 25 updates the tentative timetable of the notifying processing unit SPIN1 based on this notification information (and creates a tentative timetable for the next substrate W as necessary), and creates an unloading plan (and next loading plan as necessary) for processing unit SPIN1 (step S2: Unloading plan (and next loading plan as necessary), steps S3 to S13). The scheduling function unit 25 completes re-creation of the overall schedule before the estimated unit end time t3 (SPIN1) of processing unit SPIN1.

図14は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図14の例では、処理ユニットSPIN1の払出計画およびその次の投入計画についてのブロックが新たに配置されている。図14の例でも、新たに配置されたブロックが斜線のハッチングで示されている。図14の例では、処理ユニットSPIN1のユニット推定終了時刻t3(SPIN1)は処理ユニットSPIN2のユニット推定終了時刻t3(SPIN2)よりも後である。よって、処理ユニットSPIN1内の基板Wに対する主搬送ロボットCRの搬送処理を示す一対のブロックA6,A7は、処理ユニットSPIN2内の基板Wに対する主搬送ロボットCRの搬出処理を示す一対のブロックC6,C7と干渉しないように、当該一対のブロックC6,C7の直後に配置される。同様に、処理ユニットSPIN1からの基板Wに対するインデクサロボットIRの搬送処理を示す一対のブロックA8,A9も、処理ユニットSPIN2からの基板Wに対するインデクサロボットIRの搬出処理を示す一対のブロックC8,C9の直後に配置される。 Figure 14 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operation. In the example of Figure 14, blocks for the take-out plan of processing unit SPIN1 and the next take-in plan are newly placed. In the example of Figure 14, the newly placed blocks are also shown with diagonal hatching. In the example of Figure 14, the unit estimated end time t3 (SPIN1) of processing unit SPIN1 is later than the unit estimated end time t3 (SPIN2) of processing unit SPIN2. Therefore, a pair of blocks A6, A7 indicating the transport processing of the main transport robot CR for the substrate W in processing unit SPIN1 is placed immediately after the pair of blocks C6, C7 indicating the unloading processing of the main transport robot CR for the substrate W in processing unit SPIN2 so as not to interfere with the pair of blocks C6, C7. Similarly, a pair of blocks A8 and A9, which show the transport process of the indexer robot IR for substrates W from processing unit SPIN1, are also positioned immediately after a pair of blocks C8 and C9, which show the unloading process of the indexer robot IR for substrates W from processing unit SPIN2.

また、次に処理ユニットSPIN1に搬入される基板WについてのインデクサロボットIRの搬送処理を示すブロックB1,B2も、次に処理ユニットSPIN2に搬入される基板WについてのインデクサロボットIRの搬送処理を示すブロックD1,D2の直後に配置され、次に処理ユニットSPIN1に搬入される基板Wについての主搬送ロボットCRの搬送処理を示すブロックB3,B4も、次に処理ユニットSPIN2に搬入される基板Wについての主搬送ロボットCRの搬送処理を示すブロックD3,D4の直後に配置される。よって、処理ユニットSPIN1の次の処理の開始時刻を示すブロックB51は、処理ユニットSPIN2の次の処理の開始時刻を示すブロックD51よりも後に配置される。つまり、処理ユニットSPIN1,SPIN2の処理の開始順序が逆転する。 In addition, blocks B1 and B2 showing the transport process of the indexer robot IR for the substrate W to be next loaded into processing unit SPIN1 are also placed immediately after blocks D1 and D2 showing the transport process of the indexer robot IR for the substrate W to be next loaded into processing unit SPIN2, and blocks B3 and B4 showing the transport process of the main transport robot CR for the substrate W to be next loaded into processing unit SPIN1 are also placed immediately after blocks D3 and D4 showing the transport process of the main transport robot CR for the substrate W to be next loaded into processing unit SPIN2. Therefore, block B51 showing the start time of the next process of processing unit SPIN1 is placed after block D51 showing the start time of the next process of processing unit SPIN2. In other words, the start order of the processes of processing units SPIN1 and SPIN2 is reversed.

基板処理装置100の動作がさらに進行すると、処理ユニットSPIN3,SPIN4も順次に通知情報が通知される。ここでは、処理ユニットSPIN4の実際の所要処理時間が通常よりも短く、処理ユニットSPIN3よりも先に処理ユニットSPIN4から通知情報が通知される。スケジューリング機能部25は、その通知のたびに、既述のように、その通知元の処理ユニットの払出計画および次の投入計画を作成して、全体スケジュールを再作成する。その後も、処理ユニットSPIN1~SPIN4は順次に通知情報を制御部21に通知し、その都度、スケジューリング機能部25は、全体スケジュールを再作成する。スケジューリング機能部25は、通知元の処理ユニットのユニット推定終了時刻t3の前に、全体スケジュールの再作成を完了する。 As the operation of the substrate processing apparatus 100 progresses further, the processing units SPIN3 and SPIN4 are also notified of notification information in sequence. Here, the actual required processing time of the processing unit SPIN4 is shorter than usual, and the processing unit SPIN4 notifies the notification information before the processing unit SPIN3. As described above, each time a notification is received, the scheduling function unit 25 creates a take-out plan and a next input plan for the processing unit that sent the notification, and recreates the overall schedule. Thereafter, the processing units SPIN1 to SPIN4 notify the control unit 21 of notification information in sequence, and the scheduling function unit 25 recreates the overall schedule each time. The scheduling function unit 25 completes the recreation of the overall schedule before the unit estimated end time t3 of the processing unit that sent the notification.

図15は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図15の例でも、処理ユニットSPIN1~SPIN4がそれぞれ2回の処理を行うことにより、8枚の基板Wが処理される。ただし、図15では、処理ユニットSPIN1,SPIN2の2回目の処理の開始順序が1回目の処理の開始順序と反対となり、処理ユニットSPIN3,SPIN4の2回目の処理の開始順序も1回目の処理の開始順序の反対となる。 Figure 15 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operations. In the example of Figure 15, eight substrates W are processed by each of the processing units SPIN1 to SPIN4 performing two processes. However, in Figure 15, the start order of the second processes of the processing units SPIN1 and SPIN2 is opposite to the start order of the first processes, and the start order of the second processes of the processing units SPIN3 and SPIN4 is also opposite to the start order of the first processes.

以上のように、処理ユニットSPIN2,SPIN4の実際の所要処理時間が通常よりも短くなったとしても、基板処理装置100は動作を中断することなく、その短くなった所要処理時間が反映された全体スケジュールに応じた動作を続行することができる。 As described above, even if the actual required processing time of processing units SPIN2 and SPIN4 becomes shorter than normal, the substrate processing apparatus 100 can continue to operate according to the overall schedule that reflects the shortened required processing time without interrupting operation.

また、図15の例では、所要処理時間の短い処理ユニットSPIN2からの基板Wの搬出が、所要処理時間の長い処理ユニットSPIN1からの基板Wの搬出よりも先に実行される。同様に、処理ユニットSPIN4からの基板Wの搬出が処理ユニットSPIN3からの基板Wの搬出よりも先に実行される。つまり、所要処理時間の短い処理ユニットの処理を優先的に終了させつつ、所要処理時間の短い処理ユニットにその次の処理を優先的に開始させる。これによれば、例えばより多くの基板Wを処理する場合、所要処理時間の短い処理ユニットがより多くの回数で処理を実行できる。したがって、基板処理装置100の全体のスループットを向上できる。 In the example of FIG. 15, the substrate W is removed from processing unit SPIN2, which requires a shorter processing time, before the substrate W is removed from processing unit SPIN1, which requires a longer processing time. Similarly, the substrate W is removed from processing unit SPIN4 before the substrate W is removed from processing unit SPIN3. In other words, the processing unit requiring a shorter processing time is preferentially terminated, while the processing unit requiring a shorter processing time is preferentially started for the next processing. In this way, for example, when processing a larger number of substrates W, the processing unit requiring a shorter processing time can perform processing more times. Therefore, the overall throughput of the substrate processing apparatus 100 can be improved.

次に、処理ユニットSPIN2,SPIN4の実際の所要処理時間が通常よりも長い場合について述べる。基板処理装置100の動作の一例は図5と同様である。 Next, a case will be described in which the actual required processing time of the processing units SPIN2 and SPIN4 is longer than usual. An example of the operation of the substrate processing apparatus 100 is the same as that shown in FIG. 5.

基板処理装置100の動作の開始前に初期的に作成された全体スケジュールは、図8と同様であり、処理ユニットSPIN1からの通知情報に基づいて再作成された全体スケジュールは、図11と同様である。ここでは、処理ユニットSPIN2の実際の所要処理時間が通常よりも長いために、処理ユニットSPIN2よりも先に処理ユニットSPIN3から通知情報が通知されるものとする。スケジューリング機能部25は既述のように、その通知元の処理ユニットSPIN3のユニット推定終了時刻t3(SPIN3)の前に、通知情報に基づいた全体スケジュールの再作成を完了する。 The overall schedule initially created before the start of operation of the substrate processing apparatus 100 is similar to that shown in FIG. 8, and the overall schedule recreated based on the notification information from processing unit SPIN1 is similar to that shown in FIG. 11. Here, it is assumed that the actual required processing time for processing unit SPIN2 is longer than usual, and therefore the notification information is notified from processing unit SPIN3 before processing unit SPIN2. As described above, the scheduling function unit 25 completes the recreation of the overall schedule based on the notification information before the unit estimated end time t3 (SPIN3) of processing unit SPIN3 that is the source of the notification.

図16は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図16の例では、処理ユニットSPIN3の払出計画およびその次の投入計画についてのブロックが新たに配置されている。図16の例でも、新たに配置されたブロックが斜線のハッチングで示されている。図16の例では、処理ユニットSPIN2の払出計画およびその次の投入計画についてのブロックは未だ配置されておらず、処理ユニットSPIN1,SPIN3の各々の払出計画およびその次の投入計画についてのブロックが配置されている。 Figure 16 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operations. In the example of Figure 16, blocks for the take-out plan and the next put-in plan of processing unit SPIN3 have been newly placed. In the example of Figure 16, the newly placed blocks are also shown with diagonal hatching. In the example of Figure 16, blocks for the take-out plan and the next put-in plan of processing unit SPIN2 have not yet been placed, and blocks for the take-out plan and the next put-in plan of each of processing units SPIN1 and SPIN3 have been placed.

基板処理装置100の動作がさらに進行すると、処理ユニットSPIN2から通知情報が通知される。スケジューリング機能部25は既述のように、その通知元の処理ユニットSPIN2のユニット推定終了時刻t3(SPIN2)の前に、ユニットセンシング情報に基づいた全体スケジュールの再作成を完了する。 As the operation of the substrate processing apparatus 100 progresses further, notification information is notified from processing unit SPIN2. As described above, the scheduling function unit 25 completes re-creation of the overall schedule based on the unit sensing information before the unit estimated end time t3 (SPIN2) of the processing unit SPIN2 that sent the notification.

図17は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図17の例では、処理ユニットSPIN2の払出計画およびその次の投入計画についてのブロックが新たに配置されている。図17の例でも、新たに配置されたブロックが斜線のハッチングで示されている。図17の例では、処理ユニットSPIN3のユニット推定終了時刻t3(SPIN3)は処理ユニットSPIN2のユニット推定終了時刻t3(SPIN2)よりも早く、処理ユニットSPIN3からの基板Wの搬出処理は、処理ユニットSPIN2からの基板Wの搬出処理よりも前に行われる。よって、処理ユニットSPIN3の次の処理も処理ユニットSPIN2の次の処理の開始よりも先に開始される。つまり、処理ユニットSPIN2,SPIN3の処理の開始順序が逆転する。 Figure 17 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operation. In the example of Figure 17, blocks for the take-out plan of processing unit SPIN2 and the next input plan are newly placed. In the example of Figure 17, the newly placed blocks are also indicated by diagonal hatching. In the example of Figure 17, the unit estimated end time t3 (SPIN3) of processing unit SPIN3 is earlier than the unit estimated end time t3 (SPIN2) of processing unit SPIN2, and the unloading process of the substrate W from processing unit SPIN3 is performed before the unloading process of the substrate W from processing unit SPIN2. Therefore, the next process of processing unit SPIN3 also starts before the start of the next process of processing unit SPIN2. In other words, the start order of the processes of processing units SPIN2 and SPIN3 is reversed.

基板処理装置100の動作がさらに進行すると、処理ユニットSPIN4からも通知情報が通知され、その後、処理ユニットSPIN1~SPIN4から順次に通知情報が通知される。スケジューリング機能部25は、その通知のたびに、既述のように、全体スケジュールを再作成する。 As the operation of the substrate processing apparatus 100 progresses further, notification information is also sent from processing unit SPIN4, and then notification information is sent sequentially from processing units SPIN1 to SPIN4. Each time notification is received, the scheduling function unit 25 recreates the overall schedule as described above.

図18は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図18の例でも、処理ユニットSPIN1~SPIN4がそれぞれ2回の処理を行うことにより、8枚の基板Wが処理される。図18の例では、処理ユニットSPIN2,SPIN3の2回目の処理の開始順序は1回目の開始順序と反対になっている。 Figure 18 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operations. In the example of Figure 18, eight substrates W are processed by each of the processing units SPIN1 to SPIN4 performing two processes. In the example of Figure 18, the start order of the second process of the processing units SPIN2 and SPIN3 is opposite to the start order of the first process.

以上のように、処理ユニットSPIN2,SPIN4の実際の所要処理時間が通常よりも長くなったとしても、基板処理装置100は動作を中断することなく、その長くなった所要処理時間が反映された全体スケジュールに応じた動作を続行することができる。 As described above, even if the actual required processing time of processing units SPIN2 and SPIN4 becomes longer than normal, the substrate processing apparatus 100 can continue to operate according to the overall schedule that reflects the longer required processing time without interrupting operation.

また、図18の例では、所要処理時間の短い処理ユニットSPIN3からの基板Wの搬出が、所要処理時間の長い処理ユニットSPIN2からの基板Wの搬出よりも先に実行される。これによれば、例えばより多くの基板Wを処理する場合、所要処理時間の短い処理ユニットがより多くの回数で処理を実行できる。したがって、基板処理装置100の全体のスループットを向上できる。 In the example of FIG. 18, the substrate W is removed from the processing unit SPIN3, which requires a shorter processing time, before the substrate W is removed from the processing unit SPIN2, which requires a longer processing time. As a result, when a larger number of substrates W are to be processed, for example, the processing unit requiring a shorter processing time can perform processing more times. Therefore, the overall throughput of the substrate processing apparatus 100 can be improved.

以上のように、第1の実施の形態によれば、各処理ユニットSPIN1~SPIN4の所要処理時間が変動したとしても、その変動を反映した全体スケジュールの再作成を、その処理ユニットの処理が終了する前に完了する。したがって、基板処理装置100の動作を中断することなく、所要処理時間の変動を反映した全体スケジュールに従って動作を続行することができる。 As described above, according to the first embodiment, even if the required processing time of each processing unit SPIN1 to SPIN4 varies, the re-creation of the overall schedule that reflects the variation is completed before the processing of that processing unit is completed. Therefore, the operation of the substrate processing apparatus 100 can be continued according to the overall schedule that reflects the variation in the required processing time without interrupting the operation of the substrate processing apparatus 100.

しかも、第1の実施の形態によれば、各処理ユニットSPIN1~SPIN4の処理の開始前には、その処理ユニットSPIN1~SPIN4の当該処理についての払出計画は作成されていない。言い換えれば、各処理ユニットSPIN1~SPIN4の払出計画を作成する前に、処理実行指示部26は全体スケジュールに従った動作を基板処理装置100に実行させる。そして、各処理ユニットSPIN1~SPIN4の処理の実行中に検出されるセンサSRのユニットセンシング情報に基づいて、各処理ユニットSPIN1~SPIN4の残り処理時間を推定し、その推定残り時間に基づいて、各処理ユニットSPIN1~SPIN4の払出計画が作成される。 Moreover, according to the first embodiment, before each of the processing units SPIN1 to SPIN4 starts processing, a take-out plan for that processing of that processing unit SPIN1 to SPIN4 is not created. In other words, before creating a take-out plan for each of the processing units SPIN1 to SPIN4, the processing execution instruction unit 26 causes the substrate processing apparatus 100 to execute operations according to the overall schedule. Then, based on the unit sensing information of the sensor SR detected during the execution of the processing of each of the processing units SPIN1 to SPIN4, the remaining processing time of each of the processing units SPIN1 to SPIN4 is estimated, and a take-out plan for each of the processing units SPIN1 to SPIN4 is created based on the estimated remaining time.

もし仮に基板処理装置100の動作の開始前に払出計画が作成されると、その払出計画はセンサSRのユニットセンシング情報に応じて修正され得る。払出計画が修正される場合、動作の開始前に作成した払出計画の当該修正部分は無駄である。 If a pay-out plan is created before the start of operation of the substrate processing apparatus 100, the pay-out plan may be modified according to the unit sensing information of the sensor SR. If the pay-out plan is modified, the modified portion of the pay-out plan created before the start of operation is wasted.

これに対して、第1の実施の形態では、処理実行指示部26は払出計画の作成前に、基板処理装置100の動作を開始する。よって、そのような無駄な払出計画の作成を回避できる。よって、スケジューリング機能部25の処理負荷を軽減することができる。 In contrast, in the first embodiment, the processing execution instruction unit 26 starts the operation of the substrate processing apparatus 100 before creating a delivery plan. This makes it possible to avoid creating such unnecessary delivery plans. This makes it possible to reduce the processing load on the scheduling function unit 25.

<ブロックの干渉>
上述の具体例では、スケジューリング機能部25は通知元の処理ユニットについてのブロックを配置することにより、全体スケジュールを再作成した。つまり、全体スケジュールにおいて既に配置されている他の処理ユニットについてのブロックは再配置せずに、通知元の処理ユニットについてのブロックを新たに配置していた。しかしながら、通知元の処理ユニットの配置のみならず、他の処理ユニットについてのブロックも再配置したほうがいい場合もある。以下、具体的に説明する。
<Block Interference>
In the above-mentioned specific example, the scheduling function unit 25 recreated the overall schedule by arranging the blocks for the processing unit that sent the notification. In other words, the blocks for the processing unit that sent the notification were not rearranged for the other processing units that were already arranged in the overall schedule, and a block for the processing unit that sent the notification was newly arranged. However, there are cases where it is better to rearrange not only the processing unit that sent the notification, but also the blocks for the other processing units. This will be explained in detail below.

図19は、全体スケジュールの一例を模式的に示す図である。図19に例示する全体スケジュールには、処理ユニットSPIN1~SPIN4についての最初の投入計画のブロック、および、処理ユニットSPIN1についての払出計画および次の投入計画のブロックが配置されている。図19の例では、処理ユニットSPIN2の通知時刻t2(SPIN2)と、処理ユニットSPIN2のユニット推定終了時刻t3(SPIN3)も示されている。 Figure 19 is a diagram that shows a schematic example of an overall schedule. The overall schedule shown in Figure 19 includes blocks of the initial input plan for processing units SPIN1 to SPIN4, and blocks of the withdrawal plan and next input plan for processing unit SPIN1. The example in Figure 19 also shows the notification time t2 (SPIN2) of processing unit SPIN2 and the unit estimated end time t3 (SPIN3) of processing unit SPIN2.

図19の例では、処理ユニットSPIN2の実際の所要処理時間が処理ユニットSPIN1の実際の所要処理時間よりも短く、ユニット推定終了時刻t3(SPIN2)がユニット推定終了時刻t3(SPIN1)に比較的に近い。この場合、処理ユニットSPIN2からの基板Wの搬出処理のブロックをユニット推定終了時刻t3(SPIN2)に基づいて配置しようとすると、既に配置されているブロックA6と時間軸上で干渉する。 In the example of FIG. 19, the actual required processing time of processing unit SPIN2 is shorter than the actual required processing time of processing unit SPIN1, and the unit estimated end time t3 (SPIN2) is relatively close to the unit estimated end time t3 (SPIN1). In this case, if an attempt is made to place a block for unloading processing of substrates W from processing unit SPIN2 based on the unit estimated end time t3 (SPIN2), it will interfere with block A6, which has already been placed, on the time axis.

このように通知元の処理ユニットSPIN2についてのブロックが他の処理ユニットSPIN1についてのブロックと時間軸上で干渉する場合には、スケジューリング機能部25は、その通知元の処理ユニットSPIN2の所要処理時間と、当該他の処理ユニットSPIN1の所要処理時間との長短を比較し、所要処理時間の短い処理ユニットSPIN2についてのブロックが、所要処理時間の長い処理ユニットSPIN1についてのブロックよりも先に配置されるように、処理ユニットSPIN1,SPIN2の両方のブロックの位置を調整して、全体スケジュールを再作成してもよい。 In this way, when a block for the processing unit SPIN2 that sent the notification interferes with a block for another processing unit SPIN1 on the time axis, the scheduling function unit 25 may compare the required processing time of the processing unit SPIN2 that sent the notification with the required processing time of the other processing unit SPIN1, and adjust the positions of the blocks of both processing units SPIN1 and SPIN2 so that the block for processing unit SPIN2, which has the shorter required processing time, is placed before the block for processing unit SPIN1, which has the longer required processing time, to recreate the overall schedule.

図20は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図20の例では、処理ユニットSPIN2からのユニットセンシング情報に基づいて、処理ユニットSPIN1,SPIN2についての払出計画および次の投入計画のブロック新たに配置されている。図20の例でも、配置されたブロックを斜線のハッチングで示している。要するに、処理ユニットSPIN1についての払出計画および次の投入計画も作成し直している。図20の例では、所要処理時間が短い処理ユニットSPIN2からの基板Wの搬出処理を示すブロックを、所要処理時間が長い処理ユニットSPIN1からの基板Wの搬出処理を示すブロックよりも前に配置している。 Figure 20 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operations. In the example of Figure 20, new blocks for the unloading plan and the next loading plan for processing units SPIN1 and SPIN2 are placed based on the unit sensing information from processing unit SPIN2. In the example of Figure 20, the placed blocks are also shown with diagonal hatching. In other words, the unloading plan and the next loading plan for processing unit SPIN1 are also re-created. In the example of Figure 20, the block indicating the unloading process of substrates W from processing unit SPIN2, which requires a short processing time, is placed before the block indicating the unloading process of substrates W from processing unit SPIN1, which requires a long processing time.

また、処理ユニットSPIN2への次の基板Wの搬入処理を示すブロックを、処理ユニットSPIN1への次の基板Wの搬入処理を示すブロックよりも前に配置し、処理ユニットSPIN2の次の処理の開始時刻を示すブロックを、処理ユニットSPIN1の次の処理の開始時刻を示すブロックよりも前に配置している。 In addition, the block indicating the loading process of the next substrate W into processing unit SPIN2 is placed before the block indicating the loading process of the next substrate W into processing unit SPIN1, and the block indicating the start time of the next process in processing unit SPIN2 is placed before the block indicating the start time of the next process in processing unit SPIN1.

これによれば、所要処理時間の短い処理ユニットSPIN2に基板Wの処理を優先的に実行させることができる。よって、全体的な処理のスループットの向上に資する。 This allows the processing unit SPIN2, which requires a shorter processing time, to be given priority for processing the substrate W. This contributes to improving the overall processing throughput.

なお、通知元の処理ユニットについてのブロックのみを新たに配置して全体スケジュールを再作成する場合には、処理ユニットの所要処理時間の長短を比較する必要がない。よって、この場合には、スケジューリング機能部25の処理負荷を軽減できる。 When recreating the overall schedule by newly arranging only the blocks for the processing unit that sent the notification, there is no need to compare the required processing time of the processing units. Therefore, in this case, the processing load on the scheduling function unit 25 can be reduced.

図21は、通知元の処理ユニットについてのブロックのみを配置したときの全体スケジュールの一例を模式的に示す図である。図21の例でも、新たに配置されたブロックを斜線のハッチングで示している。図21の例では、既に配置されている処理ユニットSPIN1についてのブロックは変更されておらず、通知元の処理ユニットSPIN2についてのブロックが、処理ユニットSPIN1についてのブロックよりも後に配置されている。 Figure 21 is a diagram showing a schematic example of an overall schedule when only the blocks for the notification source processing unit are placed. In the example of Figure 21, the newly placed blocks are also shown with diagonal hatching. In the example of Figure 21, the blocks for the processing unit SPIN1 that have already been placed are not changed, and the blocks for the notification source processing unit SPIN2 are placed after the blocks for the processing unit SPIN1.

<第2の実施の形態>
第2の実施の形態にかかる基板処理装置100の構成は第1の実施の形態と同じである。第1の実施の形態では、処理実行指示部26は処理ユニットの払出計画の作成前に、基板処理装置100の動作を開始している。しかしながら、必ずしもこれに限らない。第2の実施の形態では、スケジューリング機能部25は、基板処理装置100の動作を開始する前に、処理ユニットの投入計画および払出計画を含む全体スケジュールを一旦作成する。
Second Embodiment
The configuration of the substrate processing apparatus 100 according to the second embodiment is the same as that of the first embodiment. In the first embodiment, the processing execution instruction unit 26 starts the operation of the substrate processing apparatus 100 before creating the unloading plan of the processing units. However, this is not necessarily limited to this. In the second embodiment, the scheduling function unit 25 once creates an overall schedule including the input plan and unloading plan of the processing units before starting the operation of the substrate processing apparatus 100.

図22および図23は、基板処理装置100の動作の一例を示すフローチャートである。ステップS21~S32は、それぞれステップS1,S3~S13と同様である。ただし、ステップS21~S32においては、計画範囲は、投入計画および払出計画の両方を含む全体スケジュール(図4)である。つまり、ステップS22において、スケジューリング機能部25は、投入計画および払出計画を含む仮タイムテーブルを作成する。これにより、ステップS32において、例えば図4に示す全体スケジュールが作成される。 Figures 22 and 23 are flow charts showing an example of the operation of the substrate processing apparatus 100. Steps S21 to S32 are similar to steps S1 and S3 to S13, respectively. However, in steps S21 to S32, the planning scope is the overall schedule (Figure 4) including both the input plan and the output plan. That is, in step S22, the scheduling function unit 25 creates a tentative timetable including the input plan and the output plan. As a result, in step S32, the overall schedule shown in Figure 4, for example, is created.

全体スケジュールを作成すると、処理実行指示部26は当該全体スケジュールに従った動作を基板処理装置100に実行させる(ステップS33)。次に、スケジューリング機能部25は、各処理ユニットSPIN1~SPIN4のから通知情報の通知があったか否かを判断する(ステップS34)。通知情報の通知がないと判断したとき(ステップS34:NO)、スケジューリング機能部25は再びステップS34を実行する。通知情報の通知があったときには(ステップS34:YES)、スケジューリング機能部25は、その通知元の処理ユニットのユニット推定終了時刻t3を当該通知情報に基づいて取得する(ステップS35)。次に、スケジューリング機能部25は、全体スケジュールにおける当該処理ユニットの処理終了予定時刻と、ユニット推定終了時刻t3との時刻差が時刻差基準値以上であるか否かを判断する(ステップS36)。時刻差基準値は例えば予め設定される。 When the overall schedule is created, the process execution instruction unit 26 causes the substrate processing apparatus 100 to perform operations according to the overall schedule (step S33). Next, the scheduling function unit 25 judges whether or not notification information has been notified from each of the processing units SPIN1 to SPIN4 (step S34). When it is judged that notification information has not been notified (step S34: NO), the scheduling function unit 25 executes step S34 again. When notification information has been notified (step S34: YES), the scheduling function unit 25 acquires the unit estimated end time t3 of the processing unit that notified based on the notification information (step S35). Next, the scheduling function unit 25 judges whether or not the time difference between the scheduled processing end time of the processing unit in the overall schedule and the unit estimated end time t3 is equal to or greater than a time difference reference value (step S36). The time difference reference value is, for example, set in advance.

当該時刻差が時刻差基準値以上であるときには(ステップS36:YES)、スケジューリング機能部25は、全体スケジュールを再作成する(ステップS37)。具体的には、スケジューリング機能部25は、例えば当該処理ユニットの終了時刻がユニット推定終了時刻t3となるように、当該処理ユニットの処理のブロックの長さを更新した上で、仮タイムテーブルを作成しなおし、作成しなおした仮タイムテーブルに基づき、全体スケジュールを再度作成する。つまり、時刻差が時刻差基準値以上であると判断された場合には、仮タイムテーブル更新ステップを実行し、時刻差が時刻差基準値よりも小さいと判断された場合には、仮タイムテーブル更新ステップを実行しない。 When the time difference is equal to or greater than the time difference reference value (step S36: YES), the scheduling function unit 25 recreates the overall schedule (step S37). Specifically, the scheduling function unit 25 updates the length of the block of processing of the processing unit so that the end time of the processing unit becomes the unit estimated end time t3, for example, and then recreates the provisional timetable, and recreates the overall schedule based on the recreated provisional timetable. In other words, if it is determined that the time difference is equal to or greater than the time difference reference value, a provisional timetable update step is executed, and if it is determined that the time difference is smaller than the time difference reference value, a provisional timetable update step is not executed.

この全体スケジュールの再作成は、例えば、図22のフローチャートに沿って行うことも可能である。すなわち、スケジューリング機能部25は、例えば当該処理ユニットの終了時刻がユニット推定終了時刻t3となるように、当該処理ユニットの処理のブロックの長さを更新した上で、図22のステップS22からステップS31に至るステップを実行する。ただし、ステップS22において、スケジューリング機能部25は、処理ユニットの所要処理時間として、ユニットセンシング情報に基づいて推定された所要処理時間を採用して、仮タイムケジュールを更新する。 This re-creation of the overall schedule can also be performed, for example, according to the flowchart in FIG. 22. That is, the scheduling function unit 25 updates the length of the processing block of the processing unit so that the end time of the processing unit coincides with the unit estimated end time t3, for example, and then executes steps S22 to S31 in FIG. 22. However, in step S22, the scheduling function unit 25 adopts the required processing time estimated based on the unit sensing information as the required processing time of the processing unit, and updates the tentative time schedule.

各処理ユニットSPIN1~SPIN4の所要処理時間に関する処理時間情報は、処理内容データ40(レシピ)として記憶媒体23に記憶されている。そこで、制御部21はユニットセンシング情報に基づいて推定された各処理ユニットSPIN1~SPIN4の所要処理時間を、処理内容データ40として記憶媒体23に記憶してもよい(ステップS38:ブロック更新工程)。つまり、推定された所要処理時間で処理内容データ40を更新してもよい。これによれば、次回以降に基板処理を開始する場合に、より実際に即した処理内容データ40を活用して、全体スケジュールを作成することができる。 Processing time information regarding the required processing time of each processing unit SPIN1 to SPIN4 is stored in the storage medium 23 as processing content data 40 (recipe). Therefore, the control unit 21 may store the required processing time of each processing unit SPIN1 to SPIN4 estimated based on the unit sensing information in the storage medium 23 as processing content data 40 (step S38: block update process). In other words, the processing content data 40 may be updated with the estimated required processing time. In this way, when starting substrate processing from the next time onwards, an overall schedule can be created using processing content data 40 that is more in line with reality.

当該時刻差が時刻差基準値未満であるとき(ステップS36:NO)、スケジューリング機能部25は、全体スケジュールの再作成(ステップS37)および処理内容データ40の更新(ステップS38)を実行しない。このように時刻差が時刻差基準値以上であるときのみ、全体スケジュールの再作成が行われれば、不要な全体スケジュールの再作成を回避できる。 When the time difference is less than the time difference reference value (step S36: NO), the scheduling function unit 25 does not recreate the overall schedule (step S37) or update the processing content data 40 (step S38). In this way, if the overall schedule is recreated only when the time difference is equal to or greater than the time difference reference value, unnecessary recreation of the overall schedule can be avoided.

次に、制御部21は、全ての基板Wについての処理が終了したか否かを判断する(ステップS39)。全ての基板Wの処理が終了していない場合には、制御部21は再びステップS34を実行する。全ての基板Wの処理が終了している場合には(ステップS39:YES)、制御部21は処理を終了する。例えば、制御部21は基板処理開始指示のフラグをLとし、スケジュール指示のフラグをLとする。未だ基板Wの処理が終了していない場合には(ステップS39:NO)、スケジューリング機能部25は、ステップS34を再び実行する。 Next, the control unit 21 determines whether processing has been completed for all substrates W (step S39). If processing has not been completed for all substrates W, the control unit 21 executes step S34 again. If processing has been completed for all substrates W (step S39: YES), the control unit 21 ends processing. For example, the control unit 21 sets the substrate processing start instruction flag to L and the schedule instruction flag to L. If processing has not yet been completed for the substrates W (step S39: NO), the scheduling function unit 25 executes step S34 again.

<第3の実施の形態>
第3の実施の形態にかかる基板処理装置100の構成は第1の実施の形態と同じである。ただし第3の実施の形態においては、基板Wは処理ユニットSPIN1~SPIN12のうち2以上の処理ユニットによって連続的に処理される。例えば、基板Wが処理ユニットSPIN1において処理された後に、処理ユニットSPIN1から処理ユニットSPIN3に搬送されて、処理ユニットSPIN3において処理される。このような2以上の処理ユニットによる基板Wへの連続的な処理を以下では渡り処理とも呼ぶ。
Third Embodiment
The configuration of the substrate processing apparatus 100 according to the third embodiment is the same as that of the first embodiment. However, in the third embodiment, the substrate W is successively processed by two or more of the processing units SPIN1 to SPIN12. For example, after the substrate W is processed in the processing unit SPIN1, it is transported from the processing unit SPIN1 to the processing unit SPIN3 and is processed in the processing unit SPIN3. Such successive processing of the substrate W by two or more processing units is also referred to as transfer processing hereinafter.

基板Wに対する処理の手順は、処理内容データ40におけるレシピで規定されるので、処理内容データ40には渡り処理が含まれる場合がある。第3の実施の形態では、処理内容データ40に渡り処理が含まれる場合について説明する。 The processing procedure for the substrate W is specified by a recipe in the processing content data 40, so the processing content data 40 may include transfer processing. In the third embodiment, a case where the processing content data 40 includes transfer processing will be described.

以下では、簡単のために、4つの処理ユニットSPIN1~SPIN4を用いて説明を行う。ここでは、処理ユニットSPIN1および処理ユニットSPIN2は基板Wに対して第1処理を施し、処理ユニットSPIN3および処理ユニットSPIN4は基板Wに対して、第1処理とは異なる第2処理を施す。例えば第1処理と第2処理との間では、基板Wに対して供給される処理液の濃度および処理液の種類などの処理に関する諸条件が相違する。各基板Wは、第1処理を行う処理ユニットから、第2処理を行う処理ユニットに搬送される。これにより、基板Wには、各処理ユニットによって第1処理および第2処理が連続的に施される。 For simplicity, the following description will be given using four processing units SPIN1 to SPIN4. Here, processing units SPIN1 and SPIN2 perform a first processing on the substrate W, and processing units SPIN3 and SPIN4 perform a second processing on the substrate W that is different from the first processing. For example, the first processing and second processing have different processing conditions, such as the concentration of the processing liquid and the type of processing liquid supplied to the substrate W. Each substrate W is transported from a processing unit that performs the first processing to a processing unit that performs the second processing. As a result, the substrate W is successively subjected to the first processing and the second processing by each processing unit.

図24は、スケジューリング機能部25によって作成される全体スケジュールの一例を模式的に示す図である。図24の例でも、全体スケジュールはブロックおよび矢印によって模式的に表現される。以下では、説明の簡単のために、4枚の基板W(基板W1から基板W4)に対する処理について述べる。実際にはより多くの基板Wが処理される。 Figure 24 is a diagram showing a schematic example of an overall schedule created by the scheduling function unit 25. In the example of Figure 24, the overall schedule is also represented diagrammatically by blocks and arrows. For ease of explanation, the following describes the processing of four substrates W (substrates W1 to W4). In reality, more substrates W are processed.

ここで、代表的に基板W1に着目して全体スケジュールを説明する。図24の例では、基板W1に対応するブロックを太線で示している。図24によれば、未処理の基板W1はインデクサロボットIRによって基板収容器Cから取り出され(ブロックD1)、受渡ユニットPASSに受け渡される(ブロックD2)。そして、この基板W1は主搬送ロボットCRによって受渡ユニットPASSから取り出され(ブロックD3)、処理ユニットSPIN1に受け渡される(ブロックD4)。基板W1には、処理ユニットSPIN1によって第1処理が施される(ブロックD5)。 The overall schedule will now be described, focusing on substrate W1 as a representative example. In the example of Figure 24, the block corresponding to substrate W1 is indicated by a thick line. According to Figure 24, unprocessed substrate W1 is removed from the substrate container C by the indexer robot IR (block D1) and transferred to the transfer unit PASS (block D2). This substrate W1 is then removed from the transfer unit PASS by the main transport robot CR (block D3) and transferred to the processing unit SPIN1 (block D4). The first processing is performed on substrate W1 by the processing unit SPIN1 (block D5).

処理ユニットSPIN1の処理終了後に、基板W1は主搬送ロボットCRによって処理ユニットSPIN1から取り出され(ブロックD6)、別の処理ユニットSPIN3に受け渡される(ブロックD7)。基板W1には、処理ユニットSPIN3によって第2処理が施される(ブロックD8)。この処理ユニットSPIN3における第2処理の内容は処理ユニットSPIN1における第1処理の内容と相違する。 After processing in processing unit SPIN1 is completed, the substrate W1 is removed from processing unit SPIN1 by the main transport robot CR (block D6) and transferred to another processing unit SPIN3 (block D7). The substrate W1 is subjected to a second process by processing unit SPIN3 (block D8). The content of the second process in processing unit SPIN3 differs from the content of the first process in processing unit SPIN1.

処理ユニットSPIN3の処理終了後に、処理済みの基板W1は主搬送ロボットCRによって処理ユニットSPIN3から取り出され(ブロックD9)、受渡ユニットPASSに受け渡される(ブロックD10)。続いて、処理済みの基板W1はインデクサロボットIRによって受渡ユニットPASSから取り出され(ブロックD11)、基板収容器Cに受け渡される(ブロックD12)。 After processing in the processing unit SPIN3 is completed, the processed substrate W1 is removed from the processing unit SPIN3 by the main transport robot CR (block D9) and transferred to the transfer unit PASS (block D10). The processed substrate W1 is then removed from the transfer unit PASS by the indexer robot IR (block D11) and transferred to the substrate container C (block D12).

制御部21のスケジューリング機能部25が、図24に例示するような全体スケジュールを作成し、処理実行指示部26がこの全体スケジュールに従って基板処理装置100の各部を制御する。これにより、基板W1には処理ユニットSPIN1および処理ユニットSPIN3によってこの順で連続的に処理が施され、基板W2には処理ユニットSPIN2および処理ユニットSPIN4によってこの順で連続的に処理が施され、基板W3には処理ユニットSPIN1および処理ユニットSPIN3によってこの順で連続的に処理が施され、基板W4には処理ユニットSPIN2および処理ユニットSPIN4によってこの順で連続的に処理が施される。 The scheduling function unit 25 of the control unit 21 creates an overall schedule as exemplified in FIG. 24, and the processing execution instruction unit 26 controls each part of the substrate processing apparatus 100 in accordance with this overall schedule. As a result, the substrate W1 is processed continuously in this order by the processing units SPIN1 and SPIN3, the substrate W2 is processed continuously in this order by the processing units SPIN2 and SPIN4, the substrate W3 is processed continuously in this order by the processing units SPIN1 and SPIN3, and the substrate W4 is processed continuously in this order by the processing units SPIN2 and SPIN4.

このように第3の実施の形態では、各基板Wには複数の処理ユニットの間で搬送されて連続的に異なる処理が施される。 In this way, in the third embodiment, each substrate W is transported between multiple processing units and successively subjected to different processing.

第3の実施の形態では、この全体スケジュールを投入計画、渡り計画および払出計画に分割して考慮する。渡り計画とは、基板Wに対する処理ユニット間の搬送に関する計画である。より具体的には、渡り計画は、搬送元の処理ユニットの処理の終了、基板Wに対する搬送元の処理ユニットから搬送先の処理ユニットへの搬送処理の時間帯、および、次の搬送先の処理ユニットの処理の開始を規定する計画である。 In the third embodiment, this overall schedule is divided into an input plan, a transfer plan, and an unloading plan for consideration. The transfer plan is a plan regarding the transport of substrates W between processing units. More specifically, the transfer plan is a plan that specifies the end of processing in the source processing unit, the time period during which substrates W are transported from the source processing unit to the destination processing unit, and the start of processing in the next destination processing unit.

図25は、基板処理装置100(スケジュール作成装置)の具体的な動作の一例を示すフローチャートである。この一連の処理は繰り返し実行される。図25のフローでは、図5のフローと比較して、ステップS2の代わりにステップS2Aが実行される。 Figure 25 is a flow chart showing an example of a specific operation of the substrate processing apparatus 100 (schedule creation device). This series of processes is executed repeatedly. In the flow of Figure 25, step S2A is executed instead of step S2, as compared to the flow of Figure 5.

図25を参照して、まず、スケジューリング機能部25は第1の実施の形態と同様に、基板処理開始指示があったか否かを判断する(ステップS1)。例えばホストコンピュータまたはユーザから出入力部22に当該開始指示が入力される。制御部21は当該入力に応答して、例えば開始指示のフラグをLからHに遷移させる。 Referring to FIG. 25, first, the scheduling function unit 25 determines whether or not a substrate processing start instruction has been issued, as in the first embodiment (step S1). For example, the start instruction is input to the input/output unit 22 from a host computer or a user. In response to the input, the control unit 21 transitions the start instruction flag from L to H, for example.

基板処理開始指示がない、つまり開始指示のフラグがLであるときには、スケジューリング機能部25は再びステップS1を実行する。基板処理開始指示があったときには、スケジューリング機能部25は計画範囲を決定する(ステップS2A)。スケジューリング機能部25は、作成対象となる計画範囲を、投入計画、渡り計画および払出計画の中から選択して決定する。つまり、スケジューリング機能部25は全体スケジュールのうち投入計画を作成するのか、渡り計画を作成するのか、払出計画を作成するのかを決定する。初期的には、スケジューリング機能部25は投入計画を計画範囲に決定する。 When there is no instruction to start substrate processing, that is, when the start instruction flag is L, the scheduling function unit 25 executes step S1 again. When there is an instruction to start substrate processing, the scheduling function unit 25 determines the planning range (step S2A). The scheduling function unit 25 determines the planning range to be created by selecting from among the input plan, transfer plan, and withdrawal plan. In other words, the scheduling function unit 25 determines whether to create an input plan, a transfer plan, or a withdrawal plan of the overall schedule. Initially, the scheduling function unit 25 determines the input plan as the planning range.

例えば最初のステップS2Aでは、スケジューリング機能部25は作成対象となる計画範囲を、第1の実施の形態と同様に投入計画に決定する。スケジューリング機能部25は第1の実施の形態と同様にステップS3~S13を実行する。 For example, in the first step S2A, the scheduling function unit 25 determines the planning range to be created as an input plan, similar to the first embodiment. The scheduling function unit 25 executes steps S3 to S13, similar to the first embodiment.

ところで、基板の処理手順を規定する処理内容データ40には、基板Wに対する第1処理および第2処理の連続的な渡り処理が含まれている。よって、基板Wが最初に搬送される搬送先の処理ユニットは処理ユニットSPIN1,SPIN2のいずれかである。したがって、ステップS3では、スケジューリング機能部25は、処理ユニットSPIN1および処理ユニットSPIN2のいずれかを通る2つの経路に対応した2つの仮タイムテーブルを作成する。 The processing content data 40, which specifies the processing procedure for the substrate, includes a continuous transfer process of the first and second processes for the substrate W. Therefore, the processing unit to which the substrate W is first transported is either processing unit SPIN1 or SPIN2. Therefore, in step S3, the scheduling function unit 25 creates two provisional timetables corresponding to two routes that pass through either processing unit SPIN1 or processing unit SPIN2.

そして、スケジューリング機能部25はスケジューリング指示に応答して、必要に応じて前準備工程のブロックを配置し(ステップS4~S7)、仮タイムテーブルの未配置のブロックを順次に配置することで計画を、仮タイムテーブルごとに作成する(ステップS8~S12)。次にスケジューリング機能部25は、作成済みの計画の一つを全体スケジュールとして選択するための判定を行う(ステップS13)。 Then, in response to the scheduling instruction, the scheduling function unit 25 arranges blocks of preparatory processes as necessary (steps S4 to S7) and creates a plan for each tentative timetable by sequentially arranging unarranged blocks of the tentative timetable (steps S8 to S12). Next, the scheduling function unit 25 makes a decision to select one of the plans that has already been created as the overall schedule (step S13).

図26は、上述の動作によって初期的に作成された全体スケジュールの一例を模式的に示す図である。図26の例では、基板W1についての投入計画として、基板W1に対する基板収容器Cから処理ユニットSPIN1への搬送処理に関する主搬送ロボットCRおよびインデクサロボットIRのブロック、ならびに、処理ユニットSPIN1の処理の開始時刻を規定するブロックが配置されている。また、基板W2についての投入計画として、基板W2に対する基板収容器Cから処理ユニットSPIN3への搬送処理に関する主搬送ロボットCRおよびインデクサロボットIRのブロック、ならびに、処理ユニットSPIN2の処理の開始時刻を規定するブロックが配置されている。図26に例示するように、この時点では、全体スケジュールは最初の2枚の基板W1,W2に対する投入計画のみを含んでいる。 Figure 26 is a diagram showing an example of an overall schedule initially created by the above-mentioned operations. In the example of Figure 26, the loading plan for substrate W1 includes blocks for the main transport robot CR and indexer robot IR related to the transport process for substrate W1 from the substrate container C to the processing unit SPIN1, and a block specifying the start time of the processing in the processing unit SPIN1. The loading plan for substrate W2 includes blocks for the main transport robot CR and indexer robot IR related to the transport process for substrate W2 from the substrate container C to the processing unit SPIN3, and a block specifying the start time of the processing in the processing unit SPIN2. As shown in Figure 26, at this point, the overall schedule only includes loading plans for the first two substrates W1 and W2.

この投入計画では、各処理ユニットSPIN1,SPIN2にはそれぞれ基板W1,W2が順次に搬入される。処理ユニットSPIN1は基板W1に対して第1処理を施し、処理ユニットSPIN2は基板W2に対して第1処理を施す。基板Wに対する処理中に新たな基板Wを搬送することは好ましくないので、スケジューリング機能部25は、基板W1に対する第1処理が終了して基板W1が処理ユニットSPIN1から搬出されない限り、新たな基板Wを処理ユニットSPIN1に搬入する計画を作成しない。処理ユニットSPIN2も同様である。 In this loading plan, substrates W1 and W2 are loaded sequentially into each of the processing units SPIN1 and SPIN2, respectively. Processing unit SPIN1 performs a first process on substrate W1, and processing unit SPIN2 performs a first process on substrate W2. Since it is not desirable to transport a new substrate W while a substrate W is being processed, the scheduling function unit 25 does not create a plan to load a new substrate W into processing unit SPIN1 unless the first process on substrate W1 is completed and substrate W1 is unloaded from processing unit SPIN1. The same applies to processing unit SPIN2.

制御部21の処理実行指示部26は、図26の全体スケジュールに従った動作を基板処理装置100に実行させる。よって、処理ユニットSPIN1,SPIN2は図26の全体スケジュールに従って基板Wに対する処理を開始する。言い換れば、処理実行指示部26は、後述の渡り計画および払出計画を作成する前に、全体スケジュールに従った動作を基板処理装置100に実行させる。 The process execution instruction unit 26 of the control unit 21 causes the substrate processing apparatus 100 to perform operations according to the overall schedule in FIG. 26. Thus, the processing units SPIN1 and SPIN2 start processing the substrate W according to the overall schedule in FIG. 26. In other words, the process execution instruction unit 26 causes the substrate processing apparatus 100 to perform operations according to the overall schedule before creating the transfer plan and removal plan described below.

各処理ユニットSPIN1,SPIN2が処理を開始すると、その処理中において、各センサSRはユニットセンシング情報を検出し(検出ステップ)、その検出に応じて通知情報を制御部21に通知する。ここでも、各処理ユニットSPIN1,SPIN2の制御部は、処理の推定残り時間が、全体スケジュールの再作成に要する所要作成時間Trefに近づいたときに、制御部21に通知情報を通知する。ここでは、まず、基板W1を処理している処理ユニットSPIN1が通知時刻t12(SPIN1)において通知情報を通知したとする(図27も参照)。 When each processing unit SPIN1, SPIN2 starts processing, during that processing, each sensor SR detects unit sensing information (detection step) and notifies the control unit 21 of notification information in response to that detection. Again, the control units of each processing unit SPIN1, SPIN2 notify the control unit 21 of notification information when the estimated remaining processing time approaches the required creation time Tref required to re-create the overall schedule. Here, it is first assumed that processing unit SPIN1, which is processing substrate W1, notifies notification information at notification time t12 (SPIN1) (see also FIG. 27).

制御部21のスケジューリング機能部25はこの通知情報の通知に応答して、その通知元の処理ユニットに対する渡り計画および払出計画のいずれか一方、および、必要に応じて、その次の投入計画を作成する。この作成も図25のフローチャートに沿って行うことができる。 In response to this notification information, the scheduling function unit 25 of the control unit 21 creates either a transfer plan or a withdrawal plan for the processing unit that sent the notification, and, if necessary, the next input plan. This creation can also be done according to the flowchart in Figure 25.

まず、スケジューリング機能部25は通知情報の通知に応答して、次の作成対象となる計画範囲を決定する(ステップS2A)。具体的には、スケジューリング機能部25は処理内容データ40を確認し、通知元の処理ユニットによって行われている基板Wに対する処理が処理手順における最後の処理か否かを判断する。ここでは、処理内容データ40には、第1処理および第2処理をこの順に実行する渡り処理が規定されているので、処理手順における最後の処理は第2処理である。 First, in response to the notification of the notification information, the scheduling function unit 25 determines the next planned range to be created (step S2A). Specifically, the scheduling function unit 25 checks the processing content data 40 and determines whether the processing on the substrate W being performed by the processing unit that sent the notification is the final processing in the processing procedure. In this case, the processing content data 40 specifies a transfer processing in which the first processing and the second processing are performed in this order, so the final processing in the processing procedure is the second processing.

通知元の処理ユニットSPIN1による第1処理は処理手順における最後の処理ではないので、スケジューリング機能部25は次の計画範囲を、処理ユニットSPIN1によって処理されている基板W1についての渡り計画に決定する。 Since the first process by the processing unit SPIN1 that sent the notification is not the last process in the processing procedure, the scheduling function unit 25 determines the next planning range to be the transfer plan for the substrate W1 being processed by the processing unit SPIN1.

また、基板収容器Cには未処理の基板W3,W4が存在しているので、スケジューリング機能部25は基板W1についての渡り計画のみならず、基板W3についての投入計画も計画範囲に決定する。 In addition, since unprocessed substrates W3 and W4 are present in substrate container C, the scheduling function unit 25 determines not only the transfer plan for substrate W1 but also the input plan for substrate W3 in the planning range.

次にスケジューリング機能部25は通知情報および処理内容データ40に基づいて仮タイムテーブルを更新する(ステップS3)。具体的には、まずスケジューリング機能部25は、第1の実施の形態と同様に、通知元の処理ユニットSPIN1の処理の終了時刻を規定するブロックを通知情報(推定残り時間)に基づいて配置する。そして、スケジューリング機能部25は、次の搬送先候補の処理ユニットへの搬送を規定した仮タイムテーブルを、搬送先候補ごとに作成する。ここでは、処理ユニットSPIN1から処理ユニットSPIN3への搬送を規定した仮タイムテーブルと、処理ユニットSPIN1から処理ユニットSPIN4への搬送を規定した仮タイムテーブルとが作成される。 Next, the scheduling function unit 25 updates the provisional timetable based on the notification information and the processing content data 40 (step S3). Specifically, the scheduling function unit 25 first arranges a block that specifies the end time of the processing of the notification source processing unit SPIN1 based on the notification information (estimated remaining time) as in the first embodiment. Then, the scheduling function unit 25 creates a provisional timetable that specifies the transport to the next candidate destination processing unit for each candidate destination. Here, a provisional timetable that specifies the transport from processing unit SPIN1 to processing unit SPIN3 and a provisional timetable that specifies the transport from processing unit SPIN1 to processing unit SPIN4 are created.

ステップS4では、スケジューリング指示のフラグがHであるので、肯定的な判断(YESの判断)がなされ、ステップS5では、否定的な判断(NOの判断)がなされる。 In step S4, since the scheduling instruction flag is H, a positive judgment (YES judgment) is made, and in step S5, a negative judgment (NO judgment) is made.

次にスケジューリング機能部25は通知元の処理ユニットSPIN1に対する仮タイムテーブルを参照し、当該仮タイムテーブルを構成する未配置のブロックを一つ取得し(ステップS8)、当該取得したブロックを配置できる位置を検索し(ステップS9)、その検索された位置に当該ブロックを配置する(ステップS10)。 Next, the scheduling function unit 25 refers to the provisional timetable for the processing unit SPIN1 that sent the notification, acquires one unplaced block that constitutes the provisional timetable (step S8), searches for a position where the acquired block can be placed (step S9), and places the block in the searched position (step S10).

次にスケジューリング機能部25は、仮タイムテーブルの未配置のブロックの全てについてステップS8~S10の処理を繰り返す(ステップS11)。これにより、一つの仮タイムテーブルを用いた計画が作成される。例えば、基板W1が処理ユニットSPIN1から処理ユニットSPIN3に搬送される渡り計画を含む計画が作成される。 Then, the scheduling function unit 25 repeats the processes of steps S8 to S10 for all unplaced blocks in the tentative timetable (step S11). This creates a plan using one tentative timetable. For example, a plan is created that includes a transfer plan for transporting substrate W1 from processing unit SPIN1 to processing unit SPIN3.

次にスケジューリング機能部25は全ての仮タイムテーブルについてステップS8~S12の処理を実行する。これにより、全ての仮タイムテーブルに対応する計画が作成される。ここでは、基板W1が処理ユニットSPIN1から処理ユニットSPIN4に搬送される渡り計画を含む計画も作成される。 Next, the scheduling function unit 25 executes the processes of steps S8 to S12 for all tentative timetables. As a result, plans corresponding to all tentative timetables are created. Here, a plan is also created that includes a transfer plan for transporting substrate W1 from processing unit SPIN1 to processing unit SPIN4.

次にスケジューリング機能部25は、作成済みの計画の一つを全体スケジュールとして選択するための判定を行う(ステップS13)。ここでは、スケジューリング機能部25は、識別番号が小さい処理ユニットSPIN3に搬送する計画を、全体スケジュールとして選択する。 Next, the scheduling function unit 25 makes a determination as to whether to select one of the plans that has already been created as the overall schedule (step S13). Here, the scheduling function unit 25 selects the plan for transporting to the processing unit SPIN3 with the smallest identification number as the overall schedule.

図27は、上述の動作によって作成された全体スケジュールの一例を模式的に示す図である。図27の例では、基板W1についての渡り計画として、基板W1に対する処理ユニットSPIN1の処理の終了時刻を示すブロック、基板W1に対する処理ユニットSPIN1から処理ユニットSPIN3への搬送処理に関する主搬送ロボットCRのブロック、および、処理ユニットSPIN3の処理の開始時刻を示すブロックが新たに配置されている。図27の例でも、新たに配置されたブロックを斜線のハッチングで示している。 Figure 27 is a schematic diagram showing an example of an overall schedule created by the above-mentioned operations. In the example of Figure 27, a block indicating the end time of processing of substrate W1 in processing unit SPIN1, a block of the main transport robot CR for transport processing of substrate W1 from processing unit SPIN1 to processing unit SPIN3, and a block indicating the start time of processing in processing unit SPIN3 are newly placed as a transfer plan for substrate W1. In the example of Figure 27, the newly placed blocks are also shown with diagonal hatching.

処理ユニットSPIN1の処理の終了時刻を示すブロックが配置されるので、スケジューリング機能部25は、第1の実施の形態と同様に、処理ユニットSPIN1への基板W3の投入計画も作成する。 Since a block indicating the end time of processing of processing unit SPIN1 is placed, the scheduling function unit 25 also creates a plan for inputting substrate W3 into processing unit SPIN1, similar to the first embodiment.

図28は、全体スケジュールの一例を模式的に示す図である。図28の例では、基板W3についての投入計画として、基板W3に対する基板収容器Cから処理ユニットSPIN1への搬送処理に関するインデクサロボットIRおよび主搬送ロボットCRのブロック、ならびに、処理ユニットSPIN1の次の処理の開始時刻を示すブロックが新たに配置されている。図28の例でも、新たに配置されたブロックを斜線のハッチングで示している。 Figure 28 is a schematic diagram showing an example of an overall schedule. In the example of Figure 28, as a loading plan for substrate W3, a block of the indexer robot IR and the main transport robot CR for the transport process of substrate W3 from the substrate container C to the processing unit SPIN1, as well as a block indicating the start time of the next process of processing unit SPIN1 have been newly placed. In the example of Figure 28, the newly placed blocks are also indicated by diagonal hatching.

基板処理装置100の動作がさらに進行すると、通知時刻t12(SPIN2)において処理ユニットSPIN2からの通知情報が制御部21に通知される(図29も参照)。スケジューリング機能部25はこの通知情報の通知に応答して、処理内容データ40に基づいて計画範囲を基板W2についての渡り計画に決定し(ステップS2A)、ステップS3~S13を実行して基板W2についての渡り計画を作成する。また、スケジューリング機能部25は次の基板W4についての投入計画も作成し、全体スケジュールを再作成する。 As the operation of the substrate processing apparatus 100 progresses further, notification information from processing unit SPIN2 is notified to the control unit 21 at notification time t12 (SPIN2) (see also FIG. 29). In response to this notification information, the scheduling function unit 25 determines the planning scope to be a transfer plan for substrate W2 based on the processing content data 40 (step S2A), and executes steps S3 to S13 to create a transfer plan for substrate W2. The scheduling function unit 25 also creates an input plan for the next substrate W4, and recreates the overall schedule.

図29および図30は、上述の動作によって作成された全体スケジュールの一例を模式的に示す図である。図29の例では、基板W2についての渡り計画が新たに作成されている。具体的には、基板W2についての渡り計画として、処理ユニットSPIN2の処理の終了時刻を示すブロック、基板W2に対する処理ユニットSPIN2から処理ユニットSPIN4への搬送処理に関する主搬送ロボットCRのブロック、および、処理ユニットSPIN4の処理の開始時刻を示すブロックが新たに配置されている。図29の例でも、新たに配置されたブロックを斜線のハッチングで示している。 Figures 29 and 30 are schematic diagrams showing an example of an overall schedule created by the above-mentioned operations. In the example of Figure 29, a transfer plan for substrate W2 has been newly created. Specifically, the transfer plan for substrate W2 includes a block indicating the end time of processing in processing unit SPIN2, a block for the main transport robot CR related to the transport processing of substrate W2 from processing unit SPIN2 to processing unit SPIN4, and a block indicating the start time of processing in processing unit SPIN4. In the example of Figure 29, the newly placed blocks are also indicated by diagonal hatching.

図30の例では、処理ユニットSPIN2に対する基板W4についての投入計画が新たに作成されている。具体的には、基板W4についての投入計画として、基板W4に対する基板収容器Cから処理ユニットSPIN2への搬送処理に関するインデクサロボットIRおよび主搬送ロボットCRのブロック、ならびに、処理ユニットSPIN2の次の処理の開始時刻を示すブロックが新たに配置されている。図30の例でも、新たに配置されたブロックを斜線のハッチングで示している。なお、図30の例では、通知時刻t1(SPIN1)を図示するために、処理ユニットSPIN1の処理の開始時刻を規定するブロックに続けて、破線のブロックを示している。 In the example of FIG. 30, a new loading plan for substrate W4 into processing unit SPIN2 has been created. Specifically, the loading plan for substrate W4 includes a block for the indexer robot IR and the main transport robot CR related to the transport process for substrate W4 from the substrate container C to processing unit SPIN2, as well as a block indicating the start time of the next process in processing unit SPIN2. In the example of FIG. 30, the newly placed block is also shown with diagonal hatching. Note that in the example of FIG. 30, in order to illustrate the notification time t1 (SPIN1), a dashed block is shown following the block that specifies the start time of the process in processing unit SPIN1.

基板処理装置100の動作がさらに進行すると、通知時刻t14(SPIN1)において、処理ユニットSPIN1からの通知情報が制御部21に通知される。スケジューリング機能部25はこの通知情報の通知に応答して、処理内容データ40に基づいて計画範囲を基板W3についての渡り計画に決定し(ステップS2A)、ステップS3~S13を実行して基板W3についての渡り計画を作成しようとする。 As the operation of the substrate processing apparatus 100 progresses further, at notification time t14 (SPIN1), notification information from processing unit SPIN1 is notified to the control unit 21. In response to this notification information, the scheduling function unit 25 determines the planning scope to be the transfer plan for substrate W3 based on the processing content data 40 (step S2A), and executes steps S3 to S13 to create a transfer plan for substrate W3.

しかしながら、図30から理解できるように、通知時刻t14(SPIN1)では、処理ユニットSPIN3,SPIN4に対応する最新のブロックは、処理の開始時刻を規定するブロックであり、処理の終了時刻を規定するブロックではない。つまり、通知時刻t14(SPIN1)では、次の搬送先候補である処理ユニットSPIN3および処理ユニットSPIN4の処理の終了時刻は未だ確定されていない。要するに、通知時刻t14(SPIN1)では、処理ユニットSPIN3,SPIN4からの基板W1,W2の搬送は未だ計画されていない。よって、スケジューリング機能部25は基板W3の搬送先の処理ユニットを決定することができない。つまり、スケジューリング機能部25は基板W3についての渡り計画を作成できない。 However, as can be seen from FIG. 30, at notification time t14 (SPIN1), the latest block corresponding to processing units SPIN3 and SPIN4 is a block that specifies the start time of processing, not a block that specifies the end time of processing. In other words, at notification time t14 (SPIN1), the end times of processing for processing units SPIN3 and SPIN4, which are the next transport destination candidates, have not yet been determined. In short, at notification time t14 (SPIN1), the transport of substrates W1 and W2 from processing units SPIN3 and SPIN4 has not yet been planned. Therefore, the scheduling function unit 25 cannot determine the processing unit to which substrate W3 is to be transported. In other words, the scheduling function unit 25 cannot create a transfer plan for substrate W3.

そこで、スケジューリング機能部25は、処理ユニットSPIN1からの通知情報が通知されたときに、搬送先候補の処理ユニットSPIN3,SPIN4の全てが基板Wを処理しており、かつ、搬送先候補の処理ユニットSPIN3,SPIN4からの搬送が未だ計画されていない場合、基板W3についての渡り計画の作成を中断する。言い換えれば、処理ユニットSPIN1のユニット推定終了時刻を得たときに、搬送先候補の全てが基板Wを処理しており、かつ、全ての搬送先候補からの搬送が未だ計画されていない場合、基板W3についての渡り計画を中断する。例えばスケジューリング機能部25はステップS2A~S12によって基板W3についての渡り計画を作成できなかったときに、基板W3の渡り計画について中断フラグを立ち上げてもよい。この中断フラグは渡り計画が作成されたときに立ち下げられる。 Therefore, when the scheduling function unit 25 receives notification information from the processing unit SPIN1, if all of the destination candidate processing units SPIN3 and SPIN4 are processing the substrate W and transport from the destination candidate processing units SPIN3 and SPIN4 has not yet been planned, the scheduling function unit 25 suspends the creation of the transfer plan for substrate W3. In other words, when the estimated unit end time of the processing unit SPIN1 is obtained, if all of the destination candidate processing units are processing the substrate W and transport from all of the destination candidate processing units has not yet been planned, the transfer plan for substrate W3 is suspended. For example, when the scheduling function unit 25 is unable to create a transfer plan for substrate W3 by steps S2A to S12, it may set an interruption flag for the transfer plan for substrate W3. This interruption flag is lowered when the transfer plan is created.

基板処理装置100の動作がさらに進行すると、通知時刻t12(SPIN3)において、処理ユニットSPIN3からの通知情報が制御部21に通知される(図31も参照)。スケジューリング機能部25はこの通知情報に通知に応答して、処理内容データ40に基づいて計画範囲を基板W1についての払出計画に決定する(ステップS2A)。具体的には、スケジューリング機能部25は処理内容データ40に基づいて、通知元の処理ユニットSPIN3における第2処理が処理手順の最後の処理であると判断する。スケジューリング機能部25は当該判断に応答して、計画範囲を、通知元の処理ユニットSPIN3が処理している基板W1についての払出計画に決定する。そして、スケジューリング機能部25は第1の実施の形態と同様にステップS3~S13を実行して、基板W1に対する処理ユニットSPIN3からの払出計画を作成する。 When the operation of the substrate processing apparatus 100 further progresses, at notification time t12 (SPIN3), notification information from the processing unit SPIN3 is notified to the control unit 21 (see also FIG. 31). In response to this notification information, the scheduling function unit 25 determines the plan range to be a take-out plan for the substrate W1 based on the processing content data 40 (step S2A). Specifically, the scheduling function unit 25 determines, based on the processing content data 40, that the second process in the processing unit SPIN3 that sent the notification is the last process in the processing procedure. In response to this determination, the scheduling function unit 25 determines the plan range to be a take-out plan for the substrate W1 being processed by the processing unit SPIN3 that sent the notification. Then, the scheduling function unit 25 executes steps S3 to S13 in the same manner as in the first embodiment to create a take-out plan for the substrate W1 from the processing unit SPIN3.

この払出計画によって、基板W3の次の搬送先候補の一つである処理ユニットSPIN3の処理の終了時刻が確定するので、スケジューリング機能部25は基板W3についての渡り計画の作成を再開する。要するに、スケジューリング機能部25は、次の搬送先候補からの基板Wの搬送が計画されてから、基板W3についての渡り計画を作成する。より具体的には、スケジューリング機能部25は、基板W3についての中断フラグが立ち上がっており、かつ、搬送先候補の処理ユニットからの基板Wの搬出が計画されているときに、計画範囲を基板W3についての渡り計画に再決定する(ステップS2A)。そして、スケジューリング機能部25はステップS3~S13を実行して、基板W3についての渡り計画を作成する。 This unloading plan determines the end time of processing at processing unit SPIN3, which is one of the next candidate destinations for substrate W3, so the scheduling function unit 25 resumes creating a transfer plan for substrate W3. In short, the scheduling function unit 25 creates a transfer plan for substrate W3 after the transport of substrate W from the next candidate destination is planned. More specifically, when the interruption flag for substrate W3 is set and the removal of substrate W from the candidate destination processing unit is planned, the scheduling function unit 25 re-determines the plan scope to be the transfer plan for substrate W3 (step S2A). Then, the scheduling function unit 25 executes steps S3 to S13 to create a transfer plan for substrate W3.

図31は、上述の動作によって作成された全体スケジュールの一例を模式的に示す図である。図31の例では、基板W1についての払出計画として、処理ユニットSPIN3の処理の終了時刻を示すブロック、ならびに、基板W1に対する処理ユニットSPIN3から基板収容器Cへの搬送処理に関する主搬送ロボットCRおよびインデクサロボットIRのブロックが新たに配置されている。また、図31の例では、基板W3についての渡り計画として、処理ユニットSPIN1の処理の終了時刻を示すブロック、基板W3に対する処理ユニットSPIN1から処理ユニットSPIN3への搬送処理に関する主搬送ロボットCRのブロック、および、処理ユニットSPIN3の処理の開始時刻を示すブロックが新たに配置されている。図31の例でも、新たに配置されたブロックを斜線のハッチングで示している。 Figure 31 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operation. In the example of Figure 31, a block indicating the end time of processing in processing unit SPIN3, and a block of the main transport robot CR and the indexer robot IR related to the transport processing of substrate W1 from processing unit SPIN3 to the substrate container C are newly placed as the removal plan for substrate W1. Also, in the example of Figure 31, a block indicating the end time of processing in processing unit SPIN1, a block of the main transport robot CR related to the transport processing of substrate W3 from processing unit SPIN1 to processing unit SPIN3, and a block indicating the start time of processing in processing unit SPIN3 are newly placed as the transfer plan for substrate W3. In the example of Figure 31, the newly placed blocks are also shown with diagonal hatching.

以上のように、スケジューリング機能部25は搬送先候補(ここでは処理ユニットSPIN3)からの払出計画を作成した後に、基板W3についての渡り計画を作成することにより、より適切な渡り計画を作成することができる。 As described above, the scheduling function unit 25 can create a more appropriate transfer plan by creating a removal plan from the potential transport destination (here, processing unit SPIN3) and then creating a transfer plan for substrate W3.

基板処理装置100の動作がさらに進行すると、通知時刻t14(SPIN2)において、処理ユニットSPIN2からの通知情報が制御部21に通知され(図32も参照)、その後、通知時刻t12(SPIN4)において、処理ユニットSPIN4からの通知情報が制御部21に通知される。 As the operation of the substrate processing apparatus 100 progresses further, at notification time t14 (SPIN2), notification information from processing unit SPIN2 is notified to the control unit 21 (see also FIG. 32), and then, at notification time t12 (SPIN4), notification information from processing unit SPIN4 is notified to the control unit 21.

スケジューリング機能部25は処理ユニットSPIN2からの通知情報の通知に応答してステップS2A~S13を実行して、基板W4についての渡り計画を作成しようとするものの、通知時刻t14(SPIN2)では、基板W4の次の搬送先候補である処理ユニットSPIN3,SPIN4からの基板Wの搬送が未だ計画されていないので、当該渡り計画の作成を中断する。 In response to notification of the notification information from processing unit SPIN2, the scheduling function unit 25 executes steps S2A to S13 to create a transfer plan for substrate W4. However, at notification time t14 (SPIN2), the transport of substrate W from processing units SPIN3 and SPIN4, which are the next potential destinations for substrate W4, has not yet been planned, so the creation of the transfer plan is interrupted.

次にスケジューリング機能部25は処理ユニットSPIN4からの通知情報の通知に応答してステップS2A~S13を実行して、基板W2についての払出計画を作成する。この払出計画の作成が完了すると、スケジューリング機能部25は計画範囲を基板W4の渡り計画に再決定し(ステップS2A)、ステップS3~S13を実行して基板W4についての渡り計画を作成する。 Next, in response to notification of notification information from processing unit SPIN4, the scheduling function unit 25 executes steps S2A to S13 to create a pick-up plan for substrate W2. When the creation of this pick-up plan is completed, the scheduling function unit 25 re-determines the plan scope to be the transfer plan for substrate W4 (step S2A), and executes steps S3 to S13 to create a transfer plan for substrate W4.

図32は、上述の動作によって作成された全体スケジュールの一例を模式的に示す図である。図32の例では、基板W2についての払出計画として、処理ユニットSPIN4の処理の終了時刻を示すブロック、ならびに、基板W2に対する処理ユニットSPIN4から基板収容器Cへの搬送処理に関する主搬送ロボットCRおよびインデクサロボットIRのブロックが新たに配置されている。また、図32の例では、基板W4についての渡り計画として、処理ユニットSPIN2の処理の終了時刻を示すブロック、基板W4に対する処理ユニットSPIN2から処理ユニットSPIN4への搬送処理に関する主搬送ロボットCRのブロック、および、処理ユニットSPIN4の次の処理の開始時刻を示すブロックが新たに配置されている。図32の例でも、新たに配置されたブロックを斜線のハッチングで示している。 Figure 32 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operation. In the example of Figure 32, a block indicating the end time of processing in processing unit SPIN4, and a block of the main transport robot CR and the indexer robot IR related to the transport processing of substrate W2 from processing unit SPIN4 to the substrate container C are newly placed as the removal plan for substrate W2. In addition, in the example of Figure 32, a block indicating the end time of processing in processing unit SPIN2, a block of the main transport robot CR related to the transport processing of substrate W4 from processing unit SPIN2 to processing unit SPIN4, and a block indicating the start time of the next processing in processing unit SPIN4 are newly placed as the transfer plan for substrate W4. In the example of Figure 32, the newly placed blocks are also shown with diagonal hatching.

基板処理装置100の動作がさらに進行すると、通知時刻t14(SPIN3)において、処理ユニットSPIN3からの通知情報が制御部21に通知される(図33も参照)。スケジューリング機能部25はこの通知情報の通知に応答してステップS2A~S13を実行して、基板W3についての払出計画を作成する。 As the operation of the substrate processing apparatus 100 progresses further, at notification time t14 (SPIN3), notification information from processing unit SPIN3 is notified to the control unit 21 (see also FIG. 33). In response to this notification information, the scheduling function unit 25 executes steps S2A to S13 to create a removal plan for substrate W3.

基板処理装置100の動作がさらに進行すると、通知時刻t14(SPIN4)において、処理ユニットSPIN4からの通知情報が制御部21に通知される(図33も参照)。スケジューリング機能部25はこの通知情報の通知に応答してステップS2A~S13を実行して、基板W4についての払出計画を作成する。 As the operation of the substrate processing apparatus 100 progresses further, at notification time t14 (SPIN4), notification information from processing unit SPIN4 is notified to the control unit 21 (see also FIG. 33). In response to this notification information, the scheduling function unit 25 executes steps S2A to S13 to create a removal plan for substrate W4.

図33は、上述の動作によって作成された全体スケジュールの一例を模式的に示す図である。図33の例では、基板W3についての払出計画として、処理ユニットSPIN3の処理の終了時刻を規定するブロック、ならびに、基板W3に対する処理ユニットSPIN3から基板収容器Cへの搬送処理に関する主搬送ロボットCRおよびインデクサロボットIRのブロックが新たに配置されている。また、図33の例では、基板W4についての払出計画として、処理ユニットSPIN4の処理の終了時刻を規定するブロック、ならびに、基板W4に対する処理ユニットSPIN4から基板収容器Cへの搬送処理に関する主搬送ロボットCRおよびインデクサロボットIRのブロックが新たに配置されている。図33の例でも、新たに配置されたブロックを斜線のハッチングで示している。 Figure 33 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operations. In the example of Figure 33, a block that specifies the end time of processing in processing unit SPIN3, and a block of the main transport robot CR and indexer robot IR related to the transport processing of substrate W3 from processing unit SPIN3 to substrate container C are newly placed as an unloading plan for substrate W3. Also, in the example of Figure 33, a block that specifies the end time of processing in processing unit SPIN4, and a block of the main transport robot CR and indexer robot IR related to the transport processing of substrate W4 from processing unit SPIN4 to substrate container C are newly placed as an unloading plan for substrate W4. In the example of Figure 33, the newly placed blocks are also shown with diagonal hatching.

以上のように第3の実施の形態でも、基板処理装置100の動作と並行しつつ、順次に新たな計画が全体スケジュールに盛り込まれる。 As described above, in the third embodiment, new plans are sequentially incorporated into the overall schedule in parallel with the operation of the substrate processing apparatus 100.

なお、上述の例では、処理ユニットSPIN1~SPIN4の所要処理時間が通常の所要処理時間とほぼ等しい場合を例に挙げて説明した。次に、処理ユニットSPIN1~SPIN4における所要処理時間が変動した場合の例について述べる。ここでは、処理ユニットSPIN2,SPIN4の所要処理時間が通常よりも短い場合について述べる。基板処理装置100の動作の一例は図25と同様である。 In the above example, the required processing time of the processing units SPIN1 to SPIN4 is approximately equal to the normal required processing time. Next, an example will be described in which the required processing time of the processing units SPIN1 to SPIN4 varies. Here, a case will be described in which the required processing time of the processing units SPIN2 and SPIN4 is shorter than normal. An example of the operation of the substrate processing apparatus 100 is the same as that shown in FIG. 25.

まず、スケジューリング機能部25は上述の通り、基板処理装置100の動作を開始する前に全体スケジュールの一部として各処理ユニットSPIN1,SPIN2についての最初の投入計画を作成する(ステップS2A:投入計画、ステップS3~S13)。これにより、図26に例示する全体スケジュールが作成される。 First, as described above, the scheduling function unit 25 creates an initial loading plan for each processing unit SPIN1, SPIN2 as part of the overall schedule before starting operation of the substrate processing apparatus 100 (step S2A: loading plan, steps S3 to S13). This creates the overall schedule shown in FIG. 26.

各処理ユニットSPIN1~SPIN4の制御部は、処理の推定残り時間が、全体スケジュールの再作成に要する所要作成時間Trefに近づいたときに、制御部21に通知情報を通知する。よって、通知時刻は、その処理ユニットの実際の所要処理時間が短いほど、早くなる。言い換えれば、通知時刻は、その処理ユニットの実際の所要処理時間が長いほど、遅れる。 The control unit of each processing unit SPIN1 to SPIN4 notifies the control unit 21 of notification information when the estimated remaining processing time approaches the required creation time Tref required to recreate the overall schedule. Therefore, the notification time will be earlier the shorter the actual required processing time of the processing unit. In other words, the longer the actual required processing time of the processing unit, the later the notification time will be.

ここでは、処理ユニットSPIN2の実際の所要処理時間が通常よりも短いために、処理ユニットSPIN1よりも先に処理ユニットSPIN2から通知情報が通知されるものとする。具体的には、処理ユニットSPIN2は通知時刻t12(SPIN2)において通知情報を制御部21に通知する(図34も参照)。スケジューリング機能部25はこの通知情報の通知に応答してステップS2A~S13を実行して、基板W2についての渡り計画を作成する。また、スケジューリング機能部25は次の基板W3についての投入計画も作成する。 Here, because the actual required processing time of processing unit SPIN2 is shorter than usual, it is assumed that processing unit SPIN2 notifies the notification information before processing unit SPIN1. Specifically, processing unit SPIN2 notifies the control unit 21 of the notification information at notification time t12 (SPIN2) (see also FIG. 34). In response to this notification information, the scheduling function unit 25 executes steps S2A to S13 to create a transfer plan for substrate W2. The scheduling function unit 25 also creates a loading plan for the next substrate W3.

図34は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図34の例では、処理ユニットSPIN1からの通知情報が未だ通知されていないので、基板W1についての渡り計画のブロックおよび処理ユニットSPIN1への次の投入計画のブロックは未だ配置されていない。一方で、処理ユニットSPIN2からの通知情報の通知に応答して、基板W2についての渡り計画のブロックおよび処理ユニットSPIN2への次の投入計画のブロックが新たに配置されている。図34の例でも、新たに配置されたブロックが斜線のハッチングで示されている。 Figure 34 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operations. In the example of Figure 34, notification information has not yet been notified from processing unit SPIN1, so the transfer plan block for substrate W1 and the next input plan block for processing unit SPIN1 have not yet been placed. Meanwhile, in response to notification of notification information from processing unit SPIN2, the transfer plan block for substrate W2 and the next input plan block for processing unit SPIN2 have been newly placed. In the example of Figure 34, the newly placed blocks are also shown with diagonal hatching.

より具体的には、図34の例では、基板W2についての渡り計画として、処理ユニットSPIN2の処理の終了時刻を示すブロック、基板W2に対する処理ユニットSPIN2から処理ユニットSPIN3への搬送処理に関する主搬送ロボットCRのブロック、および、処理ユニットSPIN3の処理の開始時刻を示すブロックが新たに配置されている。ここでは、処理ユニットSPIN2は処理ユニットSPIN1よりも先に処理を終了するので、処理ユニットSPIN3には基板W1ではなく基板W2が搬送された渡り計画が作成される。 More specifically, in the example of FIG. 34, the transfer plan for substrate W2 includes a block indicating the end time of processing in processing unit SPIN2, a block for the main transport robot CR related to the transport processing of substrate W2 from processing unit SPIN2 to processing unit SPIN3, and a block indicating the start time of processing in processing unit SPIN3. Here, since processing unit SPIN2 finishes processing before processing unit SPIN1, a transfer plan is created in which substrate W2 is transported to processing unit SPIN3 instead of substrate W1.

また図34の例では、基板W3についての投入計画として、基板W3に対する基板収容器Cから処理ユニットSPIN2への搬送処理に関するインデクサロボットIRおよび主搬送ロボットCRのブロック、ならびに、処理ユニットSPIN2の次の処理の開始時刻を示すブロックが新たに配置されている。ここでは、処理ユニットSPIN2は処理ユニットSPIN1よりも先に処理を終了するので、基板W3が処理ユニットSPIN2に搬送された投入計画が作成される。 In the example of Figure 34, the loading plan for substrate W3 includes new blocks for the indexer robot IR and main transport robot CR related to the transport process of substrate W3 from substrate container C to processing unit SPIN2, as well as a block indicating the start time of the next process of processing unit SPIN2. Here, since processing unit SPIN2 finishes processing before processing unit SPIN1, a loading plan is created in which substrate W3 is transported to processing unit SPIN2.

基板処理装置100の動作がさらに進行すると、通知時刻t12(SPIN1)において処理ユニットSPIN1からの通知情報が制御部21に通知される(図35も参照)。スケジューリング機能部25はこの通知情報の通知に応答してステップS2A~S13を実行して、基板W1についての渡り計画を作成する。また、スケジューリング機能部25は次の基板W4についての投入計画も作成する。 As the operation of the substrate processing apparatus 100 progresses further, notification information from processing unit SPIN1 is notified to the control unit 21 at notification time t12 (SPIN1) (see also FIG. 35). In response to this notification information, the scheduling function unit 25 executes steps S2A to S13 to create a transfer plan for substrate W1. The scheduling function unit 25 also creates a loading plan for the next substrate W4.

図35は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図35の例では、基板W1についての渡り計画として、処理ユニットSPIN1の処理の終了時刻を規定するブロック、基板W1に対する処理ユニットSPIN1から処理ユニットSPIN4への搬送処理に関する主搬送ロボットCRのブロック、および、処理ユニットSPIN4の処理の開始時刻を規定するブロックが新たに配置されている。ここでは、処理ユニットSPIN1が処理ユニットSPIN2よりも後に処理を終了するので、基板W1が処理ユニットSPIN4に搬送された渡り計画が作成される。図35の例でも、新たに配置されたブロックが斜線のハッチングで示されている。 Figure 35 is a schematic diagram showing an example of an overall schedule created by the above-mentioned operations. In the example of Figure 35, a block specifying the end time of processing in processing unit SPIN1, a block of the main transport robot CR related to the transport processing of substrate W1 from processing unit SPIN1 to processing unit SPIN4, and a block specifying the start time of processing in processing unit SPIN4 are newly placed as a transfer plan for substrate W1. Here, since processing unit SPIN1 finishes processing after processing unit SPIN2, a transfer plan is created in which substrate W1 is transported to processing unit SPIN4. In the example of Figure 35, the newly placed blocks are also indicated by diagonal hatching.

また図35の例では、基板W4についての投入計画として、基板W4に対する基板収容器Cから処理ユニットSPIN1への搬送処理に関するインデクサロボットIRおよび主搬送ロボットCRのブロック、ならびに、処理ユニットSPIN1の処理の開始時刻を規定するブロックが新たに配置されている。ここでは、処理ユニットSPIN1が処理ユニットSPIN2よりも後に処理を終了するので、基板W4が処理ユニットSPIN1に搬送された投入計画が作成される。 In the example of Figure 35, a loading plan for substrate W4 is newly placed, which includes a block for the indexer robot IR and the main transport robot CR for transporting substrate W4 from the substrate container C to processing unit SPIN1, as well as a block that specifies the start time of processing in processing unit SPIN1. Here, since processing unit SPIN1 finishes processing after processing unit SPIN2, a loading plan is created in which substrate W4 is transported to processing unit SPIN1.

基板処理装置100の動作がさらに進行すると、通知時刻t14(SPIN2)において処理ユニットSPIN2からの通知情報が制御部21に通知される(図36も参照)。スケジューリング機能部25はこの通知情報の通知に応答して、処理内容データ40に基づいて基板W3に対する渡り計画を作成しようとする。しかしながら、この通知時刻t14(SPIN2)では、図36に例示されるように、基板W3の次の搬送先候補である処理ユニットSPIN3,SPIN4からの基板Wの搬送が未だ計画されていない。言い換えれば、処理ユニットSPIN3,SPIN4の処理の終了時刻がまだ確定していない。よって、スケジューリング機能部25は基板W3に対する渡り計画の作成を中断する。 As the operation of the substrate processing apparatus 100 progresses further, notification information from processing unit SPIN2 is notified to the control unit 21 at notification time t14 (SPIN2) (see also FIG. 36). In response to this notification information, the scheduling function unit 25 attempts to create a transfer plan for substrate W3 based on the processing content data 40. However, at this notification time t14 (SPIN2), as illustrated in FIG. 36, the transport of substrate W from processing units SPIN3 and SPIN4, which are potential next transport destinations for substrate W3, has not yet been planned. In other words, the end times of processing at processing units SPIN3 and SPIN4 have not yet been determined. Therefore, the scheduling function unit 25 suspends the creation of the transfer plan for substrate W3.

基板処理装置100の動作がさらに進行すると、通知時刻t12(SPIN4)において処理ユニットSPIN4からの通知情報が制御部21に通知される(図37も参照)。スケジューリング機能部25はこの通知情報の通知に応答してステップS2A~S13を実行して、基板W1についての払出計画を作成する。ここでは、処理ユニットSPIN4は処理ユニットSPIN3よりも先に処理を終了するので、先に処理ユニットSPIN4からの基板W1の払出計画が作成される。 As the operation of the substrate processing apparatus 100 progresses further, notification information from processing unit SPIN4 is notified to the control unit 21 at notification time t12 (SPIN4) (see also FIG. 37). In response to this notification information, the scheduling function unit 25 executes steps S2A to S13 to create a removal plan for substrate W1. Here, since processing unit SPIN4 finishes processing before processing unit SPIN3, a removal plan for substrate W1 from processing unit SPIN4 is created first.

この払出計画によって、基板W3の次の搬送先候補の一つである処理ユニットSPIN4からの基板W1の搬送が計画されるので、スケジューリング機能部25は基板W3に対する渡り計画の作成を再開する。スケジューリング機能部25はステップS2A~S13を実行して、基板W3についての渡り計画を作成する。 This removal plan plans the transport of substrate W1 from processing unit SPIN4, which is one of the next possible transport destinations for substrate W3, so the scheduling function unit 25 resumes creating a transfer plan for substrate W3. The scheduling function unit 25 executes steps S2A to S13 to create a transfer plan for substrate W3.

図37は、上述の動作により作成された全体スケジュールの一例を模式的に示す図である。図37の例では、基板W1についての払出計画として、処理ユニットSPIN4の処理の終了時刻を示すブロック、ならびに、基板W1に対する処理ユニットSPIN4から基板収容器Cへの搬送処理に関する主搬送ロボットCRおよびインデクサロボットIRのブロックが新たに配置されている。また図37の例では、基板W3についての渡り計画として、処理ユニットSPIN2の処理の終了時刻を示すブロック、基板W3に対する処理ユニットSPIN2から処理ユニットSPIN4への搬送処理に関する主搬送ロボットCR、および、処理ユニットSPIN4の次の処理の開始時刻を示すブロックが新たに配置されている。 Figure 37 is a diagram showing a schematic example of an overall schedule created by the above-mentioned operations. In the example of Figure 37, a block indicating the end time of processing in processing unit SPIN4, and blocks for the main transport robot CR and indexer robot IR related to the transport processing of substrate W1 from processing unit SPIN4 to the substrate container C are newly placed as the removal plan for substrate W1. Also, in the example of Figure 37, a block indicating the end time of processing in processing unit SPIN2, a block indicating the main transport robot CR related to the transport processing of substrate W3 from processing unit SPIN2 to processing unit SPIN4, and a block indicating the start time of the next processing in processing unit SPIN4 are newly placed as the transfer plan for substrate W3.

図37の例では、通知時刻t12(SPIN4)は、基板W3に対する処理ユニットSPIN2のユニット推定終了時刻t13(SPIN2)よりも遅い。したがって、基板W3は、処理ユニットSPIN4から基板W1が搬送されて処理ユニットSPIN4への搬入が許可されるまで、処理ユニットSPIN2において待機するように、渡り計画が作成される。 In the example of FIG. 37, the notification time t12 (SPIN4) is later than the unit estimated end time t13 (SPIN2) of processing unit SPIN2 for substrate W3. Therefore, a transfer plan is created so that substrate W3 waits in processing unit SPIN2 until substrate W1 is transported from processing unit SPIN4 and permitted to be loaded into processing unit SPIN4.

基板処理装置100の動作がさらに進行すると、通知時刻t12(SPIN3)において、処理ユニットSPIN3からの通知情報が制御部21に通知される(図38も参照)。スケジューリング機能部25はこの通知情報の通知に応答してステップS2A~S13を実行して、基板W2についての払出計画を作成する。 As the operation of the substrate processing apparatus 100 progresses further, at notification time t12 (SPIN3), notification information from processing unit SPIN3 is notified to the control unit 21 (see also FIG. 38). In response to this notification information, the scheduling function unit 25 executes steps S2A to S13 to create a removal plan for substrate W2.

基板処理装置100の動作がさらに進行すると、通知時刻t14(SPIN1)において、処理ユニットSPIN1からの通知情報が制御部21に通知される。スケジューリング機能部25はこの通知情報の通知に応答してステップS2A~S13を実行して、基板W4についての渡り計画を作成する。 As the operation of the substrate processing apparatus 100 progresses further, at notification time t14 (SPIN1), notification information from the processing unit SPIN1 is notified to the control unit 21. In response to this notification information, the scheduling function unit 25 executes steps S2A to S13 to create a transfer plan for substrate W4.

図38は、上述の動作によって作成される全体スケジュールの一例を概略的に示す図である。図38の例では、基板W2についての払出計画として、処理ユニットSPIN3の処理の終了時刻を規定するブロック、ならびに、基板W2に対する処理ユニットSPIN3から基板収容器Cへの搬送処理に関する主搬送ロボットCRおよびインデクサロボットIRのブロックが新たに配置されている。図38の例でも、新たに配置されたブロックが斜線のハッチングで示されている。 Figure 38 is a diagram showing an example of an overall schedule created by the above-mentioned operations. In the example of Figure 38, a block specifying the end time of processing in processing unit SPIN3, and a block of the main transport robot CR and indexer robot IR related to the transport processing of substrate W2 from processing unit SPIN3 to substrate container C are newly placed as an unloading plan for substrate W2. In the example of Figure 38, the newly placed blocks are also indicated by diagonal hatching.

ここでは、通知時刻t14(SPIN1)において、基板W4の搬送先候補の一つである処理ユニットSPIN4の処理の終了時刻が既に確定されている。よって、スケジューリング機能部25は通知時刻t14(SPIN1)における処理ユニットSPIN1からの通知情報の通知に応答してステップS2A~S13を実行して、基板W4についての渡り計画を作成する。 Here, at notification time t14 (SPIN1), the end time of processing of processing unit SPIN4, which is one of the candidate transport destinations for substrate W4, has already been determined. Therefore, in response to notification of notification information from processing unit SPIN1 at notification time t14 (SPIN1), the scheduling function unit 25 executes steps S2A to S13 to create a transfer plan for substrate W4.

図38の例では、基板W4についての渡り計画として、処理ユニットSPIN1の処理の終了時刻を規定するブロック、基板W4に対する処理ユニットSPIN1から処理ユニットSPIN3への搬送処理に関する主搬送ロボットCRのブロック、および、処理ユニットSPIN3の処理の開始時刻を規定するブロックが新たに配置されている。 In the example of Figure 38, the transfer plan for substrate W4 includes a block that specifies the end time of processing in processing unit SPIN1, a block for the main transport robot CR related to the transport processing of substrate W4 from processing unit SPIN1 to processing unit SPIN3, and a block that specifies the start time of processing in processing unit SPIN3.

基板処理装置100の動作がさらに進行すると、処理ユニットSPIN3および処理ユニットSPIN1からの通知情報がこの順に制御部21に通知される。図39は、これらの通知情報に応答して作成された全体スケジュールの一例を模式的に示す図である。 As the operation of the substrate processing apparatus 100 progresses further, notification information from processing unit SPIN3 and processing unit SPIN1 is notified to the control unit 21 in that order. Figure 39 is a diagram that shows a schematic example of an overall schedule created in response to this notification information.

スケジューリング機能部25はまず通知時刻t14(SPIN4)における処理ユニットSPIN4からの通知情報の通知に応答してステップS2A~S13を実行して、基板W3についての搬出計画を作成する。ここでは、処理ユニットSPIN4は処理ユニットSPIN3よりも先に処理を終了するので、先に処理ユニットSPIN4からの基板W3の払出計画が作成される。図39の例では、基板W3についての払出計画として、処理ユニットSPIN4の処理の終了時刻を規定するブロック、ならびに、基板W3に対する処理ユニットSPIN4から基板収容器Cへの搬送処理に関する主搬送ロボットCRおよびインデクサロボットIRのブロックが新たに配置されている。図39の例でも、新たに配置されたブロックが斜線のハッチングで示されている。 The scheduling function unit 25 first executes steps S2A to S13 in response to notification of notification information from processing unit SPIN4 at notification time t14 (SPIN4) to create an unloading plan for substrate W3. Here, since processing unit SPIN4 finishes processing before processing unit SPIN3, an unloading plan for substrate W3 from processing unit SPIN4 is created first. In the example of Figure 39, a block that specifies the end time of processing in processing unit SPIN4, and blocks for the main transport robot CR and indexer robot IR related to the transport process of substrate W3 from processing unit SPIN4 to the substrate container C are newly placed as the unloading plan for substrate W3. In the example of Figure 39, the newly placed blocks are also indicated by diagonal hatching.

またスケジューリング機能部25は通知時刻t14(SPIN3)における処理ユニットSPIN3からの通知情報の通知に応答してステップS2A~S13を実行して、基板W4についての搬出計画を作成する。図39の例では、基板W4についての払出計画として、処理ユニットSPIN3の処理の終了時刻を規定するブロック、ならびに、基板W4に対する処理ユニットSPIN3から基板収容器Cへの搬送処理に関する主搬送ロボットCRおよびインデクサロボットIRのブロックが新たに配置される。 The scheduling function unit 25 also executes steps S2A to S13 in response to notification of notification information from the processing unit SPIN3 at notification time t14 (SPIN3) to create an unloading plan for substrate W4. In the example of FIG. 39, a block that specifies the end time of processing by the processing unit SPIN3, and blocks for the main transport robot CR and indexer robot IR related to the transport process of substrate W4 from the processing unit SPIN3 to the substrate container C are newly placed as the unloading plan for substrate W4.

以上のように、処理ユニットSPIN2,SPIN4の実際の所要処理時間が通常よりも短くなったとしても、基板処理装置100は動作を中断することなく、その短くなった所要処理時間が反映された全体スケジュールに応じた動作を続行することができる。 As described above, even if the actual required processing time of processing units SPIN2 and SPIN4 becomes shorter than normal, the substrate processing apparatus 100 can continue to operate according to the overall schedule that reflects the shortened required processing time without interrupting operation.

つまり、第3の実施の形態によれば、各処理ユニットSPIN1~SPIN4の所要処理時間が変動したとしても、その変動を反映した全体スケジュールの再作成することができる。 In other words, according to the third embodiment, even if the required processing time of each processing unit SPIN1 to SPIN4 changes, it is possible to recreate the overall schedule to reflect the change.

しかも、第3の実施の形態によれば、各処理ユニットSPIN1~SPIN4の処理の開始前には、各基板Wについての渡り計画および払出計画は作成されていない。言い換えれば、各基板の渡り計画および払出計画を作成する前に、処理実行指示部26は全体スケジュールに従った動作を基板処理装置100に実行させる。そして、各処理ユニットSPIN1~SPIN4の処理の実行中に検出されるセンサSRのユニットセンシング情報に基づいて、各処理ユニットSPIN1~SPIN4の残り処理時間を推定し、その推定残り時間に基づいて、各基板Wの渡り計画および払出計画が作成される。 Moreover, according to the third embodiment, a transfer plan and a removal plan for each substrate W are not created before the start of processing in each processing unit SPIN1 to SPIN4. In other words, before creating a transfer plan and a removal plan for each substrate, the processing execution instruction unit 26 causes the substrate processing apparatus 100 to execute operations according to the overall schedule. Then, based on the unit sensing information of the sensor SR detected during processing in each processing unit SPIN1 to SPIN4, the remaining processing time for each processing unit SPIN1 to SPIN4 is estimated, and a transfer plan and a removal plan for each substrate W are created based on the estimated remaining time.

もし仮に基板処理装置100の動作の開始前に渡り計画および払出計画が作成されると、その渡り計画および払出計画はセンサSRのユニットセンシング情報に応じて修正され得る。渡り計画および払出計画が修正される場合、動作の開始前に作成した渡り計画および払出計画の当該修正部分は無駄である。 If a transfer plan and a pay-out plan are created before the start of operation of the substrate processing apparatus 100, the transfer plan and the pay-out plan may be modified according to the unit sensing information of the sensor SR. If the transfer plan and the pay-out plan are modified, the modified parts of the transfer plan and the pay-out plan created before the start of operation are wasted.

これに対して、第3の実施の形態では、処理実行指示部26は渡り計画および払出計画の作成前に、基板処理装置100の動作を開始する。よって、そのような無駄な渡り計画および払出計画の作成を回避できる。よって、スケジューリング機能部25の不要な動作を抑制でき、処理負荷を軽減することができる。 In contrast, in the third embodiment, the processing execution instruction unit 26 starts the operation of the substrate processing apparatus 100 before creating the transfer plan and the delivery plan. This makes it possible to avoid creating such unnecessary transfer plans and delivery plans. This makes it possible to suppress unnecessary operations of the scheduling function unit 25 and reduce the processing load.

なお、第3の実施の形態でも、第1の実施の形態と同様に、スケジューリング機能部25は通知元の処理ユニットに関するブロックを新たに配置するのみならず、必要に応じて他の処理ユニットのブロックを再配置してもよい。 In the third embodiment, as in the first embodiment, the scheduling function unit 25 may not only newly place blocks related to the processing unit that sent the notification, but may also rearrange blocks of other processing units as necessary.

また、第3の実施の形態でも、第2の実施の形態と同様に、スケジューリング機能部25は、投入計画、渡り計画および払出計画を含む全体スケジュールを一旦作成し、必要に応じて、全体スケジュールを再作成してもよい。 Also, in the third embodiment, as in the second embodiment, the scheduling function unit 25 may first create an overall schedule including an input plan, a transfer plan, and a withdrawal plan, and then recreate the overall schedule as necessary.

以上、実施の形態が説明されたが、この基板処理装置100はその趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。本実施の形態は、その開示の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。 The above describes the embodiment, but various modifications to this substrate processing apparatus 100 other than those described above can be made without departing from the spirit of the invention. This embodiment allows for free combinations of the various embodiments, modifications to any of the components of each embodiment, or the omission of any of the components of each embodiment, within the scope of the disclosure.

また、プログラムは、コンピュータ20に組み込まれた状態で提供されてもよいし、コンピュータ20とは別の記憶媒体(CD-ROM、DVD-ROM等のコンピュータ読取可能な記憶媒体)に記録された状態で提供されてもよい。 The program may be provided in a state where it is incorporated into the computer 20, or may be provided in a state where it is recorded on a storage medium (such as a computer-readable storage medium, such as a CD-ROM or DVD-ROM) separate from the computer 20.

その他、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。 In addition, various design changes may be made within the scope of the claims.

例えば、基板処理装置100に属するユニットとして、そのユニット内の雰囲気を制御するユニットも存在する。例えば、ユニット内の雰囲気には外気に漏れることが好ましくない気体が含まれる場合もある。この場合、当該気体を所定の排出部に十分に排出したうえで、ユニットから基板Wを搬出する必要がある。この場合、センサSRはユニットセンシング情報として、ユニット内の当該気体の濃度を検出してもよい。 For example, one of the units belonging to the substrate processing apparatus 100 is a unit that controls the atmosphere within the unit. For example, the atmosphere within the unit may contain gas that is undesirable for leaking to the outside air. In this case, the gas must be sufficiently exhausted to a designated exhaust section before the substrate W is removed from the unit. In this case, the sensor SR may detect the concentration of the gas within the unit as unit sensing information.

あるいは、ユニット内の気圧を十分に低下させた状態で、基板Wに対する処理が行われる場合もある。この場合、処理終了後には、その気圧を大気圧に戻してから基板Wが排出される。この場合、センサSRはユニットセンシング情報として、ユニット内の気圧を検出してもよい。 Alternatively, processing of the substrate W may be performed with the air pressure inside the unit sufficiently reduced. In this case, after processing is completed, the air pressure is returned to atmospheric pressure and the substrate W is then discharged. In this case, the sensor SR may detect the air pressure inside the unit as unit sensing information.

また、気圧の低いチャンバに搬入するために処理ユニットに隣接して、気圧調整用のポート(ユニット)が配置される場合がある。このポートでは、基板Wに対する処理は行わないものの、ポート内の気圧を十分に低下させたうえで、当該ポートと処理ユニットとを隔てるシャッターを開き、当該ポートから処理ユニットへ基板Wを搬送する場合がある。この場合、処理ユニットで処理された基板Wは低圧力のポートに搬送され、シャッターを閉じたうえで、当該ポート内の気圧を元に戻してから、当該ポートから基板Wが排出される。この場合、ポート内にセンサSRが設けられてもよい。当該センサSRはユニットセンシング情報として、当該ポート内の気圧を検出してもよい。 In addition, a port (unit) for adjusting air pressure may be placed adjacent to the processing unit for transporting the substrate W into a chamber with a lower air pressure. Although no processing is performed on the substrate W at this port, the air pressure within the port may be sufficiently lowered, a shutter separating the port from the processing unit may be opened, and the substrate W may be transported from the port to the processing unit. In this case, the substrate W processed in the processing unit is transported to the low-pressure port, the shutter is closed, and the air pressure within the port is restored before the substrate W is discharged from the port. In this case, a sensor SR may be provided within the port. The sensor SR may detect the air pressure within the port as unit sensing information.

また、基板Wの温度を調整する処理ユニットも存在する。例えば、基板Wの温度を上げて処理を行った後、基板Wの温度を下げたうえで、処理ユニットから基板Wを搬出する場合もある。この場合、センサSRはユニットセンシング情報として、基板Wの温度を検出してもよい。あるいは、センサSRは処理ユニット内の温度(処理室の温度)を検出してもよい。 There are also processing units that adjust the temperature of the substrate W. For example, after the temperature of the substrate W is increased and processing is performed, the temperature of the substrate W may be decreased before the substrate W is removed from the processing unit. In this case, the sensor SR may detect the temperature of the substrate W as the unit sensing information. Alternatively, the sensor SR may detect the temperature inside the processing unit (the temperature of the processing chamber).

また、上述の例では、通知時刻t2はユニット推定終了時刻t3よりも少なくとも所要作成時間Tref以上前に設定された。しかしながら、必ずしもこれに限らない。通知元の処理ユニットの処理終了までに、その処理ユニットについての払出計画が作成できない場合には、当該払出計画の作成が完了するまで、その処理ユニットにおいて基板Wが待機されればよい。 In the above example, the notification time t2 was set at least the required creation time Tref before the unit estimated end time t3. However, this is not necessarily limited to this. If a take-out plan cannot be created for the processing unit that sent the notification before the processing of that processing unit ends, the substrate W may be made to wait in that processing unit until the creation of the take-out plan is completed.

また、上述の例では、処理ユニットSPIN1~SPIN12の全てにセンサSRが設けられていた。しかるに、処理ユニットSPIN1~SPIN12の少なくともいずれか一つにセンサSRが設けられていればよい。センサSRが設けられていない処理ユニットについての払出計画は、その処理ユニットの予め定められた所要処理時間に基づいて作成されればよい。 In the above example, the sensor SR was provided in all of the processing units SPIN1 to SPIN12. However, it is sufficient that the sensor SR is provided in at least one of the processing units SPIN1 to SPIN12. The dispensing plan for a processing unit that is not provided with a sensor SR may be created based on the predetermined required processing time of that processing unit.

21 制御部
C 基板収容器
CR ユニット(主搬送ロボット)
IR ユニット(インデクサロボット)
SPIN1~SPIN4 処理ユニット
SR センサ
W 基板
21 Control unit C Substrate container CR Unit (main transport robot)
IR unit (indexer robot)
SPIN1 to SPIN4 Processing unit SR Sensor W Board

Claims (9)

基板に対する処理を行う複数の処理ユニットを含む複数のユニットを備える基板処理装置の動作を時系列に従って規定するスケジュールを作成するためのスケジュール作成方法であって、
処理の内容および処理の所要時間を示すブロックを時系列に従って仮想的に配置して、仮タイムテーブルを作成するステップと、
前記仮タイムテーブルから前記ブロックを取得し、時系列に従って仮想的に前記ブロックを配置して、前記複数のユニットの全体についての全体スケジュールを作成するスケジューリングステップと、
前記複数のユニットに含まれる第1ユニットにおいて第1センサで第1ユニットセンシング情報を検出する検出ステップと、
前記第1ユニットにおける処理進行状況と、前記第1ユニットセンシング情報との関係性を示す関係性情報に基づき、前記第1ユニットの処理終了時刻を推定し、第1ユニット推定終了時刻を得る推定ステップと、
前記第1ユニット推定終了時刻を反映して前記仮タイムテーブルにおける、前記第1ユニットに対応する前記ブロックの内容を更新する仮タイムテーブル更新ステップと、
更新した前記仮タイムテーブルに基づき、前記全体スケジュールを再作成する全体スケジュール更新ステップと
を備え、
前記仮タイムテーブル更新ステップおよび前記全体スケジュール更新ステップを、前記第1ユニット推定終了時刻までに完了させる、スケジュール作成方法。
1. A schedule creation method for creating a schedule that chronologically defines operations of a substrate processing apparatus having a plurality of units, including a plurality of processing units that perform processing on a substrate, the method comprising:
creating a provisional timetable by virtually arranging blocks indicating the contents of processing and the time required for the processing in a chronological order;
a scheduling step of acquiring the blocks from the provisional timetable, virtually arranging the blocks in chronological order, and creating an overall schedule for the plurality of units;
a detection step of detecting first unit sensing information by a first sensor in a first unit included in the plurality of units;
an estimation step of estimating a processing end time of the first unit based on relationship information indicating a relationship between a processing progress status in the first unit and the first unit sensing information, and obtaining a first unit estimated end time;
a provisional timetable updating step of updating the contents of the block corresponding to the first unit in the provisional timetable to reflect the estimated end time of the first unit;
and an overall schedule updating step of recreating the overall schedule based on the updated tentative timetable,
The schedule creating method, wherein the tentative timetable updating step and the overall schedule updating step are completed by the first unit estimated end time.
請求項1に記載のスケジュール作成方法であって、
前記スケジューリングステップにおいて、前記全体スケジュールとして、前記複数のユニットについての基板の搬入および処理の開始時刻を規定する投入計画を作成し、
少なくとも前記第1ユニットについての処理の終了時刻および基板の搬出を規定する払出計画を作成する前に、前記基板処理装置に前記全体スケジュールに従った動作を実行させ、
前記全体スケジュール更新ステップにおいて、前記第1ユニット推定終了時刻に基づいて前記第1ユニットについての前記払出計画を作成して前記全体スケジュールを再作成する、スケジュール作成方法。
2. The schedule creation method according to claim 1,
In the scheduling step, an input plan is created as the overall schedule, the input plan defining the start times of substrate loading and processing for the plurality of units;
causing the substrate processing apparatus to perform operations according to the overall schedule before creating an unloading plan that defines an end time of processing and an unloading of the substrate for at least the first unit;
A schedule creation method, in which in the overall schedule updating step, the payment plan for the first unit is created based on the estimated end time of the first unit, and the overall schedule is recreated.
請求項2に記載のスケジュール作成方法であって、
前記第1ユニットおよび前記複数のユニットに含まれる第2ユニットにおける処理を基板に対して連続的に行う渡り処理が、基板の処理手順を規定する処理内容データに含まれる場合には、前記第1ユニットから前記第2ユニットへの搬送を規定する渡り計画を作成する前に、前記基板処理装置に前記全体スケジュールに従った動作を実行させ、
第1基板を処理する前記第1ユニットの前記第1ユニット推定終了時刻を得たときに、前記全体スケジュール更新ステップにおいて、前記第1基板についての前記渡り計画を作成して前記全体スケジュールを再作成する、スケジュール作成方法。
The schedule creation method according to claim 2, further comprising the steps of:
when a transfer process in which a substrate is successively subjected to a process in the first unit and a process in a second unit included in the plurality of units is included in the process content data defining a process procedure for the substrate, before creating a transfer plan defining a transport from the first unit to the second unit, having the substrate processing apparatus execute an operation according to the overall schedule;
a transfer plan for the first substrate and a transfer schedule for the first substrate being processed by the first unit;
請求項3に記載のスケジュール作成方法であって、
前記全体スケジュール更新ステップにおいて、
前記第1基板を処理する前記第1ユニットの第1ユニット推定終了時刻を得たときに、前記第2ユニットが第2基板を処理しており、かつ、前記第2ユニットからの前記第2基板の搬送が未だ計画されていない場合、前記第1基板についての前記渡り計画の作成を中断し、前記第2ユニットからの当該搬送が計画されてから前記第1基板についての前記渡り計画を作成して前記全体スケジュールを再作成する、スケジュール作成方法。
4. The schedule creation method according to claim 3, further comprising:
In the overall schedule updating step,
a schedule creation method, in which, when a first unit estimated end time of the first unit processing the first substrate is obtained, if the second unit is processing a second substrate and transportation of the second substrate from the second unit has not yet been planned, creation of the transfer plan for the first substrate is interrupted, and after the transportation from the second unit is planned, the transfer plan for the first substrate is created and the overall schedule is re-created.
請求項1に記載のスケジュール作成方法であって、
前記全体スケジュール更新ステップにおいて、前記全体スケジュールとして、前記複数のユニットについての基板の搬入、処理および搬出を規定した計画を作成する、スケジュール作成方法。
2. The schedule creation method according to claim 1, further comprising:
a schedule creating method in which, in the overall schedule updating step, a plan defining the loading, processing, and unloading of substrates for the plurality of units is created as the overall schedule;
請求項5に記載のスケジュール作成方法であって、
前記全体スケジュールにおける前記ブロックの終了予定時刻と、前記推定ステップで得られた第1ユニット推定終了時刻との時刻差が既定の基準値を超えているか否かを判断するステップをさらに含み、
前記時刻差が前記基準値よりも大きいと判断された場合には、前記全体スケジュール更新ステップを実行し、
前記時刻差が前記基準値よりも小さいと判断された場合には、前記全体スケジュール更新ステップを実行しない、スケジュール作成方法。
The schedule creation method according to claim 5, further comprising the steps of:
The method further includes a step of determining whether or not a time difference between a scheduled end time of the block in the overall schedule and a first unit estimated end time obtained in the estimation step exceeds a predetermined reference value;
If it is determined that the time difference is greater than the reference value, the overall schedule updating step is executed;
When it is determined that the time difference is smaller than the reference value, the entire schedule updating step is not executed.
請求項5または請求項6に記載のスケジュール作成方法であって、
前記全体スケジュール更新ステップにおいて作成される前記計画は、前記第1ユニットから前記複数のユニットに含まれた第2ユニットへの搬送を規定する渡り計画を含む、スケジュール作成方法。
The schedule creation method according to claim 5 or 6, further comprising the steps of:
A schedule creation method, wherein the plan created in the overall schedule update step includes a transfer plan that specifies transportation from the first unit to a second unit included in the plurality of units.
請求項1から請求項7のいずれか一つに記載のスケジュール作成方法であって、
前記ブロックが示す処理の時間を前記第1ユニット推定終了時刻に基づいて更新して、記憶媒体に記憶するブロック更新工程をさらに備える、スケジュール作成方法。
A schedule creation method according to any one of claims 1 to 7, comprising:
The schedule creating method further comprises a block updating step of updating a time of the process indicated by the block based on the first unit estimated end time and storing the updated time in a storage medium.
基板に対する処理を行う複数の処理ユニットを含む複数のユニットを備える基板処理装置と、
前記基板処理装置の動作を時系列に従って規定するスケジュールを作成する制御部と
を備え、
前記制御部は、
処理の内容および処理の所要時間を示すブロックを時系列に従って仮想的に配置して、仮タイムテーブルを作成し、
前記仮タイムテーブルから前記ブロックを取得し、時系列に従って仮想的に前記ブロックを配置して、前記複数のユニットの全体についての全体スケジュールを作成し、
前記複数のユニットに含まれる第1ユニットにおいて第1センサで検出された第1ユニットセンシング情報と、前記第1ユニットにおける処理進行状況とを示す関係性情報に基づき、前記第1ユニットの処理終了時刻を推定し、第1ユニット推定終了時刻を取得し、
前記第1ユニット推定終了時刻を反映して前記仮タイムテーブルにおける、前記第1ユニットに対応する前記ブロックの内容を更新し、
前記第1ユニット推定終了時刻までに、更新した前記仮タイムテーブルに基づき、前記全体スケジュールを再作成する、スケジュール作成装置。
a substrate processing apparatus including a plurality of units including a plurality of processing units for performing processing on a substrate;
a control unit that creates a schedule that defines an operation of the substrate processing apparatus in a chronological order;
The control unit is
A provisional timetable is created by virtually arranging blocks showing the content of processing and the time required for processing in a chronological order.
obtaining the blocks from the provisional timetable, virtually arranging the blocks in chronological order, and creating an overall schedule for the plurality of units;
estimating a processing end time of the first unit based on first unit sensing information detected by a first sensor in a first unit included in the plurality of units and relationship information indicating a processing progress status in the first unit, and acquiring a first unit estimated end time;
updating the content of the block corresponding to the first unit in the provisional timetable to reflect the estimated end time of the first unit;
The schedule creation device recreates the overall schedule based on the updated tentative timetable until the first unit estimated end time.
JP2020138043A 2019-08-23 2020-08-18 SCHEDULE CREATION METHOD AND SCHEDULE CREATION DEVICE Active JP7471173B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019152566 2019-08-23
JP2019152566 2019-08-23

Publications (2)

Publication Number Publication Date
JP2021036582A JP2021036582A (en) 2021-03-04
JP7471173B2 true JP7471173B2 (en) 2024-04-19

Family

ID=74716933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020138043A Active JP7471173B2 (en) 2019-08-23 2020-08-18 SCHEDULE CREATION METHOD AND SCHEDULE CREATION DEVICE

Country Status (1)

Country Link
JP (1) JP7471173B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024157382A1 (en) * 2023-01-25 2024-08-02 株式会社日立ハイテク Inspection management system and method
JP7395078B1 (en) * 2023-04-07 2023-12-08 三菱電機株式会社 Schedule management device and schedule management system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004063747A (en) 2002-07-29 2004-02-26 Dainippon Screen Mfg Co Ltd Method of detecting ending point of substrate treatment and method and device for treating substrate
JP2013077796A (en) 2011-09-16 2013-04-25 Dainippon Screen Mfg Co Ltd Schedule generating method and schedule generating program for substrate processing apparatus
JP2015005613A (en) 2013-06-20 2015-01-08 株式会社Screenホールディングス Schedule generating method for substrate processing apparatus, and schedule generating program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004063747A (en) 2002-07-29 2004-02-26 Dainippon Screen Mfg Co Ltd Method of detecting ending point of substrate treatment and method and device for treating substrate
JP2013077796A (en) 2011-09-16 2013-04-25 Dainippon Screen Mfg Co Ltd Schedule generating method and schedule generating program for substrate processing apparatus
JP2015005613A (en) 2013-06-20 2015-01-08 株式会社Screenホールディングス Schedule generating method for substrate processing apparatus, and schedule generating program

Also Published As

Publication number Publication date
JP2021036582A (en) 2021-03-04

Similar Documents

Publication Publication Date Title
JP7471173B2 (en) SCHEDULE CREATION METHOD AND SCHEDULE CREATION DEVICE
JP6002532B2 (en) Vacuum processing apparatus and vacuum processing method
JP5852908B2 (en) Schedule creation method and schedule creation program for substrate processing apparatus
JP2008277528A (en) Substrate processing method, substrate processing system, and computer-readable recording medium
JP4401879B2 (en) Substrate recovery method and substrate processing apparatus
JP6723110B2 (en) Substrate processing apparatus and substrate processing method
JP2009094461A (en) Substrate processing method and substrate processing system
JP5928283B2 (en) Substrate processing apparatus, substrate transfer method, and storage medium
JP2007123734A (en) Substrate processing device
WO2019216379A1 (en) Substrate processing method, substrate processing device, and computer program
JP5023146B2 (en) Polishing apparatus and program thereof
JP6995072B2 (en) Scheduler, board processing device, and board transfer method
JP6121846B2 (en) Substrate processing apparatus, substrate processing method, and substrate processing system
JP2015026650A (en) Substrate processing apparatus, substrate processing method, and storage medium
JP3752425B2 (en) Substrate processing system, control device therefor, and recipe display method
JP5847515B2 (en) Schedule creation method and schedule creation program for substrate processing apparatus
JP6121832B2 (en) Substrate processing apparatus, substrate processing method, and substrate processing system
JP2018019095A (en) Substrate processing method and substrate processing apparatus
JP7527150B2 (en) SUBSTRATE PROCESSING APPARATUS AND TRANSPORT SCHEDULE CREATION METHOD
JP6320457B2 (en) Substrate processing apparatus, substrate processing method, program, and article manufacturing method
KR102181639B1 (en) Substrate treatment management device, substrate treatment management method, and substrate treatment management program
JP2022181368A (en) Schedule change method
JP2982039B2 (en) Processing method and processing apparatus
JP4745174B2 (en) Removal liquid recovery system after removal of protective film and removal liquid recovery method after removal of protective film
JP2018195145A (en) Substrate processing method and substrate processing apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230620

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240208

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240326

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240409

R150 Certificate of patent or registration of utility model

Ref document number: 7471173

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150